J'ai RHEL 5.2, avec Boost 1.33 installé. J'ai téléchargé boost_1_44_0.tar.bz2. et l'a construit. À l'achèvement, il a montré:
The Boost C++ Libraries were successfully built!
The following directory should be added to compiler include paths:
/home/dfe/Archive/boost_1_44_0
The following directory should be added to linker library paths:
/home/dfe/Archive/boost_1_44_0/stage/lib
Tout d'abord, j'ai supprimé le boost rpm existant en utilisant
rpm -e boost-1.33.1-10.el5
Un message s'affiche indiquant "erreur:" boost "spécifie plusieurs packages"
Puis essayé:
rpm -e --allmatches boost
(Je ne me souviens pas si j'ai tapé 'boost' ou 'boost-1.33.1-10.el5')
Les packages avec dépendances ont été affichés. J'ai fait:
rpm -e [packagename1]
rpm -e [packagename2]
et ainsi de suite, puis a fait:
rpm -e --allmatches
Ce boost effacé complètement de mon système.
Ensuite, j'ai extrait boost_1_44_0.tar.bz2 en utilisant tar -xvjf boost_1_44_0.tar.bz2 et j'ai exécuté bootstrap avec:
./bootstrap.sh
Puis exécuté bjam en tant que:
./bjam install
C'est tout! Boost a été installé sur mon système, et je n'ai eu à spécifier aucune des options de l'éditeur de liens lors de la compilation des programmes! Yay! La commande 'rpm -q boost' montre maintenant qu'aucun paquet n'est installé.
une raison possible est que vous "faites" simplement "pas installer". vous devez donc exécuter "Sudo ./b2 install" et non "./b2"
il y a toujours des étapes pour installer les logiciels dans les systèmes linux
le problème est que vous avez fait deux étapes et une dernière étape
Ajoutez simplement les chemins à votre .bashrc ou .profile (ou à tout ce qui fait flotter votre bateau) comme ceci:
export LIBS="-L/home/dfe/Archive/boost_1_44_0/stage/lib"
export CPPFLAGS="-I/home/dfe/Archive/boost_1_44_0"
Vous devez inclure ces répertoires dans le makefile que vous utiliseriez pour construire votre application
CC -I/home/dfe/Archive/boost_1_44_0 -L/home/dfe/Archive/boost_1_44_0/stage/lib yourprogram.cpp
-I option Ajoute dir à la liste des répertoires recherchés pour les fichiers #include.
L'option -L ajoute dir à la liste des répertoires recherchés pour les bibliothèques par l'éditeur de liens
CC est un compilateur Sun ...