Come impostare la directory di installazione delle variabili?

1

Ho un paio di progetti che dipendono da file aggiuntivi, come immagini o file di configurazione.

Durante la compilazione e l'installazione di programmi come Okular con cmake , posso specificare una directory di installazione e lasciare che make install installi su quello. In qualche modo, quel programma capirà che tutte le sue dipendenze sono all'interno di quella cartella, non con il file system Linux principale.

Finora, ho avuto percorsi assoluti, come /etc/config.ini . Il problema è che non riesco a testare il programma senza averlo installato sul mio sistema.

Come posso farlo facilmente in C ++ e Python?

    
posta Martin Ueding 27.09.2013 - 13:42
fonte

1 risposta

1

C / C ++ / altri linguaggi creati con cmake / autotools /...

Il metodo usuale è di fare in modo che il sistema di generazione passi la directory di installazione specificata al compilatore come flag di definizione ( -DPREFIX=${CMAKE_INSTALL_PREFX} ) o scritto in un'intestazione di configurazione ( #define PREFIX @CMAKE_INSTALL_PREFIX@ ). Questo viene compilato nel codice, i valori costanti vengono quindi utilizzati in fase di esecuzione.

Si noti che è importante consentire la modifica del prefisso per l'installazione, ovvero installare i file in un percorso diverso da quello che viene compilato nelle origini. Questo è usato quando si creano pacchetti e vari casi speciali quando i file saranno eventualmente collegati o montati nella posizione che è stata compilata nel codice. Sia cmake che autotools consentono tale sovrascrittura per impostazione predefinita.

Python

Qui il solito metodo consiste semplicemente nel mettere tutti i tuoi dati nella directory in cui si trovano i tuoi moduli e cercarli in sys.path .

    
risposta data 27.09.2013 - 16:46
fonte

Leggi altre domande sui tag