Я использую Visual Studio 2012 и ядро Zxing c ++ для создания компонента среды выполнения Windows.
Я включил мои файлы C ++ в мой проект.
Когда я компилирую, я получил следующую ошибку:
Error 32 error LNK2005: "public: static unsigned int const
zxing::DecodeHints::CHARACTER_SET" (?CHARACTER_SET@DecodeHints@zxing@@2IB)
already defined in MyObject.obj
Я нашел нить в гугле (https://groups.google.com/forum/#!topic/zxing/U5dLnFjsDwQ) но это не решило мою проблему.
Любая идея ?
Проблема была решена (на данный момент). CHARACTER_SET был создан в файле .h, а не в cpp. По неизвестной мне причине компилятор Visual не позволяет этого, хотя с GCC проблем не было.
Старый код:
DecodeHints.h:
static const DecodeHintType CHARACTER_SET = 1 << 30;
DecodeHints.cpp:
const DecodeHintType DecodeHints::CHARACTER_SET;
был заменен на:
DecodeHints.h:
static const DecodeHintType CHARACTER_SET;
DecodeHints.cpp:
const DecodeHintType DecodeHints::CHARACTER_SET = 1 << 30;
Других решений пока нет …