From a9f462bcbd4a782066db35135657c809509dc3e2 Mon Sep 17 00:00:00 2001 From: 12345qiupeng Date: Thu, 4 Jul 2024 11:12:39 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E8=B0=83=E6=95=B4CMake?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 10 +++++----- Examples/ROS/ORB_SLAM3/CMakeLists.txt | 12 ++++++------ Thirdparty/DBoW2/CMakeLists.txt | 7 ++----- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index eb5362e..d9dd181 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,12 +14,12 @@ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -march=native") # Check C++11 or C++0x support include(CheckCXXCompilerFlag) -CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) +CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX14) CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) if(COMPILER_SUPPORTS_CXX11) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") add_definitions(-DCOMPILEDWITHC11) - message(STATUS "Using flag -std=c++11.") + message(STATUS "Using flag -std=c++14.") elseif(COMPILER_SUPPORTS_CXX0X) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") add_definitions(-DCOMPILEDWITHC0X) @@ -32,9 +32,9 @@ LIST(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake_modules) # 要保证整个工程的opencv版本一致,包括dbow,源码以及ros相关的 # 3 4 都可以正常运行 -find_package(OpenCV 3.2) +find_package(OpenCV 4.2) if(NOT OpenCV_FOUND) - message(FATAL_ERROR "OpenCV > 3.2 not found.") + message(FATAL_ERROR "OpenCV > 4.2 not found.") endif() MESSAGE("OPENCV VERSION:") diff --git a/Examples/ROS/ORB_SLAM3/CMakeLists.txt b/Examples/ROS/ORB_SLAM3/CMakeLists.txt index f316f19..a36b6cc 100644 --- a/Examples/ROS/ORB_SLAM3/CMakeLists.txt +++ b/Examples/ROS/ORB_SLAM3/CMakeLists.txt @@ -14,12 +14,12 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O3 -march=native") # Check C++11 or C++0x support include(CheckCXXCompilerFlag) -CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) +CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX14) CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) -if(COMPILER_SUPPORTS_CXX11) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +if(COMPILER_SUPPORTS_CXX14) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") add_definitions(-DCOMPILEDWITHC11) - message(STATUS "Using flag -std=c++11.") + message(STATUS "Using flag -std=c++14.") elseif(COMPILER_SUPPORTS_CXX0X) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") add_definitions(-DCOMPILEDWITHC0X) @@ -32,9 +32,9 @@ LIST(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/../../../cmake_modules) # 要保证整个工程的opencv版本一致,包括dbow,源码以及ros相关的 # 3 4 都可以正常运行 -find_package(OpenCV 3.2) +find_package(OpenCV 4.2) if(NOT OpenCV_FOUND) - message(FATAL_ERROR "OpenCV > 3.2 not found.") + message(FATAL_ERROR "OpenCV > 4.2 not found.") endif() find_package(Eigen3 3.1.0 REQUIRED) diff --git a/Thirdparty/DBoW2/CMakeLists.txt b/Thirdparty/DBoW2/CMakeLists.txt index 9517aca..5d4d322 100644 --- a/Thirdparty/DBoW2/CMakeLists.txt +++ b/Thirdparty/DBoW2/CMakeLists.txt @@ -30,12 +30,9 @@ set(SRCS_DUTILS # 要保证整个工程的opencv版本一致,包括dbow,源码以及ros相关的 # 3 4 都可以正常运行 -find_package(OpenCV 3.2 QUIET) +find_package(OpenCV 4.2 QUIET) if(NOT OpenCV_FOUND) - find_package(OpenCV 3.0 QUIET) - if(NOT OpenCV_FOUND) - message(FATAL_ERROR "OpenCV > 3.0 not found.") - endif() + message(FATAL_ERROR "OpenCV > 3.0 not found.") endif() set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)