高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】problem linking with amd64 version
problem linking with amd64 version
problem linking with amd64 version
hi,
i'm trying to build the 64-bit version of the static library files with an application and i'm getting some "unresolved external symbol" errors. here is an example of a couple of the errors i'm getting (there are about 20 and i don't want to include all of them here):
code:
opendwghostappservices.obj : error lnk2019: unresolved external symbol "public: class odstring & __cdecl odstring::format(unsigned short const *,...)"
dd_vc8mt_gi.lib(odtruetypefont.obj) : error lnk2019: unresolved external symbol ft_done_freetype referenced in function "public: __cdecl odftdata::~odftdata(void)"
it seems as if the linker cannot find any of the functions in the odstring class, and also the linker seems to be having problems finding functions called in the dd_vc8mt_gi.lib file. the 32-bit version of our executable compiles/links with no problems...we're just having problems with the 64-bit version. here's a list of the static lib files we're linking with our project:
gs_winopengl.lib
dd_vc8mt_spatialindex.lib
dd_vc8mt_gi.lib
dd_vc8mt_db.lib
dd_vc8mt_ge.lib
dd_vc8mt_gs.lib
dd_vc8mt_root.lib
any ideas on what the problem is with the unresolved externals when linking the 64-bit version of our application?
thanks,
cms
at least for the freetype stuff, see the help page for "binary components and naming conventions". there, it says non 32-bit windows platforms need to link with the dd_ft library.
(even though the "font handling" page says non windows platforms need the freetype library, it's really non 32-bit windows platforms)
how to build dwgdirect for amd64
what are the preprocessor definitions we have to use for linking to amd64md libs? (vc64md, win64, etc)?
thanks,
yawei
we use the following switches, while compiling md libs:
-md -gr -ehsc /zc:wchar_t- /o2 -dwin64 -dunicode -d_unicode -dndebug -d_lib
but, it is supposed that client may use mbcs, and/or /zc:wchar_t+, therefore, there is nothing special to define.
perhaps /zc:wchar_t+ compatibility is broken. try to define /zc:wchar_t- and see if it works.
vladimir
|