linux - 无效的 mex 文件 : undefined symbol: cholmod_camd

标签 linux matlab mex ceres-solver

如何解决这个问题?我在尝试 mex 的 c++ 文件中没有看到与 cholmod_camd 相关的头文件。

Invalid MEX-file '/home/mpelang/Desktop/APAPstitch/Image Stitching with 
Bundled Moving
DLT/ceresRigidError.mexa64': /usr/local/lib/libceres.so: undefined 
symbol:
cholmod_camd

最佳答案

Ceres 求解器需要 Cholesky 方法来求解线性系统。要么将 c++ 文件链接到包含 cholmod_camd 的库(使用 -lcholmod -lmwlapack),要么明确告诉 ceres 你没有 cholmod(当使用 cmake 构建 ceres 时)。看看http://ceres-solver.org/installation.html了解如何安装 Ceres-solver。

关于linux - 无效的 mex 文件 : undefined symbol: cholmod_camd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45546599/

相关文章:

matlab - 通过减小最大向量的大小,使不等长向量的长度相等

matlab - 生成颜色三角形

performance - Matlab:从循环中重复调用相同的 mex 函数是否会产生太多开销?

c - 在mex文件matlab中使用magma_dysevd

c++ - 在 Linux 中使用 Qt 的 Close() 文件描述符

python - 从 Python 访问 errno?

c++ - 如何在 C 中找到可执行文件的位置?

c++ - SocketCAN c++ 包装器

matlab - 在 MatLab 中使用当前文件名保存图形

c++ - 使用 mex 文件时 libmwm_interpreter.so 中的 matlab 浮点异常