Компиляция Squeeze/Lenny: Ошибка библиотечной ссылки

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

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

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

Связывание исполняемого файла CXX DataTsBroadTest /home/nis/pezierg/test/ProductMak/Export/DataTsBroad/L64/Release/libDataTsBroad64.so: неопределенная ссылка на `std:: ctype:: _ M_widen_init () const@GLIBCXX_3.4.11 '
collect2: ld вернул 1 статус выхода
make[2]: *** [DataTsBroadTest] Ошибка 1
make [1]: *** Ошибка [CMakeFiles / DataTsBroadTest.dir / all] 2
make: *** [все] Ошибка 2

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

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

1 ответ

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

Другие вопросы по тегам