Я собираю dcmtk 3.6.3 с использованием msvc2010 в одну dll, и я использовал lib для ссылки на мою программу, а глобальные переменные, определенные в библиотеке, сообщают о неразрешенном внешнем символе.
Я проверил файл dll и lib, используя утилиту dumpbin, и обнаружил, что эти глобальные переменные действительно экспортируются. Экспортируемые функции прекрасно подходят для связывания.
Любая помощь приветствуется. Спасибо
Это свалка из одной переменной из файла dcmtk.lib
?EC_Normal@@3UOFConditionConst@@B (struct OFConditionConst const EC_Normal)
Это свалка из одной переменной из файла dcmtk.dll
6913 1B00 008F31A0 ?EC_Normal@@3UOFConditionConst@@B
Это ошибка msvs2010:
error LNK2001: unresolved external symbol "struct OFConditionConst const EC_Normal" (?EC_Normal@@3UOFConditionConst@@B)
В библиотеке файл .h:
extern DCMTK_OFSTD_EXPORT const OFConditionConst EC_Normal;
#define makeOFConditionConst(name, module, code, status, text) \
const OFConditionConst name = { (module), (code), (status), (text) }
В файле .cc есть:
makeOFConditionConst(EC_Normal, 0, 0, OF_ok, "Normal");
Задача ещё не решена.
Других решений пока нет …