Mam problem z budowaniem wspólnej biblioteki z GCC/Linux. Obecnie ta wspólna biblioteka jest tworzona z opcją GCC/libtool "-shared" i wszystko jest w porządku.Łączenie biblioteki statycznej ze współdzieloną podczas kompilacji?
Teraz istnieją dwie dodatkowe statyczne biblioteki (pliki .a), które należy dodać do tego udostępnionego, ponieważ zapewniają one pewną funkcjonalność, która jest wymagana przez współdzieloną. Dodanie tych statycznych bibliotek z opcją "-l" nie pomaga, a potem nie są częścią pliku .so.
Jak zatem zmusić GCC/libtool, aby naprawdę dodać kod tych statycznych bibliotek do biblioteki współdzielonej?
Dzięki!
Do tworzenia plików wykonywalnych można po prostu dodać pełną ścieżkę biblioteki statycznej do opcji budowlanych gcc, takie jak: 'gcc -Wall -g live_mystuff.c -o my_app /usr/local/src/ffmpeg/libswscale/libswscale.a -lpthread -lbz2 -lm -lz -lfaac -lmp3lame -lx264 -lfaad ...' It może działać również do tworzenia bibliotek współdzielonych. Spróbuj. – fritzone
Skąd wiadomo, że "nie są częścią pliku .so"? –
@fritzone: dla plików wykonywalnych, które działają bez problemów, muszę to zrobić dla biblioteki współdzielonej – Elmi