|
|
Also using DUMPBIN, you can confirm what the symbols are inside your library.
For instance, from your error list:
Error LNK2019 unresolved external symbol "public: virtual __cdecl Fl_Widget::~Fl_Widget(void)" (??1Fl_Widget@@UEAA@XZ) referenced in function "public: virtual __cdecl Fl_Box::~Fl_Box(void)" (??1Fl_Box@@UEAA@XZ) VirtualAdvertisement C:\Users\Tom\source\repos\VirtualAdvertisement\VirtualAdvertisement\MainWindow.obj 1
Using Dumpbin, I searched for "Fl_Widget::~Fl_Widget(void)" in both the 32-bit and 64-bit versions of fltk.lib:
64-bit dumpbin /symbols fltk.lib | find "Fl_Widget::~Fl_Widget" | more 04B 00000000 SECT5 notype () External | ??1Fl_Widget@@UEAA@XZ (public: virtual __cdecl Fl_Widget::~Fl_Widget(void))
32-bit dumpbin /symbols fltk.lib | find "Fl_Widget::~Fl_Widget" | more 065 00000000 SECT5 notype () External | ??1Fl_Widget@@UAE@XZ (public: virtual __thiscall Fl_Widget::~Fl_Widget(void))
In your build, the linker is looking for ??1Fl_Widget@@UEAA@XZ which can be found in the 64-bit version, not the 32-bit version. Another confirmation that you are compiling your code as 64-bit but linking against a 32-bit version of fltk.lib.
I had difficulties making both the 32-bit and 64-bit versions of fltk because I was creating new configurations from within Visual Studio. I found that I had to check the Project Properties to confirm the settings were correct. For instance, I had to check both "Advanced \ Preferred Build Tool Architecture" AND "Librarian \ Additional Options" to insure consistent settings.
--
You received this message because you are subscribed to the Google Groups "fltk.general" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fltkgeneral+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fltkgeneral/b8237931-f2cc-4792-8f95-89926f832634n%40googlegroups.com.
[ Direct Link to Message ] | |
|
| |