我的CMakeLists.txt包含以下几行:
-D_GLIBCXX_USE_CXX11_ABI=1
不幸的是 - 找不到tensorflow库。这通过以下方式得到证实:
std::exception
打印出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)
。
message(STATUS ${TF_LIB})
电话将TF_LIB_DIR设置为TF_LIB-NOTFOUND
。
此目录的内容为/home/ubuntu/.local/lib/python2.7/site-packages/tensorflow
我做错了什么?
答案 0 :(得分:0)
我将execute_process调用替换为:
execute_process(COMMAND "python" "-c" "import tensorflow as tf; import sys; sys.stdout.write(tf.sysconfig.get_lib() + '/')" OUTPUT_VARIABLE TF_LIB_DIR)
我认为问题是缺少路径分隔符或由于python print语句附加换行符而写入OUTPUT_VARIABLE的尾部换行符。