2013-05-23 32 views
6

Boost sürüm 1.51'i indirdim, kurdum ve/usr/local/boost_1_51_0 adresine yükledim. Ayrıca mongo-cxx-driver-v2.4'ü de indirdim. Makefile olmadığı için, bu proje yeni python oluşturma ortamını kullandığı için scons'ları çalıştırmam gerekiyor. Scons'ları çalıştırdığımda, boost_thread-mt ve boost_thread için kontrol eder, her ikisi de "hayır" ı döndürür. Açıkçası,/usr/local dizininde artış olduğunu görmüyorum. Yaptığımdan ve bir scons kişiden olmadığımdan dolayı, mongodb inşa sürecini destek versiyonumu nasıl görebilirim?Mongo C++ İstemci Kitaplığı Boostumu Görmüyor

routerwc:~/mongo_proj/mongo-cxx-driver-nightly # scons --cpppath=/usr/local/boost_1_51_0/ --libpath=/usr/local/boost_1_51_0/stage/lib/ 
scons: Reading SConscript files ... 
Checking for C++ library boost_thread-mt... no 
Checking for C++ library boost_thread... no 
routerwc:~/mongo_proj/mongo-cxx-driver-nightly # cat config.log 
file /root/mongo_proj/mongo-cxx-driver-nightly/SConstruct,line 70: 
Configure(confdir = .sconf_temp) 
scons: Configure: Checking for C++ library boost_thread-mt....sconf_temp/conftest_0.cpp <- 
| 
| 
| 
|int 
|main() { 
| 
|return 0; 
|} 
| 
g++ -o .sconf_temp/conftest_0.o -c -O3 -pthread -D_SCONS -DMONGO_EXPOSE_MACROS -Ibuild -Ibuild/mongo .sconf_temp/conftest_0.cpp 
g++ -o .sconf_temp/conftest_0 -Wl,--as-needed -Wl,-zdefs -pthread .sconf_temp/conftest_0.o -lboost_thread-mt 
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lboost_thread-mt 
collect2: ld returned 1 exit status 
scons: Configure: no 

scons: Configure: Checking for C++ library boost_thread....sconf_temp/conftest_1.cpp <- 
| 
| 
| 
|int 
|main() { 
| 
|return 0; 
|} 
| 
g++ -o .sconf_temp/conftest_1.o -c -O3 -pthread -D_SCONS -DMONGO_EXPOSE_MACROS -Ibuild -Ibuild/mongo .sconf_temp/conftest_1.cpp 
g++ -o .sconf_temp/conftest_1 -Wl,--as-needed -Wl,-zdefs -pthread .sconf_temp/conftest_1.o -lboost_thread 
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lboost_thread 
collect2: ld returned 1 exit status 
scons: Configure: no 
+1

Eğer cpppath ve LIBPATH ayarı denediniz mi? Örneğin: scons --cpppath =/usr/include/boost141/--libpath =/usr/lib64/boost141/ –

+0

Yapmadım. Bırak onu vereyim. – user2414654

+0

Bu hala çalışmıyor. İşte benim durumum ... ~/mongo_proj/mongo-cxx-driver-nightly # scons --cpppath =/usr/local/boost_1_51_0/--libpath =/usr/local/boost_1_51_0/stage/lib/ scons: SCONDER dosyaları okuma ... C++ kütüphanesi için kontrol boost_thread-mt ... no C++ kütüphanesi için kontrol boost_thread ... no Burada durur. İşte scons olmamasının sebebi boost_thread kütüphane ... lrwxrwxrwx 1 kök kök 182042 2013-05-21 07:35 /usr/local/boost_1_51_0/stage/lib/libboost_thread.so Yani ben hala emin değilim olduğunu Destek kütüphanelerimi görüyorum. – user2414654

cevap

0

Eğer kütüphanelerini yüklemek yoktu tahmin, sadece aşağıdaki

denemek Can yüklemek ./b2 ziyade ./b2 ran Im?

scons --extrapath="/usr/local/boost_1_51_0/,/usr/local/boost_1_51_0/stage"

1
ben de aynı sorunu vardı

, ben indirip ben i

çalıştırmak C++ sürücülere sahip dizinde

sudo apt-get install libboost-all-dev 

O zaman kaç sonra/usr/include/boost_1_57_0 içindeki desteği ayıklamak

0

Bu sorunu çözüyorum.

SCons'ta, destek kitaplıklarını sınamak için sıra yanlıştır.

Açık SConstruct dosyası ve aşağıdaki satırı değiştirin:

boostLibs = [ "regex", "thread", "system" ] 

boostLibs = [ "system", "regex", "thread" ] 

Cheers için,

+0

Önceki cevabı koydum. –