Differenze ./compile e ./configure [Risolto]

Tutto ciò che è pertinente a Sabayon Linux, indipendentemente dall'architettura e dall'ambiente grafico

Moderator: Moderators

Differenze ./compile e ./configure [Risolto]

Postby hellraiser » Tue Jul 12, 2011 11:49

Vorrei aprire una appostita discussione sui summenxzionati perchè non mi è tanto chiaras la differenza.. :oops:

da quello che ho capito configure è uno scripte, allegato ai sorgenti da compilare, che esegue una serie di operazioni per verificare se il sistema ha tutto il necessario per eseguire il programma (tipo librerie, drivers & C.)

...mentre invece compile riguara la creazione dei makefiles? edit: ciè crea direttamente il makefile senza curarsi dell' attuale "configurazione" del sistema (bypassa il file configure?)

Infine, potresete gentilmente postare il contenuto-tipo di un file configure e di uno compile e illustrarne il contenuto/funzionamento? Anche se probabilmente per un neofita serebbe difficilissimo capirlo, almento spiegarlo a grandi linee. grazie :eye:
Last edited by hellraiser on Tue Jul 12, 2011 22:28, edited 1 time in total.
hellraiser
Growing Hen
 
Posts: 113
Joined: Mon Jul 11, 2011 16:39

Re: ./compile e ./configure

Postby micia » Tue Jul 12, 2011 12:16

Chiarificazione Dovuta e Necessaria: Installare programmi compilandoli manualmente dagli archivi scaricati dai siti esterni è pericoloso, non raccomandato, non supportato.
In Sabayon i metodi supportati e sicuri per installare software sono entropy e portage, ovvero i suoi gestori dei pacchetti.
Qualsiasi altro metodo può funzionare o può non funzionare, in ogni caso l'utente risponde degli effetti.

./compile, che io sappia, non esiste, ti riferisci forse a make?

La compilazione di un programma (quando questo è scritto in C/C++) è usualmente costituita da varie fasi:
1) ./configure: genera un makefile appropriato per il sistema, per fare questo controlla che esistano librerie, che la configurazione del kernel sia appropriata, che il computer sia di un certo tipo. In sostanza qualsiasi cosa che serva per determinare come compilare il programma. Questo stadio è reso necessario dalla grande varietà di configurazioni e di sistemi Unix o Unix-like in circolazione.

2) compilazione: per questo stadio si usa il comando make, make si occupa in sostanza di compilare nel modo appropriato l'applicazione riducendo al minimo i tempi di compilazione e compilando nella sequenza appropriata tutti i vari moduli dell'applicazione. Per far questo si serve di un file denominato Makefile. Il Makefile dichiara le dipendenze dei vari file che compongono il progetto (file .c, .cpp, header, librerie, etc...) e come devono essere compilati (quali compilatori utilizzare, quali librerie collegare, quali flag di ottimizzazione utilizzare, etc...).
Nello scenario tipico, come ho detto al punto 1), il Makefile è generato, totalmente o in parte, da ./configure

3) installazione: i Makefile contengono anche le informazioni su come installare il programma. In genere ci sono una serie di "cose opzionali" che ciascun Makefile può eseguire. In genere esistono almeno installazione e disinstallazione.
Queste sono usualmente invocate con:
Code: Select all
make install

e
Code: Select all
make uninstall

(alle volte viene usato il nome alternativo make deinstall)
di solito vanno richiamate come root.

L'organizzazione sia di uno script configure che di un Makefile non sono tipici, non sono nemmeno scontati o banali, non contengono un insieme "ben definito" di istruzioni. Variano in base all'esigenza dell'applicazione a cui si "riferiscono".
Generalmente si creano a mano solo per progetti molto piccoli, il più delle volte son generati automaticamente da strumenti appositi nei programmi per lo sviluppo di software.
micia
Sagely Hen
 
Posts: 2718
Joined: Wed Nov 26, 2008 16:41

Re: ./compile e ./configure

Postby hellraiser » Tue Jul 12, 2011 13:13

micia wrote:./compile, che io sappia, non esiste, ti riferisci forse a make?

beh si, ho letto sul web che alcuni davano un ./compile e dopo make, ma forse mi sbaglio? compile e uno script come configure, un comando di linux al pari di make o altro? Magari è un'struzione cotenuta nel makefile quando lo si esegue con make?
hellraiser
Growing Hen
 
Posts: 113
Joined: Mon Jul 11, 2011 16:39

Re: ./compile e ./configure

Postby micia » Tue Jul 12, 2011 14:26

se usavano ./compile scritto in quel modo, è certamente uno script presente nella directory (come lo è ./configure) non è certamente un comando di Linux né un'istruzione contenuta nel Makefile quando si esegue make.
micia
Sagely Hen
 
Posts: 2718
Joined: Wed Nov 26, 2008 16:41


Return to Sabayon Linux Discussioni Generali

Who is online

Users browsing this forum: No registered users and 2 guests