Sto provando a collegarmi con la libc.a statica e una lib dinamica, senza successo.come linkare con lib dinamico (.so) e static libc.a
ho già tryied il seguente:
In primo luogo provo con tutte le dinamiche:
- gcc -shared libtest.c -o libtest.so
- gcc -c principale .c -o main.o
- gcc main.o -o test -L. -ltest
E 'di lavoro (compilare ed eseguire)
In secondo luogo ho testare quello che voglio (lib dinamica e libc statica):
- gcc -shared libtest.c -o libtest. così
- gcc -c main.c -o main.o
- gcc main.o -o prova libtest.so /usr/lib/libc.a
Si sta compilando, ma in esecuzione, segfault! Uno strace mostra che sta provando ad accedere a libc.so !!!
Infine ho provato a compilare un semplice progamma senza alcun riferimento alla dinamica lib
- gcc main.c -static -> compilare ok, ok eseguire
- gcc main.c/usr /lib/libc.a -> compilare ok, eseguire: errore di segmentazione (uno spettacolo strace che di accesso a libc.so)
Come farlo?
Grazie
Quale sistema operativo? Altre persone vedranno la domanda se aggiungi un tag per il sistema operativo a cui sei interessato. – caf
Qual è la versione di gcc utilizzata? – BHS