Компиляция Squeeze/Lenny : Library Link error [closed]

У меня проблема: у меня есть библиотека C++ ("DataTsBroad") и тестовое приложение C++ ("DataTsBroadTest") для ее тестирования.
На самом деле, Lib и тестовое приложение скомпилированы на Debian Lenny.

Теперь я хочу продолжать компилировать тестовое приложение на Debian Lenny (ограничение клиента), но я бы скомпилировал lib на Squeeze или Wheezy, чтобы работать на последних выпусках Debian.

Итак, я успешно скомпилировал Lib на Squeeze, но когда я пытаюсь скомпилировать тестовое приложение с этим Lib на Lenny, оно не работает! Возникает ошибка Link Error :

Linking CXX executable DataTsBroadTest /home/nis/pezierg/test/ProductMak/Export/DataTsBroad/L64/Release/libDataTsBroad64.so: undefined reference to `std::ctype::_M_widen_init() const@GLIBCXX_3.4.11'
collect2: ld returned 1 exit status
. make[2]: *** [DataTsBroadTest] Error 1
. make[1]: *** [CMakeFiles/DataTsBroadTest.dir/all] Error 2
make: *** [all] Error 2

Проблема, конечно, связана с ostream C++ Lib, я попытался закомментировать все его использования в моем Lib и это работает.

Но как я могу действительно решить проблему?

2
задан 8 November 2013 в 11:57
1 ответ

Думаю, проблема может заключаться в разных версиях gcc / g ++ на Lenny и Squeeze. Попытайтесь уравнять их, либо обновите один, либо понизьте версию другой, а затем повторите попытку.

0
ответ дан 3 December 2019 в 15:21

Теги

Похожие вопросы