From 41ee73e06f7c4c4eec8aaa67efe99cae5773c9e3 Mon Sep 17 00:00:00 2001 From: xiezl Date: Mon, 21 Nov 2016 13:53:54 +0800 Subject: [PATCH 1/2] SINGA-270 Installation error: include/singa/proto/ is not in /usr/local/include Fix the installation path of include/singa/proto. --- CMakeLists.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a07b69449d..ddfd1ae267 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -150,8 +150,10 @@ IF (USE_JAVA) ENDIF() INSTALL(DIRECTORY include/singa DESTINATION ${CMAKE_INSTALL_PREFIX}/include) -INSTALL(FILES ${CMAKE_BINARY_DIR}/include/singa/singa_config.h DESTINATION - ${CMAKE_INSTALL_PREFIX}/include/singa) +#INSTALL(FILES ${CMAKE_BINARY_DIR}/include/singa/singa_config.h DESTINATION +# ${CMAKE_INSTALL_PREFIX}/include/singa) +INSTALL(DIRECTORY ${CMAKE_BINARY_DIR}/include/singa DESTINATION + ${CMAKE_INSTALL_PREFIX}/include) INSTALL (DIRECTORY ${CMAKE_BINARY_DIR}/lib DESTINATION ${CMAKE_INSTALL_PREFIX} PATTERN "*libgtest.a" EXCLUDE ) From 675764d46c0e6aa69acafefb23d4d8edd3ec66c6 Mon Sep 17 00:00:00 2001 From: xiezl Date: Tue, 22 Nov 2016 21:13:59 +0800 Subject: [PATCH 2/2] SINGA-270 Installation error: include/singa/proto/ is not in /usr/local/include Fix dependent lib installation. Add a new option to disable glog usage. --- CMakeLists.txt | 15 ++++++++++++--- cmake/Dependencies.cmake | 6 +++--- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ddfd1ae267..e73e3e4147 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -49,6 +49,7 @@ OPTION(USE_CUDA "Use Cuda libs" OFF) OPTION(USE_CUDNN "Use Cudnn libs" ON) OPTION(USE_OPENCV "Use opencv" OFF) OPTION(USE_LMDB "Use LMDB libs" OFF) +OPTION(USE_GLOG "Use glog libs" ON) OPTION(USE_PYTHON "Generate py wrappers" ON) OPTION(USE_JAVA "Generate java wrappers" OFF) OPTION(USE_OPENCL "Use OpenCL" OFF) @@ -74,6 +75,14 @@ CONFIGURE_FILE ( SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib) SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) +#SET(DEPENDENT_LIB_PREFIX ${CMAKE_INSTALL_PREFIX}) + +IF(CMAKE_INSTALL_PREFIX STREQUAL "") + SET(DEPENDENT_LIB_PREFIX ${CMAKE_BINARY_DIR}) +ELSE() + SET(DEPENDENT_LIB_PREFIX ${CMAKE_INSTALL_PREFIX}) +ENDIF() + IF (USE_CUDA) include(ExternalProject) @@ -83,7 +92,7 @@ IF (USE_CUDA) SOURCE_DIR "cnmem/" CONFIGURE_COMMAND "${CMAKE_COMMAND}" "-H${CMAKE_BINARY_DIR}/cnmem" "-B." - "-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}" + "-DCMAKE_INSTALL_PREFIX=${DEPENDENT_LIB_PREFIX}" ) #ADD_SUBDIRECTORY(lib/cnmem) #LIST(APPEND SINGA_LINKER_LIBS cnmem) @@ -120,7 +129,7 @@ IF (USE_MODULES) SOURCE_DIR "protobuf-2.6.1/" BUILD_IN_SOURCE 1 CONFIGURE_COMMAND "./configure" "--disable-shared" - "--prefix=${CMAKE_BINARY_DIR}/" "CXXFLAGS=-fPIC" + "--prefix=${DEPENDENT_LIB_PREFIX}/" "CXXFLAGS=-fPIC" INSTALL_COMMAND "make" "install" ) ExternalProject_Add(openblas @@ -131,7 +140,7 @@ IF (USE_MODULES) BUILD_IN_SOURCE 1 CONFIGURE_COMMAND "" BUILD_COMMAND "make" "ONLY_CBLAS=1" - INSTALL_COMMAND "make" "PREFIX=${CMAKE_BINARY_DIR}/" "install" + INSTALL_COMMAND "make" "PREFIX=${DEPENDENT_LIB_PREFIX}/" "install" ) ENDIF() diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake index d5bfbd926d..7f7e5b3064 100644 --- a/cmake/Dependencies.cmake +++ b/cmake/Dependencies.cmake @@ -65,9 +65,9 @@ ENDIF() #INCLUDE("cmake/ProtoBuf.cmake") #INCLUDE("cmake/Protobuf.cmake") -FIND_PACKAGE(Glog) -IF(GLOG_FOUND) - #MESSAGE(STATUS "GLOG FOUND at ${GLOG_INCLUDE_DIR}") +IF(USE_GLOG) + FIND_PACKAGE(Glog REQUIRED) + MESSAGE(STATUS "GLOG FOUND at ${GLOG_INCLUDE_DIR}") ADD_DEFINITIONS("-DUSE_GLOG") LIST(APPEND SINGA_LINKER_LIBS ${GLOG_LIBRARIES}) INCLUDE_DIRECTORIES(${GLOG_INCLUDE_DIR})