GNU/Linux >> Linux Esercitazione >  >> Linux

Come usare CMAKE_INSTALL_PREFIX

Esistono due modi per utilizzare questa variabile:

  • passandolo come argomento della riga di comando proprio come menzionato da Giobbe:

    cmake -DCMAKE_INSTALL_PREFIX=< install_path > ..

  • assegnandogli valore in CMakeLists.txt :

    SET(CMAKE_INSTALL_PREFIX < install_path >)

    Ma ricordati di posizionarlo PRIMA PROJECT(< project_name>) comando, altrimenti non funzionerà!


Dovrebbe essere (vedi i documenti):

cmake -DCMAKE_INSTALL_PREFIX=/usr ..

Ma ricordati di metterlo prima del comando PROJECT(), altrimenti non funzionerà!

La mia prima settimana di utilizzo di cmake - dopo alcuni anni di GNU autotools - quindi sto ancora imparando (meglio che scrivere macro m4), ma penso di modificare CMAKE_INSTALL_PREFIX dopo setting project è il posto migliore.

CMakeLists.txt

cmake_minimum_required (VERSION 2.8)

set (CMAKE_INSTALL_PREFIX /foo/bar/bubba)
message("CIP = ${CMAKE_INSTALL_PREFIX} (should be /foo/bar/bubba")
project (BarkBark)
message("CIP = ${CMAKE_INSTALL_PREFIX} (should be /foo/bar/bubba")
set (CMAKE_INSTALL_PREFIX /foo/bar/bubba)
message("CIP = ${CMAKE_INSTALL_PREFIX} (should be /foo/bar/bubba")

Prima esecuzione (senza cache)

CIP = /foo/bar/bubba (should be /foo/bar/bubba
-- The C compiler identification is GNU 4.4.7
-- etc, etc,...
CIP = /usr/local (should be /foo/bar/bubba
CIP = /foo/bar/bubba (should be /foo/bar/bubba
-- Configuring done
-- Generating done

Seconda esecuzione

CIP = /foo/bar/bubba (should be /foo/bar/bubba
CIP = /foo/bar/bubba (should be /foo/bar/bubba
CIP = /foo/bar/bubba (should be /foo/bar/bubba
-- Configuring done
-- Generating done

Fammi sapere se sbaglio, ho molto da imparare. È divertente.


Linux
  1. In che modo Linux gestisce più separatori di percorsi consecutivi (/home////nomeutente///file)?

  2. In che modo Systemd utilizza gli script /etc/init.d?

  3. Su quali sistemi //foo/bar è diverso da /foo/bar?

  4. Quando dovrei usare una barra finale su una directory??

  5. Come usare dos2unix?

Quanto swap dovresti usare in Linux?

Come usare Ubuntu

Come scoprire da quale cartella è in esecuzione un processo?

Come utilizzare @reboot in /etc/cron.d

Come determinare la velocità massima della CPU di un processore in Linux?

Come modificare /tmp predefinito in /home/user/tmp