Я успешно установил и запустил mongodb на моем MacBook Pro с
драйвер с ++, но когда я пытаюсь сделать то же самое на компьютере в
Школа (нужно делать длительные симуляции) Я сталкиваюсь с некоторыми ошибками.
сама база данных работает хорошо, но когда я пытаюсь скомпилировать свою программу, я
получить много этих ошибок:
/chalmers/users/X/thesis/libs/mongo-cxx-driver-nightly//
libmongoclient.a(spin_lock.o): In function
`__static_initialization_and_destruction_0(int, int)':
spin_lock.cpp:(.text+0x44): undefined reference to
`boost::system::get_system_category()' spin_lock.cpp:(.text+0x50):
undefined reference to `boost::system::get_generic_category()'...
Я скачал, собрал и попробовал буст версии 1.4.8, 1.4.7 и
1.44.0. Как я понимаю get_system_category () и
get_generic_category () устарели и заменены одинаковыми
имя метода с пропущенным «get». Тем не менее, на моем MacBook я использую Boost
1.4.7 и все работает ..
Я пробовал как ночную, так и последнюю версию 2.0 драйвера с ++. я
все равно получаю такую же ошибку. Компьютер в школе - это RedHat
Предприятие Linux Server. У него нет libboost_system в папке / usr / lib. Так как у меня нет root-доступа, у меня есть
скачал и собрал нужные библиотеки (boost, libcurl) и я
указывая на те, в makefile:
path = ./build/
Ipath = -I/../mongo-cxx-driver-v2.0/mongo/ - I/.../boost_1_44_0/
Lpath = -L/.../mongo-cxx-driver-nightly/ -L/.../boost_1_44_0/stage/lib -L/.../curl/lib
libs = -lboost_system -lmongoclient -lboost_thread -lboost_filesystem -lboost_program_options -lcurl
db: sdc.o main.cpp
g++ main.cpp $(path)sdc.o $(Ipath) $(Lpath) $(libs) -o $ (path)db
sdc.o: ../controller.h ../controller.cpp
g++ -c ../controller.cpp -o ./build/sdc.o $(Ipath)
Кто-нибудь еще имел эту проблему? Кто-нибудь видит, что я делаю
здесь не так?
Спасибо