2013-03-03 2 views
0

Я пытаюсь использовать файловую систему boost на моем Mac. Я только добавил следующий заголовок и получил ошибку, когда я пытался скомпилироватьошибка в файловой системе boost

# include <boost/filesystem.hpp> 

ошибка

Undefined symbols for architecture x86_64: 
"boost::system::generic_category()", referenced from: 
__static_initialization_and_destruction_0(int, int) in cclyDZox.o 
"boost::system::system_category()", referenced from: 
__static_initialization_and_destruction_0(int, int) in cclyDZox.o 
ld: symbol(s) not found for architecture x86_64 
collect2: error: ld returned 1 exit status 

любая помощь ценится

+0

Вы не забыли флаги -lboost_system и -lboost_filesystem при связывании? – toch

ответ

1

Я думаю, что вы должны сделать

g++ -I~/Documents/boost_1_53_0/include -L~/Documents/boost_1_53_0/stage/lib -std=c++11 test1ver1.cpp -lboost_filesystem -lboost_system 

  • -I флаг указует, где заголовки подталкивания
  • -L флаг указует, где Повышение ЛИЭС являются
  • -lboost_filesystem и -lboost_system флагов включена связь ваших бинарных и подталкивание файловой системы и системы разделяемых библиотек. (Они должны быть всегда после исходных или объектных файлов)

Например:

#include <boost/filesystem.hpp> 

int main() { 
    boost::filesystem::path path_household_csv("./test"); 
} 
+0

Благодарим вас за ответ. – user2085646

+0

Благодарим вас за ответ. Я сделал, как вы сказали, и у меня все еще есть такая же ошибка ld: библиотека не найдена для -lboost_system collect2: error: ld return 1 status status – user2085646

+0

я что-то пропустил? Я запатентован - я ценю вашу помощь – user2085646

3

Вы должны добавить библиотеку boost_system:

-lboost_system 

к вашей команде сборки. Обратите внимание, что вам также потребуется предоставить библиотеку -lboost_system.

Если ваш проект после сборки, но стонет с чем-то вроде

dyld: Library not loaded: libboost_filesystem.dylib 

вам просто нужно установить переменную окружения

DYLD_LIBRARY_PATH 

включить ваш каталог

$BOOST_HOME/lib 

как упомянуто here ,

Смежные вопросы