我正在尝试使用MinGW32和OpenBLAS在Windows 32下编译Armadillo C ++库。
我已经尝试过关于这个主题的每个教程和stackoverflow.com问题,但似乎仍然无法禁用wrapper.obj的编译,它会产生链接错误“未定义引用`sdot_'”等等。这些是包装器无法找到的BLAS符号。
我没有安装其他BLAS / LAPACK库,并且在cmake输出中确认已找到libopenblas.dll。
如何禁用wrapper.obj的编译和链接?编辑config.hpp无效。
答案 0 :(得分:2)
您不必使用基于cmake的安装程序来使用Armadillo。安装程序只是创建与BLAS和LAPACK链接的包装器库。您可以直接将基于Armadillo的程序与BLAS和LAPACK链接:
g++ prog.cpp -o prog -O2 -I armadillo-4.500.0/include -DARMA_DONT_USE_WRAPPER -DARMA_USE_BLAS -DARMA_USE_LAPACK -lblas -llapack
将armadillo-4.500.0/include
更改为Armadillo包含文件夹所在的位置。