Перейти к содержанию

Рекомендуемые сообщения

Опубликовано

Вот тут возникла проблема:

Делаю библиотеку (.so) на C++ с использованием QT (v2-2.2.2).

Все функции экспортируются как extern "C".

Потом, эта библиотека статическим или динамическим связыванием

линкуется в Kylix (версии 3), откуда и вызываются функции.

Весь прикол в том, что в Kylix версий 2 и ниже - все работает на ура, но в именно в третьей версии - еще на этапе связывания выдает access violation (000023 - странный адрес... Smile

Если из библиотеки выкинуть QT (не использовать ее классы внутри) - все работает.

Весь используемый софт - лицензионный.

Файлы библиотеки собираются как обычно с ключом fPIC:

g++ -c -fPIC *.cpp -I... и т.д.

Сборка выглядит так:

g++ -shared -o libThisIsMyLib.so *.o -L... -lqt -lGL -lGLU ...

как только убираю ключ -lqt - библиотека дружит с Kylix3,

иначе (как в примере) - падает все приложение - даже не запускается.

Если кто-нить хоть чем нибудь сможет помочь - буду признателен.

С Уважением, Андрей.

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...