我正在尝试使用C ++版本14和cmake版本3.14从MACOS的ALGLIB网页上编译并运行spline1d_d示例。 (代码在这里:http://www.alglib.net/translator/man/manual.cpp.html#example_spline1d_d_cubic)
编译器将引发以下错误消息。 可以请人帮忙吗?
按预期找到了来自ALGLIB的内容: 包括 包括
编译器错误消息:
/Applications/CLion.app/Contents/bin/cmake/mac/bin/cmake --build /Users/peter/CLionProjects/test_scripts/cmake-build-debug --target test_scripts -- -j 4
Scanning dependencies of target test_scripts
[ 50%] Building CXX object CMakeFiles/test_scripts.dir/main.cpp.o
[100%] Linking CXX executable test_scripts
Undefined symbols for architecture x86_64:
"alglib::spline1dgriddiffcubic(alglib::real_1d_array const&, alglib::real_1d_array const&, alglib::real_1d_array&, alglib::xparams)", referenced from:
_main in main.cpp.o
"alglib::spline1dgriddiff2cubic(alglib::real_1d_array const&, alglib::real_1d_array const&, alglib::real_1d_array&, alglib::real_1d_array&, alglib::xparams)", referenced from:
_main in main.cpp.o
"alglib::xdefault", referenced from:
_main in main.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [test_scripts] Error 1
make[2]: *** [CMakeFiles/test_scripts.dir/all] Error 2
make[1]: *** [CMakeFiles/test_scripts.dir/rule] Error 2
make: *** [test_scripts] Error 2
答案 0 :(得分:0)
我认为您使用的架构错误。 64位或32位。 关于使用c ++进行链接的另一个错误是您没有在项目设置中将引用路径添加到c ++头文件中