Cmake 解决链接错误的正确方法是什么?
我正在使用Ubuntu 14.04上的cmake来构建 它要求构建poppler版本>=0.25。我构建了poppler版本0.35.0 在此之后,我得到了一个链接错误,因为早期版本的poppler得到链接 我通过这样做解决了这个问题:Cmake 解决链接错误的正确方法是什么?,cmake,makefile,Cmake,Makefile,我正在使用Ubuntu 14.04上的cmake来构建 它要求构建poppler版本>=0.25。我构建了poppler版本0.35.0 在此之后,我得到了一个链接错误,因为早期版本的poppler得到链接 我通过这样做解决了这个问题: ln -s /usr/lib/libpoppler.so.54.0.0 /usr/lib/i386-linux-gnu/libpoppler.so 基本上,这里的poppler版本指向新构建的版本。这看起来像是一个黑客 我的问题是,如果我有同一个库的两个版本,
ln -s /usr/lib/libpoppler.so.54.0.0 /usr/lib/i386-linux-gnu/libpoppler.so
基本上,这里的poppler版本指向新构建的版本。这看起来像是一个黑客
我的问题是,如果我有同一个库的两个版本,如何确保“cmake”和“make”以及“g++”(cmake配置为poppler>=0.25.0)找到正确的版本?如何正确调试和修复此类链接错误?正确的方法是修改
builddir/CMakeCache.txt
中的某个变量(POPPLER\u LIBRARY
)。编辑此文件后,请确保使用cmake.
重新生成生成文件(实际上,对于“unix makefiles”生成器,运行make
也可以)
您还可以使用
cmakegui
app,它允许您使用漂亮的图形界面查看和编辑缓存值。我需要指出的是,我多次使用“cmake”重新生成文件。