运行碰到编译生成的.so文件报错:
undefined symbol: _ZN10tensorflow12OpDefBuilder4AttrESs
在这里插入图片描述
解决办法:
查看你的gcc版本,如果版本大于4,则需要在对应的.sh文件中删除-D_GLIBCXX_USE_CXX11_ABI=0

gcc --version

在这里插入图片描述
我的版本为5.4.0,所以需要删除-D_GLIBCXX_USE_CXX11_ABI = 0
在这里插入图片描述

删除后:

g++ -std=c++11 \
    -shared ./tools/src_mesh_renderer/rasterize_triangles_grad.cc ./tools/src_mesh_renderer/rasterize_triangles_op.cc ./tools/src_mesh_renderer/rasterize_triangles_impl.cc ./tools/src_mesh_renderer/rasterize_triangles_impl.h \
    -o ./tools/kernels/rasterize_triangles_kernel.so -fPIC \
    -I$TF_INC -L$TF_LIB -ltensorflow_framework -O2

删除之后重新运行.sh文件,然后运行代码就可以正常运行了。

GitHub 加速计划 / te / tensorflow
184.54 K
74.12 K
下载
一个面向所有人的开源机器学习框架
最近提交(Master分支:26 天前 )
a49e66f2 PiperOrigin-RevId: 663726708 1 个月前
91dac11a This test overrides disabled_backends, dropping the default value in the process. PiperOrigin-RevId: 663711155 1 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐