Я определил boost_program_options в файле qmake.
> CONFIG(debug, debug|release) {
> LIBS += -L"C:\boost_1_55_0\stage\lib" -lboost_program_options-mgw48-mt-d-1_55 -lboost_system-mgw48-mt-d-1_55 -lboost_thread-mgw48-mt-d-1_55 }
CONFIG(release, debug|release) {
> LIBS += -L"C:\boost_1_55_0\stage\lib" -lboost_program_options-mgw48-mt-1_55 -lboost_system-mgw48-mt-1_55 -lboost_thread-mgw48-mt-1_55 }
Я хочу использовать библиотеку, которая называется mlpack. И скомпилировал его с помощью mingw.
Когда я добавлю
"#include <mlpack/core.hpp>"
У меня тоны ошибок компоновщика (я добавляю некоторые из них для удобства чтения.):
C:/Qt/Tools/QtCreator/bin/aubioSecond/libs//libmlpack.a(cli.cpp.obj):cli.cpp:(.text+0x3ed): undefined reference to `boost::program_options::options_description::m_default_line_length'
C:/Qt/Tools/QtCreator/bin/aubioSecond/libs//libmlpack.a(cli.cpp.obj):cli.cpp:(.text+0x41e): undefined reference to `boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)'
C:/Qt/Tools/QtCreator/bin/aubioSecond/libs//libmlpack.a(cli.cpp.obj):cli.cpp:(.text+0x43b): undefined reference to `boost::program_options::variables_map::variables_map()'
C:/Qt/Tools/QtCreator/bin/aubioSecond/libs//libmlpack.a(cli.cpp.obj):cli.cpp:(.text+0x486a): undefined reference to `boost::program_options::notify(boost::program_options::variables_map&)'
c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/bin/ld.exe:
C:/Qt/Tools/QtCreator/bin/aubioSecond/libs//libmlpack.a(cli.cpp.obj): bad reloc address 0x2 in section `.text$_ZN5boost16exception_detail10clone_baseD1Ev[__ZN5boost16exception_detail10clone_baseD1Ev]'
Если у кого-то есть идея, почему у меня возникла эта проблема, я буду очень благодарен.
С уважением
Жиль Баржес сообщает в списке рассылки mlpack, что ошибка компоновки с помощью boost_program_options может быть исправлена путем изменения CMakeLists.txt, строка 189, закомментировав бит
set(Boost_LIBRARIES "")
См. Список рассылки для получения дополнительной информации:
https://mailman.cc.gatech.edu/pipermail/mlpack/2014-August/000488.html