Pagina 1 di 1

[Risolto] - link simbolici e makepkg

Inviato: mer 29 nov 2006, 0:57
da lennynero
dopo aver cercato invano nel forum vi sottopongo un mio problema: quando creo un pacchetto da una directory temporanea in cui ho riversato il risultato del mio make install i link simbolici alle librerie rimangono fissati sul path temporaneo, come posso ovviare al problema?

faccio un esempio x chiarire:

Codice: Seleziona tutto

./configure --prefix=/usr && make && make install DEST=/tmp/pkgx/build/ 
supponiamo che il pacchetto abbia un link simbolico /tmp/pkgx/build/usr//lib1 al file /tmp/pkgx/build/usr//share/lib1, quando poi creo il pacchetto dentro di esso il link /usr/lib1 punterà a /tmp/pkgx/build/usr/share/lib1, io invece vorrei che puntasse a /usr/share/lib1

ho visto che si può anche demandare a doinst.sh la creazione dei link simbolici, ma me li crea comunque con i path errati...

come risolvo?qualcuno mi sa aiutare?

grazie in anticipo

Re: link simbolici e makepkg

Inviato: mer 29 nov 2006, 2:18
da bloodlust
lennynero ha scritto:

Codice: Seleziona tutto

./configure --prefix=/usr && make && make install DEST=/tmp/pkgx/build/ 
supponiamo che il pacchetto abbia un link simbolico /tmp/pkgx/build/usr//lib1 al file /tmp/pkgx/build/usr//share/lib1, quando poi creo il pacchetto dentro di esso il link /usr/lib1 punterà a /tmp/pkgx/build/usr/share/lib1, io invece vorrei che puntasse a /usr/share/lib1
per cominciare il comando corretto è

Codice: Seleziona tutto

make install DESTDIR=/tmp/pkgx/build/
se non risolvi puoi modificare il puntamento del link ad un percorso relativo e non assoluto. ovvero se per es. il tuo link /tmp/pkgx/build/usr//lib1 punta a /tmp/pkgx/build/usr//share/lib1 puoi farlo puntare a ./share/lib1 (eventualmente lo metti nello script di installazione del pacchetto).

ciao

Inviato: mer 29 nov 2006, 2:33
da lennynero
grazie bloodlust, DESTDIR è stato un errore di battitura, comunque son giunto alla conclusione che il problema si è presentato x un motivo ben preciso, ovvero il Makefile generato dal configure del prog che volevo pacchettizzare è sbagliato, infatti crea il link simbolico in maniera errata facenodolo puntare al file della directory temporanea, nella fattispecie il prog era amsn. Dico che è sbagliato il Makefile di amsn xke in generale --prefix+DESTDIR sono sifficienti a make-installare la roba in DESTDIR e pacchettizzarla per --prefix, mentre in questo caso noto come la creazione del link avvenga facendo riferimento direttamente al path temporaneo. Modificando i riferimenti del Makefile tutto funziona bene; ovviamente funziona anche modificando i link a mano ed eseguendo in seguito makepkg con i link cambiati.

ho cercato di spiegare x non creare confusione a qualche utente di passaggio.

Inviato: mer 29 nov 2006, 2:43
da bloodlust
perfetto
ciao