From 5d2673f10aba2d9422b955964a90534d0b5cb0a1 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 18:10:00 -0500 Subject: [PATCH 01/11] refactor USE_TF_PYTHON_LIBS Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 61 +++++++++++++++++++++---------- 1 file changed, 42 insertions(+), 19 deletions(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index e15e6904ce..4230684dc8 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -32,16 +32,18 @@ if (BUILD_CPP_IF AND INSTALL_TENSORFLOW) ) endif () -if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) +if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS AND NOT SKBUILD) # Here we try to install libtensorflow_cc.so as well as libtensorflow_framework.so using libs within the python site-package tensorflow folder. - - if (NOT DEFINED TENSORFLOW_ROOT) - set (TENSORFLOW_ROOT ${CMAKE_INSTALL_PREFIX}) - endif () - # execute install script execute_process( - COMMAND sh ${DEEPMD_SOURCE_DIR}/source/install/install_tf.sh ${Python_SITELIB} ${TENSORFLOW_ROOT} - ) + COMMAND "${PYTHON_EXECUTABLE}" -c "import tensorflow; print(tensorflow.sysconfig.get_lib())" + WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} + OUTPUT_VARIABLE TENSORFLOW_ROOT + RESULT_VARIABLE TENSORFLOW_ROOT_RESULT_VAR + ERROR_VARIABLE TENSORFLOW_ROOT_ERROR_VAR + ) + if (NOT ${TENSORFLOW_ROOT_RESULT_VAR} EQUAL 0) + message(FATAL_ERROR "Cannot determine tensorflow root, error message: ${TENSORFLOW_ROOT_ERROR_VAR}") + endif() endif () if(DEFINED TENSORFLOW_ROOT) @@ -50,12 +52,12 @@ endif(DEFINED TENSORFLOW_ROOT) # define the search path list(APPEND TensorFlow_search_PATHS ${TENSORFLOW_ROOT}) -if(BUILD_CPP_IF) +if(BUILD_CPP_IF AND NOT USE_TF_PYTHON_LIBS) list(APPEND TensorFlow_search_PATHS ${TENSORFLOW_ROOT_NO64}) list(APPEND TensorFlow_search_PATHS "/usr/") list(APPEND TensorFlow_search_PATHS "/usr/local/") endif() -if(BUILD_PY_IF) +if(BUILD_PY_IF OR USE_TF_PYTHON_LIBS) # here TENSORFLOW_ROOT is path to site-packages/tensorflow # for conda libraries, append extra paths list(APPEND TensorFlow_search_PATHS "${TENSORFLOW_ROOT}/../tensorflow_core") @@ -80,7 +82,7 @@ if (NOT TensorFlow_INCLUDE_DIRS AND tensorflow_FIND_REQUIRED) "You can manually set the tensorflow install path by -DTENSORFLOW_ROOT ") endif () -if (BUILD_CPP_IF) +if (BUILD_CPP_IF AND NOT USE_TF_PYTHON_LIBS) message (STATUS "Enabled cpp interface build, looking for tensorflow_cc and tensorflow_framework") # tensorflow_cc and tensorflow_framework if (NOT TensorFlow_FIND_COMPONENTS) @@ -127,23 +129,44 @@ else () list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1) list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.2) endif() -set (TensorFlowFramework_LIBRARY_PATH "") +set (TensorFlow_LIBRARY_PATH "") foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) - find_library(TensorFlowFramework_LIBRARY_${module} + find_library(TensorFlow_LIBRARY_${module} NAMES ${module} PATHS ${TensorFlow_search_PATHS} PATH_SUFFIXES ${TF_SUFFIX} NO_DEFAULT_PATH ) - if (TensorFlowFramework_LIBRARY_${module}) - list(APPEND TensorFlowFramework_LIBRARY ${TensorFlowFramework_LIBRARY_${module}}) - get_filename_component(TensorFlowFramework_LIBRARY_PATH_${module} ${TensorFlowFramework_LIBRARY_${module}} PATH) - list(APPEND TensorFlowFramework_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) + if (TensorFlow_LIBRARY_${module}) + list(APPEND TensorFlow_LIBRARY ${TensorFlow_LIBRARY_${module}}) + get_filename_component(TensorFlow_LIBRARY_PATH_${module} ${TensorFlow_LIBRARY_${module}} PATH) + list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlow_LIBRARY_PATH_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR - "Not found lib/'${module}' in '${TensorFlow_search_PATHS}' " + "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' " "You can manually set the tensorflow install path by -DTENSORFLOW_ROOT ") endif () endforeach () +if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) + list(APPEND TensorFlow_search_PATHS ${TENSORFLOW_ROOT}/python) + set(TF_SUFFIX "") + set(TensorFlowFramework_FIND_COMPONENTS _pywrap_tensorflow_internal) + foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) + find_library(TensorFlowFramework_LIBRARY_${module} + NAMES ${module} + PATHS ${TensorFlow_search_PATHS} PATH_SUFFIXES ${TF_SUFFIX} NO_DEFAULT_PATH + ) + if (TensorFlowFramework_LIBRARY_${module}) + list(APPEND TensorFlowFramework_LIBRARY ${TensorFlowFramework_LIBRARY_${module}}) + get_filename_component(TensorFlowFramework_LIBRARY_PATH_${module} ${TensorFlowFramework_LIBRARY_${module}} PATH) + list(APPEND TensorFlowFramework_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) + elseif (tensorflow_FIND_REQUIRED) + message(FATAL_ERROR + "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' ") + endif () + endforeach () +endif() + + # find protobuf header find_path(TensorFlow_INCLUDE_DIRS_GOOGLE NAMES @@ -346,6 +369,6 @@ if(BUILD_CPP_IF) -D_GLIBCXX_USE_CXX11_ABI=${OP_CXX_ABI}) if (USE_TF_PYTHON_LIBS) # link: libpython3.x.so - target_link_libraries (TensorFlow::tensorflow_cc INTERFACE ${Python_LIBRARIES}) + target_link_libraries (TensorFlow::tensorflow_cc INTERFACE Python::python) endif() endif() From 8db21ea6734028014719f623fed426253a17918e Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 18:13:23 -0500 Subject: [PATCH 02/11] revert Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index 4230684dc8..31fb9598bf 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -369,6 +369,6 @@ if(BUILD_CPP_IF) -D_GLIBCXX_USE_CXX11_ABI=${OP_CXX_ABI}) if (USE_TF_PYTHON_LIBS) # link: libpython3.x.so - target_link_libraries (TensorFlow::tensorflow_cc INTERFACE Python::python) + target_link_libraries (TensorFlow::tensorflow_cc INTERFACE ${Python_LIBRARIES}) endif() endif() From 35df04b466798523890dc36798c01ebebe3ca155 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 18:16:28 -0500 Subject: [PATCH 03/11] debug Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index 31fb9598bf..b209714b70 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -42,7 +42,7 @@ if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS AND NOT SKBUILD) ERROR_VARIABLE TENSORFLOW_ROOT_ERROR_VAR ) if (NOT ${TENSORFLOW_ROOT_RESULT_VAR} EQUAL 0) - message(FATAL_ERROR "Cannot determine tensorflow root, error message: ${TENSORFLOW_ROOT_ERROR_VAR}") + message(FATAL_ERROR "Cannot determine tensorflow root, error code: ${TENSORFLOW_ROOT_RESULT_VAR}, error message: ${TENSORFLOW_ROOT_ERROR_VAR}") endif() endif () From 28208be2cb4f81c6e7f9e91575da2e60fa534b9c Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 18:21:57 -0500 Subject: [PATCH 04/11] fix Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index b209714b70..a97ad34842 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -35,11 +35,12 @@ endif () if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS AND NOT SKBUILD) # Here we try to install libtensorflow_cc.so as well as libtensorflow_framework.so using libs within the python site-package tensorflow folder. execute_process( - COMMAND "${PYTHON_EXECUTABLE}" -c "import tensorflow; print(tensorflow.sysconfig.get_lib())" + COMMAND ${PYTHON_EXECUTABLE} -c "import tensorflow; print(tensorflow.sysconfig.get_lib())" WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} OUTPUT_VARIABLE TENSORFLOW_ROOT RESULT_VARIABLE TENSORFLOW_ROOT_RESULT_VAR ERROR_VARIABLE TENSORFLOW_ROOT_ERROR_VAR + OUTPUT_STRIP_TRAILING_WHITESPACE ) if (NOT ${TENSORFLOW_ROOT_RESULT_VAR} EQUAL 0) message(FATAL_ERROR "Cannot determine tensorflow root, error code: ${TENSORFLOW_ROOT_RESULT_VAR}, error message: ${TENSORFLOW_ROOT_ERROR_VAR}") From 88b5d7c88e1d4d33c7fa9f8bd8e8f35ddc8606f9 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 18:50:14 -0500 Subject: [PATCH 05/11] fix typo Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 36 +++++++++++++++---------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index a97ad34842..31bf6e5bf1 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -35,7 +35,7 @@ endif () if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS AND NOT SKBUILD) # Here we try to install libtensorflow_cc.so as well as libtensorflow_framework.so using libs within the python site-package tensorflow folder. execute_process( - COMMAND ${PYTHON_EXECUTABLE} -c "import tensorflow; print(tensorflow.sysconfig.get_lib())" + COMMAND ${Python_EXECUTABLE} -c "import tensorflow; print(tensorflow.sysconfig.get_lib())" WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} OUTPUT_VARIABLE TENSORFLOW_ROOT RESULT_VARIABLE TENSORFLOW_ROOT_RESULT_VAR @@ -108,9 +108,9 @@ if (BUILD_CPP_IF AND NOT USE_TF_PYTHON_LIBS) "You can manually set the tensorflow install path by -DTENSORFLOW_ROOT ") endif () endforeach () -else (BUILD_CPP_IF) +else (BUILD_CPP_IF AND NOT USE_TF_PYTHON_LIBS) message (STATUS "Disabled cpp interface build, looking for tensorflow_framework") -endif (BUILD_CPP_IF) +endif (BUILD_CPP_IF AND NOT USE_TF_PYTHON_LIBS) # tensorflow_framework @@ -130,19 +130,19 @@ else () list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.1) list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES .so.2) endif() -set (TensorFlow_LIBRARY_PATH "") +set (TensorFlowFramework_LIBRARY_PATH "") foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) - find_library(TensorFlow_LIBRARY_${module} + find_library(TensorFlowFramework_LIBRARY_${module} NAMES ${module} PATHS ${TensorFlow_search_PATHS} PATH_SUFFIXES ${TF_SUFFIX} NO_DEFAULT_PATH ) - if (TensorFlow_LIBRARY_${module}) - list(APPEND TensorFlow_LIBRARY ${TensorFlow_LIBRARY_${module}}) - get_filename_component(TensorFlow_LIBRARY_PATH_${module} ${TensorFlow_LIBRARY_${module}} PATH) - list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlow_LIBRARY_PATH_${module}}) + if (TensorFlowFramework_LIBRARY_${module}) + list(APPEND TensorFlowFramework_LIBRARY ${TensorFlowFramework_LIBRARY_${module}}) + get_filename_component(TensorFlowFramework_LIBRARY_PATH_${module} ${TensorFlowFramework_LIBRARY_${module}} PATH) + list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR - "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' " + "Not found ${TF_SUFFIX}${module} in '${TensorFlow_search_PATHS}' " "You can manually set the tensorflow install path by -DTENSORFLOW_ROOT ") endif () endforeach () @@ -150,19 +150,19 @@ endforeach () if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) list(APPEND TensorFlow_search_PATHS ${TENSORFLOW_ROOT}/python) set(TF_SUFFIX "") - set(TensorFlowFramework_FIND_COMPONENTS _pywrap_tensorflow_internal) - foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) - find_library(TensorFlowFramework_LIBRARY_${module} + set(TensorFlow_FIND_COMPONENTS _pywrap_tensorflow_internal) + foreach (module ${TensorFlow_FIND_COMPONENTS}) + find_library(TensorFlow_LIBRARY_${module} NAMES ${module} PATHS ${TensorFlow_search_PATHS} PATH_SUFFIXES ${TF_SUFFIX} NO_DEFAULT_PATH ) - if (TensorFlowFramework_LIBRARY_${module}) - list(APPEND TensorFlowFramework_LIBRARY ${TensorFlowFramework_LIBRARY_${module}}) - get_filename_component(TensorFlowFramework_LIBRARY_PATH_${module} ${TensorFlowFramework_LIBRARY_${module}} PATH) - list(APPEND TensorFlowFramework_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) + if (TensorFlow_LIBRARY_${module}) + list(APPEND TensorFlow_LIBRARY ${TensorFlow_LIBRARY_${module}}) + get_filename_component(TensorFlow_LIBRARY_PATH_${module} ${TensorFlow_LIBRARY_${module}} PATH) + list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlow_LIBRARY_PATH_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR - "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' ") + "Not found ${TF_SUFFIX}${module} in '${TensorFlow_search_PATHS}' ") endif () endforeach () endif() From 66355283ba094650b0dece8d606022f51ec47078 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 19:00:05 -0500 Subject: [PATCH 06/11] fix bugs Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index 31bf6e5bf1..317015db49 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -142,27 +142,27 @@ foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR - "Not found ${TF_SUFFIX}${module} in '${TensorFlow_search_PATHS}' " + "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' " "You can manually set the tensorflow install path by -DTENSORFLOW_ROOT ") endif () endforeach () if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) - list(APPEND TensorFlow_search_PATHS ${TENSORFLOW_ROOT}/python) - set(TF_SUFFIX "") - set(TensorFlow_FIND_COMPONENTS _pywrap_tensorflow_internal) + set(TF_SUFFIX python) + set(TensorFlow_FIND_COMPONENTS _pywrap_tensorflow_internal.so) foreach (module ${TensorFlow_FIND_COMPONENTS}) find_library(TensorFlow_LIBRARY_${module} NAMES ${module} PATHS ${TensorFlow_search_PATHS} PATH_SUFFIXES ${TF_SUFFIX} NO_DEFAULT_PATH ) + message(STATUS ${TensorFlow_LIBRARY_${module}}) if (TensorFlow_LIBRARY_${module}) list(APPEND TensorFlow_LIBRARY ${TensorFlow_LIBRARY_${module}}) get_filename_component(TensorFlow_LIBRARY_PATH_${module} ${TensorFlow_LIBRARY_${module}} PATH) list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlow_LIBRARY_PATH_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR - "Not found ${TF_SUFFIX}${module} in '${TensorFlow_search_PATHS}' ") + "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' ") endif () endforeach () endif() From a58138b7391784d3da8fd24ddd1fe497db03f701 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 19:01:21 -0500 Subject: [PATCH 07/11] revert Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index 317015db49..d5918711e8 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -139,7 +139,7 @@ foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) if (TensorFlowFramework_LIBRARY_${module}) list(APPEND TensorFlowFramework_LIBRARY ${TensorFlowFramework_LIBRARY_${module}}) get_filename_component(TensorFlowFramework_LIBRARY_PATH_${module} ${TensorFlowFramework_LIBRARY_${module}} PATH) - list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) + list(APPEND TensorFlowFramework_LIBRARY_PATH ${TensorFlowFramework_LIBRARY_PATH_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' " From e6ae1afc2d2d3d2f754d0aecc25a39c835a560a5 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 19:05:53 -0500 Subject: [PATCH 08/11] fix Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index d5918711e8..ceb1aa0087 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -147,6 +147,7 @@ foreach (module ${TensorFlowFramework_FIND_COMPONENTS}) endif () endforeach () +# find _pywrap_tensorflow_internal and set it as tensorflow_cc if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) set(TF_SUFFIX python) set(TensorFlow_FIND_COMPONENTS _pywrap_tensorflow_internal.so) @@ -165,6 +166,7 @@ if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' ") endif () endforeach () + set (TensorFlow_LIBRARY_tensorflow_cc ${TensorFlow_LIBRARY__pywrap_tensorflow_internal}) endif() From 35dd7b43c6f463f0b04a61e5de603b267a86996d Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 19:10:01 -0500 Subject: [PATCH 09/11] fix Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index ceb1aa0087..6351f5800a 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -156,17 +156,16 @@ if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) NAMES ${module} PATHS ${TensorFlow_search_PATHS} PATH_SUFFIXES ${TF_SUFFIX} NO_DEFAULT_PATH ) - message(STATUS ${TensorFlow_LIBRARY_${module}}) if (TensorFlow_LIBRARY_${module}) list(APPEND TensorFlow_LIBRARY ${TensorFlow_LIBRARY_${module}}) get_filename_component(TensorFlow_LIBRARY_PATH_${module} ${TensorFlow_LIBRARY_${module}} PATH) list(APPEND TensorFlow_LIBRARY_PATH ${TensorFlow_LIBRARY_PATH_${module}}) + set (TensorFlow_LIBRARY_tensorflow_cc ${TensorFlow_LIBRARY_${module}}) elseif (tensorflow_FIND_REQUIRED) message(FATAL_ERROR "Not found ${TF_SUFFIX}/${module} in '${TensorFlow_search_PATHS}' ") endif () endforeach () - set (TensorFlow_LIBRARY_tensorflow_cc ${TensorFlow_LIBRARY__pywrap_tensorflow_internal}) endif() From a33f7b5a43dd8f7597061eccdcb19e28bf845a05 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Sun, 11 Dec 2022 19:14:20 -0500 Subject: [PATCH 10/11] lmp: search python directory Signed-off-by: Jinzhe Zeng --- source/lmp/env_py.sh.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/lmp/env_py.sh.in b/source/lmp/env_py.sh.in index 203ba1d77c..f7a97b4771 100644 --- a/source/lmp/env_py.sh.in +++ b/source/lmp/env_py.sh.in @@ -5,9 +5,10 @@ PYTHON_LIBRARY_PATH="@Python_LIBRARY_DIRS@" TF_INCLUDE_DIRS=`echo $TENSORFLOW_INCLUDE_DIRS | sed "s/;/ -I/g"` TF_LIBRARY_PATH=`echo $TENSORFLOW_LIBRARY_PATH | sed "s/;/ -L/g"` +PY_LIBRARY_PATH=`echo $PYTHON_LIBRARY_PATH | sed "s/;/ -L/g"` TF_RPATH=`echo $TENSORFLOW_LIBRARY_PATH | sed "s/;/ -Wl,-rpath=/g"` PYTHON_RPATH=`echo $PYTHON_LIBRARY_PATH | sed "s/;/ -Wl,-rpath=/g"` NNP_INC=" -D_GLIBCXX_USE_CXX11_ABI=@OP_CXX_ABI@ -std=c++@CMAKE_CXX_STANDARD@ -D@prec_def@ -DLAMMPS_VERSION_NUMBER=$(./lmp_version.sh) -I$TF_INCLUDE_DIRS -I$DEEPMD_ROOT/include/ " -NNP_PATH=" -L$TF_LIBRARY_PATH -L$DEEPMD_ROOT/lib" +NNP_PATH=" -L$TF_LIBRARY_PATH -L$DEEPMD_ROOT/lib -L$PY_LIBRARY_PATH" NNP_LIB=" -Wl,--no-as-needed -l@LIB_DEEPMD_CC@ -ltensorflow_cc -ltensorflow_framework -lpython@Python_VERSION_MAJOR@.@Python_VERSION_MINOR@ -Wl,-rpath=$TF_RPATH -Wl,-rpath=$DEEPMD_ROOT/lib -Wl,-rpath=$PYTHON_RPATH " From 1ef88d7a8283f3f1dfc0640f3930a437910a2783 Mon Sep 17 00:00:00 2001 From: Jinzhe Zeng Date: Mon, 12 Dec 2022 16:19:35 -0500 Subject: [PATCH 11/11] fix for cross platforms Signed-off-by: Jinzhe Zeng --- source/cmake/Findtensorflow.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/cmake/Findtensorflow.cmake b/source/cmake/Findtensorflow.cmake index 6351f5800a..c9f209c738 100644 --- a/source/cmake/Findtensorflow.cmake +++ b/source/cmake/Findtensorflow.cmake @@ -150,7 +150,7 @@ endforeach () # find _pywrap_tensorflow_internal and set it as tensorflow_cc if (BUILD_CPP_IF AND USE_TF_PYTHON_LIBS) set(TF_SUFFIX python) - set(TensorFlow_FIND_COMPONENTS _pywrap_tensorflow_internal.so) + set(TensorFlow_FIND_COMPONENTS _pywrap_tensorflow_internal${CMAKE_SHARED_LIBRARY_SUFFIX}) foreach (module ${TensorFlow_FIND_COMPONENTS}) find_library(TensorFlow_LIBRARY_${module} NAMES ${module}