web-dev-qa-db-fra.com

Quelle est la syntaxe correcte pour ajouter CFLAGS et LDFLAGS à "configurer"?

Je souhaite installer OpenVPN sur OpenBSD 5.5 en utilisant l'archive source OpenVPN.

Selon les instructions ici , je dois installer lzo et

ajoutez CFLAGS = "- I/usr/local/include" LDFLAGS = "- L/usr/local/lib" pour "configurer", car gcc ne les trouvera pas autrement.

J'ai beaucoup cherché sur Google pour savoir comment faire ce qui précède sur OpenBSD, mais il n'y en a pas.

Voici ce que je compte faire:

  1. Décompressez l'archive tar source dans un répertoire fraîchement créé
  2. Exécutez la commande ./configure CFLAGS = "- I/usr/local/include" LDFLAGS = "- L/usr/local/lib"
  3. Émettez la commande make
  4. Émettez la commande make install

Laquelle des syntaxes suivantes est correcte?

./configure CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"

ou

./configure --CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"

ou

./configure --CFLAGS="-I/usr/local/include" --LDFLAGS="-L/usr/local/lib"
41
user66229

La bonne façon est:

./configure CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"

mais cela peut ne pas fonctionner avec tous les scripts configure. Il est probablement préférable de définir des variables d'environnement telles que CPATH et LIBRARY_PATH (voir la page de manuel gcc).

Un exemple:

export CPATH=/usr/local/include
export LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH=/usr/local/lib

dans ton .profile, par exemple. Le LD_LIBRARY_PATH peut être nécessaire dans le cas de bibliothèques partagées si aucun chemin d'exécution n'est utilisé (cela dépend du système d'exploitation, des outils de construction et des options qui sont utilisées, mais cela ne devrait pas faire de mal).

41
vinc17

La première syntaxe est correcte.

./configure CFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib"

Cependant, il est fortement recommandé d'utiliser binaire packages(7) ou, si pour une raison quelconque vous avez absolument besoin de construire à partir de la source, faites utilisation de l'infrastructure ports(7), comme expliqué par FAQ section 15 .

Configurez l'arborescence des ports comme indiqué dans la FAQ. Recherchez ensuite un port openvpn:

cd /usr/ports
make search key=openvpn

Cela produira un certain nombre de ports contenant le terme openvpn. L'un d'eux est openvpn-2.3.2 Avec le chemin net/openvpn.

cd net/openvpn
Sudo make install clean

Cela aura l'avantage que les dépendances (ici seulement lzo2) Seront correctement installées sans encombrer votre système et vous obtiendrez des instructions supplémentaires sur la façon d'utiliser openvpn sur OpenBSD.

8
user80301