У меня проблемы с поиском, почему у меня есть неразрешенный внешний символ при связывании статической библиотеки (XMP с включенным expat) в общей библиотеке lib (это компонент firefox xpcom).Expat неразрешенный внешний символ
Я под окнами, используя компилятор для Windows (флаг: "-od -MDd") и Mozilla-Firefox 14.
Статическая библиотека библиотека XMPCore из SDK Adobe XMP в: нет никаких проблем здания его (исходный код эмигранта, включены как часть библиотеки третьей стороны)
при создании моего XPCOM модуля, я получил это на связывающей стадии:
Symbole экстерн не résolu означает неразрешенный внешний символ!
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetCommentHandler référencé dans la fonction "public: __thiscall
ExpatAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetProcessingInstructionHandler référencé dans la fonction "publi
c: __thiscall ExpatAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetCdataSectionHandler référencé dans la fonction "public: __this
call ExpatAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetCharacterDataHandler référencé dans la fonction "public: __thi
scall ExpatAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetElementHandler référencé dans la fonction "public: __thiscall
ExpatAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetNamespaceDeclHandler référencé dans la fonction "public: __thi
scall ExpatAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_SetUserData référencé dans la fonction "public: __thiscall ExpatA
dapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_ParserCreateNS référencé dans la fonction "public: __thiscall Exp
atAdapter::ExpatAdapter(bool)" ([email protected]@[email protected][email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_ParserFree référencé dans la fonction "public: virtual __thiscall
ExpatAdapter::~ExpatAdapter(void)" ([email protected]@[email protected])
xmpcore.lib(ExpatAdapter.obj) : error LNK2019: symbole externe non résolu __imp__XML_Parse référencé dans la fonction "public: virtual void __thiscall
ExpatAdapter::ParseBuffer(void const *,unsigned int,bool)" ([email protected]@@[email protected])
xmp.dll : fatal error LNK1120: 10 externes non résolus
Так я думал, что эти функции из эмигрант не хватало моей статической сборки XMP, чтобы я уже проверил с помощью objdump -t в список символов, я нашел это:
../third-party/expat/lib/xmlparse.obj: file format pe-i386
SYMBOL TABLE:
...
[109](sec 5)(fl 0x00)(ty 20)(scl 2) (nx 0) 0x00000ff0 _XML_SetCommentHandler
...
../XMPCore/source/ExpatAdapter.obj: file format pe-i386
SYMBOL TABLE:
...
[251](sec 0)(fl 0x00)(ty 0)(scl 2) (nx 0) 0x00000000 __imp__XML_SetCommentHandler
...
реализация этих функций включена, поэтому мне нужны подсказки: может ли кто-нибудь помочь мне в этом?
Спасибо!