我使用GNU非常新。我试图开始使用boost文件系统库,我不断收到这些错误。我正在尝试使用define(['cookie'], function(){
});
获取当前工作目录。
我的代码:
({
include: ["cookiejs","requirejs"],
baseUrl: '.',
paths: {
'cookiejs': 'cookie',
'requirejs': 'require'
},
name:"main",
out: "main-built.js",
shim : {
"main" : ["cookiejs"] //This means main depends on cookie
}
})
我的命令:
boost::filesystem
结果:
boost::filesystem::path full_path( boost::filesystem::detail::current_path() );
cout << "Current path is : " << full_path << endl;
有人可以解释一下错误的要求吗?我做错了什么?
答案 0 :(得分:1)
boost.filesystem
不是仅限标头的库。您必须使用-L
和-l
标记链接到库。 (并确保库已经正确构建)。您需要链接到boost_system
和boost_filesystem
库。
命令行可能如下所示:
g++ -Iboost_1_58_0 -Lboost_1_58_0/lib/ -lboost-filesystem -lboost_system main.cpp -o example
(将-L
参数替换为libboost-filesystem.so
文件所在的路径
然后,在您运行可执行文件之前,您必须让加载程序知道在哪里查找库。你可以使用以下命令执行此操作:
export DYLD_LIBRARY_PATH=/path/to/boost/bib:$DYLD_LIBRARY_PATH
为了使其自动化,我建议使用像cmake
这样的构建系统而不仅仅是命令行。