Re: C++ ?
On Tue, 12 Sep 2000, Paul S. Romanchenko wrote:
> On Tue, 12 Sep 2000, Sergey Chumakov wrote:
>
> SC>Hi, All!
> SC>
> SC>Я перетягиваю c++ библиотеку с win на линукс. Работаю на текущем woody.
> SC>У меня возинкли некоторые проблемы:
> SC>
> SC>1. После компиляции объектников я пытался собрать .so c помощью ld.
> SC>Этот вариант не прошел - были проблемы с виртуальными функциями.
> SC>Вылечилось использованием для сборки g++. С чем бы это могло быть
> SC>связано?
> С именами виртуальных функций. В ++ имена функций "портятся".
Не портятся, а кодируются. Иначе как же работает весь QT-based софт тогда?
>
> SC>
> SC>2. Собираю стат. lib.а (g++ -Wall -c ..., ar r lib.a f1.o ..., ranlib lib.a)
> SC>При компиляции тестового примера (g++ -Wall -lncurces ./lib.a test.cpp) все
> SC>используемые из lib.а методы unresolved.
> Что за lib.a? Каждая библиотека имеет вид libИМЯ.ТИП (libm.a, libm.so,
> libqt.so). Подключаются они `-lИМЯ'. В случае с lib.a у библиотеки
> непонятно какое имя.
Вроде ld не дурак, сначала смотрит libLIBNAME а потом LIBNAME - так что это
не влияет.
> SC>
> SC>3. Библиотека динамически загружает библиотеку от interbase6.0.1 (взят в
> SC>rpm-ке с родного сайта) все работает, после выхода из тестовой программы
> SC>(уже к этому времени сделано dlclose), получаю seg. fault. С
> SC>библиотеками от sybase 11.0.3 все нормально. Если не использовать динамическую
> SC>загрузку то завершение нормальное. Может кто-нибудь сталкивался с таким
> SC>явлением или может объяснить его причины?
> запусти программу из под gdb, когда трапнется напиши bt и посмотри, где
> трапается. Может поможет.
>
Best regards,
-Vlad
Reply to:
- Follow-Ups:
- Re: C++ ?
- From: "Paul S. Romanchenko" <paul@commed.ru>
- References:
- Re: C++ ?
- From: "Paul S. Romanchenko" <paul@commed.ru>