2017-08-10 7 views
0

J'essaie de compiler du code. J'ai installé boost en utilisantconfigure: erreur: Impossible de lier à libboost_atomic

brew install boost 

qui a terminé avec succès. J'ai alors couru

autoreconf --install 

qui m'a alors permis de courir

./configure 

mais il génère une erreur à la recherche de libboost_atomic:

checking for a BSD-compatible install... /usr/local/bin/ginstall -c 
checking whether build environment is sane... yes 
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p 
checking for gawk... no 
checking for mawk... no 
checking for nawk... no 
checking for awk... awk 
checking whether make sets $(MAKE)... yes 
checking whether make supports nested variables... yes 
checking for g++... g++ 
checking whether the C++ compiler works... yes 
checking for C++ compiler default output file name... a.out 
checking for suffix of executables... 
checking whether we are cross compiling... no 
checking for suffix of object files... o 
checking whether we are using the GNU C++ compiler... yes 
checking whether g++ accepts -g... yes 
checking for style of include used by make... GNU 
checking dependency style of g++... gcc3 
checking for gcc... gcc 
checking whether we are using the GNU C compiler... yes 
checking whether gcc accepts -g... yes 
checking for gcc option to accept ISO C89... none needed 
checking whether gcc understands -c and -o together... yes 
checking dependency style of gcc... gcc3 
checking whether make sets $(MAKE)... (cached) yes 
checking build system type... x86_64-apple-darwin15.6.0 
checking host system type... x86_64-apple-darwin15.6.0 
checking for boostlib >= 1.60... yes 
checking whether the Boost::Thread library is available... yes 
checking for exit in -lboost_thread-mt... yes 
checking whether the Boost::Log library is available... yes 
checking for exit in -lboost_log-mt... yes 
checking for exit in -lboost_log_setup-mt... yes 
checking whether the Boost::Filesystem library is available... yes 
checking for exit in -lboost_filesystem... yes 
checking whether the Boost::Program_Options library is available... yes 
checking for exit in -lboost_program_options-mt... yes 
checking whether the Boost::System library is available... yes 
checking for exit in -lboost_system... yes 
checking whether the Boost::Chrono library is available... yes 
checking for exit in -lboost_chrono-mt... yes 
checking whether the Boost::Regex library is available... yes 
checking for exit in -lboost_regex-mt... yes 
checking whether the Boost::Date_Time library is available... yes 
checking for exit in -lboost_date_time-mt... yes 
checking for main in -lboost_atomic... no 
configure: error: Can not link to libboost_atomic! 

Recherche sur Internet n'a pas donné d'informations (I suis un utilisateur du logiciel, pas un développeur, donc je ne suis pas sûr que je suis à la recherche des bons termes).

Quelqu'un peut-il me dire ce qui me manque? Dois-je installer d'autres dépendances?

Le système est Mac 10.11.

Répondre

1

Il vous manque le paquet pour développer avec la bibliothèque atomique de poussée. C'est un problème commun lors de la compilation de choses sur Linux, et votre solution est de toujours Google la bibliothèque (booster atomique) et votre saveur linux, pour voir ce qu'il faut obtenir. Pour les systèmes basés sur Debian (par exemple Ubuntu),

sudo apt-get install libboost-atomic-dev 

devrait résoudre ce problème. Vous pouvez obtenir d'autres erreurs de ce type - rincez et répétez. Si tout le reste échoue, vous pouvez télécharger la source, et compiler et installer cela: http://www.boost.org/doc/libs/1_53_0/doc/html/atomic.html

Vous avez des instructions ici.

+0

Merci - une idée de ce que je devrais rechercher sur un mac? Homebrew ne semble avoir que «boost» et rien d'autre («installer brass libboost-atomic-dev» ne fonctionne pas). J'ai téléchargé la source de boost de http://www.boost.org/users/download/ - si je compile et installe ceci, devrait-il installer 'libboost_atomic'? J'hésite à aller de l'avant et essayer au cas où je me retrouverais avec deux installations de boost conflictuelles (une par homebrew, et une compilée directement). – Gerhard

+0

@Gerhard Je pense qu'il devrait, à partir de la description. Dans tous les cas, supprimez l'installation homebrew avant d'essayer. Ensuite, vous pouvez toujours revenir en arrière si cela échoue. – kabanus

+0

@Gerhard Je pense qu'il a été introduit en 1.52, donc peut-être la version homebrew était à l'ancienne. – kabanus