Я пытаюсь портировать / собрать часть своего кода, написанного для gcc (на linux) как dll на windows.Сначала я попытался встроить в VC ++, но было очень много ошибок / предупреждений (в основном в собственных подключаемых файлах VC, которые для меня не имели особого смысла :)), поэтому я установил дистрибутив MinGW (который включает библиотеки Boost).Компиляция прошла довольно гладко, однако связывание не удалось с неопределенными ссылками на функции из библиотек boost.Параметр "-t" показал, что компоновщик на самом деле не использует библиотеки boost по какой-то причине (да, путь -L правильный, библиотеки есть, компоновщик не жалуется, когда я использую -l).
После долгих поисков я обнаружил, что проблема в порядке, что я должен разместить свои параметры -l после всех моих файлов .o (из-за зависимостей).Похоже, это решило все проблемы, кроме одной неопределенной ссылки на библиотеку потоков.Опять же -t показал, что эта библиотека на самом деле не используется компоновщиком (нет в списке), остальные - (я также использую boost_system и boost_date_time).Я снова играл с порядком параметров, но результат был тот же.Есть идеи, что мне не хватает?
Ошибка:
c:/x5/cpp/build//timed_cond.o:timed_cond.cpp:(.text$_ZN5boost6detail24basic_condition_variable7do_waitINS_11unique_lockINS_5mutexEEEEEbRT_NS0_7timeoutE[bool boost::detail::basic_condition_variable::do_wait<boost::unique_lock<boost::mutex> > (boost::unique_lock<boost::mutex>&, boost::detail::timeout)]+0x246): undefined reference to `_imp___ZN5boost11this_thread18interruptible_waitEPvNS_6detail7timeoutE'
Я использую одинаковые версии библиотеки Boost (1.44.0) на обеих платформах