Invalid MEX-file '/xxx/lk.mexa64': /xxx/anaconda3/lib/./libharfbuzz.so.0: undefined symbol: FT_Done_

linux下调程序的时候遇到了这个问题,看起来是一个没有符号定义的报错。这个问题我是这么解决的(需要root权限):
首先搜索libharfbuzz.so.0的位置,在终端输入:
locate libharfbuzz.so.0
发现有好多结果,此时我选择复制 /usr/lib64/libharfbuzz.so.0到/xxx/anaconda3/lib下,提示有相同的文件的话就覆盖。但是很快又报了下一个错:Invalid MEX-file ‘/xxxxxx/WXR/ADnetSVM0114/SPLTT-Release/lk.mexa64’ /xxx/anaconda3/lib/libfontconfig.so.1: undefined symbol: FT_Done_MM_Var
无奈,只得再次寻找libfontconfig.so.1文件,用locate查到好多结果,我同样用 /usr/lib64/下的文件,把它复制到xxx/anaconda3/lib路径下。谁知道编译程序又报了个错:Invalid MEX-file ‘/xxxxxx/WXR/ADnetSVM0114/SPLTT-Release/lk.mexa64’:
/xxx/anaconda3/lib/libpangoft2-1.0.so.0: undefined symbol: hb_font_set_variations
又用上述方法解决复制libpangoft2-1.0.so.0文件到anaconda的lib目录下,再编译,终于没有错了,,,真是一波三折。

你可能感兴趣的:(Invalid,MEX-file,Invalid,MEX-file)