[solved]trovare le opzioni da passare al compilatore
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- NicoMetal
- Linux 2.x

- Messaggi: 380
- Iscritto il: dom 2 mag 2010, 18:21
- Nome Cognome: Nicola
- Slackware: current64
- Kernel: 4.3
- Desktop: kde5 - FluxBox
- Località: Verona
[solved]trovare le opzioni da passare al compilatore
Sto imparando a usare le librerie allegro5 in c ma c'è solo un piccolo ostacolo che non riesco a superare per ora:
a volte nel implementare certe librerie devo passare anche al compilatore determinate opzioni. Precisamente come faccio a sapere quali sono? Ci sarà pur scritto da qualche parte
nei sorgenti o no?
a volte nel implementare certe librerie devo passare anche al compilatore determinate opzioni. Precisamente come faccio a sapere quali sono? Ci sarà pur scritto da qualche parte
nei sorgenti o no?
Ultima modifica di NicoMetal il lun 3 set 2012, 20:56, modificato 1 volta in totale.
- 414N
- Iper Master

- Messaggi: 2924
- Iscritto il: mer 13 feb 2008, 16:19
- Slackware: 15.0
- Kernel: 5.15.19
- Desktop: KDE5
- Località: Bulagna
- Contatta:
Re: trovare le opzioni da passare al compilatore
Dipende da come hai impostato la situazione.
Hai installato allegro5 a livello system-wide, con header files in /usr/include e librerie in /usr/lib[64]?
In questo caso, dovresti solo indicare il nome della libreria tramite il flag -l di gcc.
Per esempio, se devi effettuare il linking alla libreria libpincopallo.so in /usr/lib[64] ti basta indicarlo così:
Qualora non avessi installato allegro a livello system-wide, allora potresti aver bisogno di specificare altre opzioni, quali il path per gli header files (opzione -I di gcc) e il path per le librerie (opzione -L di gcc). Supponendo che tu abbia posto i file di allegro in ~/allegro e che gli include e le librerie si trovino, rispettivamente, in sottodirectory nominate include/ e lib/, allora per effettuare il link alla già sopracitata libpincopallo.so dovresti usare i seguenti flag:
Hai installato allegro5 a livello system-wide, con header files in /usr/include e librerie in /usr/lib[64]?
In questo caso, dovresti solo indicare il nome della libreria tramite il flag -l di gcc.
Per esempio, se devi effettuare il linking alla libreria libpincopallo.so in /usr/lib[64] ti basta indicarlo così:
Codice: Seleziona tutto
-lpincopalloCodice: Seleziona tutto
-I~/allegro/include -L~/allegro/lib -lpincopallo- fgcl2k
- Linux 1.x

- Messaggi: 137
- Iscritto il: gio 29 ott 2009, 10:14
- Nome Cognome: Federico
- Slackware: 14.1 (64bit)
- Kernel: 3.10.17
- Desktop: KDE 4.13.3
Re: trovare le opzioni da passare al compilatore
In aggiunta a quanto già risposto, se hai installato sistem-wide e se la tua libreria dispone di un file di configurazione adatto puoi usare pkg-config.
elenca tutte le librerie configurate; così puoi scoprire se allegro è presente.
Con
trovi le opzioni per il compilatore.
Per esempio:
Nota: i file di configurazione si trovano solitamente in /usr/lib/pkgconfig/ o /usr/lib64/pkgconfig/
Codice: Seleziona tutto
$ pkg-config --list-allCon
Codice: Seleziona tutto
$ pkg-config --libs nomelibreriaCodice: Seleziona tutto
$ pkg-config --cflags nomelibreriaPer esempio:
Codice: Seleziona tutto
$ gcc `pkg-config --cflags --libs nomelibreria` main.c- NicoMetal
- Linux 2.x

- Messaggi: 380
- Iscritto il: dom 2 mag 2010, 18:21
- Nome Cognome: Nicola
- Slackware: current64
- Kernel: 4.3
- Desktop: kde5 - FluxBox
- Località: Verona
Re: trovare le opzioni da passare al compilatore
Grazie mille, disponibili ed efficaci come sempre!!!