我的 CMakeLists.txt 包含以下行:
execute_process(COMMAND "python" "-c" "import tensorflow as tf; print tf.sysconfig.get_lib()" OUTPUT_VARIABLE TF_LIB_DIR)
find_library(TF_LIB
NAMES tensorflow_framework
PATHS ${TF_LIB_DIR}
NO_DEFAULT_PATH)
不幸的是 - 找不到tensorflow库。通过执行以下操作可以确认这一点:
message(STATUS ${TF_LIB})
打印出 TF_LIB-NOTFOUND
.
TF_LIB_DIR 设置为 /home/ubuntu/.local/lib/python2.7/site-packages/tensorflow
通过execute_process
打电话。
该目录的内容是aux-bin contrib core examples include __init__.py __init__.pyc libtensorflow_framework.so python tools
我做错了什么?
最佳答案
我将execute_process调用替换为:
execute_process(COMMAND "python""-c""导入tensorflow as tf; import sys; sys.stdout.write(tf.sysconfig.get_lib() + '/')"OUTPUT_VARIABLE TF_LIB_DIR)
我认为问题要么是缺少路径分隔符,要么是由于 python print 语句附加换行符而写入 OUTPUT_VARIABLE 中的尾随换行符。
关于ubuntu - CMake find_library 找不到 TensorFlow 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49757750/