我们尝试通过从源代码编译来在 linux 上安装meshlab 2016 。最后,我们设法完成了,但有一个通知说
找不到着色器目录;不会加载任何着色器
有没有人有线索来解决这个问题?
此外,在编译时,似乎外部库(lib3ds.a等)的所有相对链接都发疯了,被迫在文件中添加确切的路径来解决这个问题。有人对此有解决方案吗?
编译是使用完成的
QT 4.2.0 基于 Qt 5.7.1(GCC 4.9.1 20140922(Red Hat 4.9.1-10),64 位)
您是否在手动创建的文件夹中创建可执行/共享库?shaders
文件夹存在,meshlab/src/distrib/
默认情况下可执行文件和共享库将被复制到该位置。
你能提供更多的日志吗?我不确定您的问题,但它看起来类似于我遇到的“Shadow build”编译配置选项的问题(该问题在此处进行了描述)
编译后,外部库应位于meshlab/src/external/lib/linux-g++
. 如果您在“项目”中选中了“影子构建”,则可以在meshlab/src/build-external-Desktop_Qt_5_7_1_GCC_64bit-Debug/lib/linux-g++
. 如果您没有检查“影子构建”,则不会遇到问题。
问题来自 meshlab.pro 文件中的第 153 行:
linux-g++:LIBS += -L../external/lib/linux-g++ -ljhead -L../distrib -lcommon -lGLU
应改为:
linux-g++:LIBS += -L../../src/external/lib/linux-g++ -ljhead -L../distrib -lcommon -lGLU
其他“专业”文件也应更改。有关详细信息,请参阅提供的链接。