MacOS上TensorFlow C安装故障?:dyld错误;未加载库:@rpath/libtensorflow.1.dylib“;及;找不到符号:“uuuCG”DGifCloseFile“; 问题:
我应该如何在MacOS上安装TensorFlow C库或以其他方式解决错误:MacOS上TensorFlow C安装故障?:dyld错误;未加载库:@rpath/libtensorflow.1.dylib“;及;找不到符号:“uuuCG”DGifCloseFile“; 问题:,c,tensorflow,dyld,C,Tensorflow,Dyld,我应该如何在MacOS上安装TensorFlow C库或以其他方式解决错误: dyld:未加载库:@rpath/libtensorflow.1.dylib 引用自:/Users/Me//hello\u tf 原因:找不到图像 中止陷阱:6 及 dyld:找不到符号:_cg_DGifCloseFile 引用自:/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO 应位于:/usr/local/lib/libGIF.dyli
dyld:未加载库:@rpath/libtensorflow.1.dylib
引用自:/Users/Me//hello\u tf
原因:找不到图像
中止陷阱:6
及
dyld:找不到符号:_cg_DGifCloseFile
引用自:/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
应位于:/usr/local/lib/libGIF.dylib中
在/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO中
中止陷阱:6
上下文
我使用“仅限MacOS CPU”库逐字跟踪for MacOS,直到sudo ldconfig
位。这就是Mac,我用update\u dyld\u shared\u cache
替换ldconfig
并重新启动,然后构建了提供的示例程序
#包括
#包括
int main(){
printf(“你好,来自TensorFlow C库版本%s\n”,TF_version());
返回0;
}
我得到:
~$gcc hello\u tf.c-ltensorflow-o hello\u tf
~$/你好
dyld:未加载库:@rpath/libtensorflow.1.dylib
引用自:/Users/Me//hello\u tf
原因:找不到图像
中止陷阱:6
按照说明的建议,我使用gcc-I/usr/local/include-L/usr/local/lib hello\u tf.c-ltensorflow-o hello\u tf
重建,得到了相同的结果
安装说明中说,为非系统目录中的安装设置LIBRARY\u PATH
和DYLD\u LIBRARY\u PATH
。我决定试一试:
export LIBRARY\u PATH=$LIBRARY\u PATH:/usr/local/lib
导出动态库路径=$DYLD\u库路径:/usr/local/lib
使用这两种方法编译(即不使用和使用-I/usr/local/include-L/usr/local/lib
)现在给我:
dyld:找不到符号:_cg_DGifCloseFile
引用自:/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
应位于:/usr/local/lib/libGIF.dylib中
在/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO中
中止陷阱:6
(好吧,至少这是一个不同的错误。)
My/usr/local/lib
包含TensorFlow文件:
libtensorflow.1.14.0.dylib
libtensorflow.1.dylib
libtensorflow.dylib
libtensorflow_framework.1.14.0.dylib
libtensorflow_framework.1.dylib
libtensorflow_framework.dylib
libtensorflow.dylib
和libtensorflow.1.dylib
是指向libtensorflow.1.14.0.dylib
和libtensorflow_框架.dylib
的链接,同样指向libtensorflow.1.14.0.dylib
,如提供的.tar.gz
存档中所示
预期结果
主要预期效果是发生以下情况:
~$gcc hello\u tf.c-ltensorflow-o hello\u tf
~$/你好
您好,来自TensorFlow C库1.14.0版
(这就是我正在使用的版本。)
第二个预期效果是理解出现上述错误的原因。我通过使用自制软件进行安装,将
/usr/local/lib
添加到LD\u LIBRARY\u PATH
,并使用-ltensorflow
标记作为GCC参数的最后一个进行编译,从而修复了上述错误。戴尔德似乎相当挑剔;如果可能的话,我还是希望有一个更好的解释
~$brew安装libtensorflow
#省略自制输出
~$export-LD\u-LIBRARY\u-PATH=“${LD\u-LIBRARY\u-PATH}:/usr/local/lib”
~$gcc hello\u tf.c-o hello\u tf-ltensorflow
~$/你好
TensorFlow C库版本1.14.0
问题中提到的对DYLD\u LIBRARY\u PATH
和LIBRARY\u PATH
的修改也不起作用
在~/.bash\u profile
或一些构建脚本中,将/usr/local/lib
添加到LD\u LIBRARY\u路径中可能是明智的