CMakeLists文件编写

  • 指定c++11编译:add_definitions(-std=c++11)
  • 编译opencv文件
    • CMakeLists.txt(txt文件名大小写不能变)内容如下:

      cmake_minimum_required(version 2.8) #指定cmake最低版本
      project (project_name) #project_name是你要创建的工程名
      find_package(OpenCV REQUIRED)
      add_executable(project_name your.cpp)#project_name是工程名,your.cpp是要执行的cpp文件
      target_link_libraries(project_name ${OpenCV_LIBS})#project_name是工程名
      
    • 执行多个cpp文件
      如果有多个cpp文件执行,add_executable()第二个参数可变为多个cpp文件,空格连接,如下所示:

      add_executable(project_name a.cpp b.cpp c.cpp)
      #project_name是工程名,a.cpp, b.cpp, c.cpp是要执行的多个cpp文件
      

      如果有很多个cpp文件,不方便一一写出,可以使用以下语法(参考博客):

      aux_source_directory( )
      #dir表示想要查找的目录,variable表示把所有源文件存到这个变量里面
      
      aux_source_directory(. source_list)
      add_executable(project_name ${source_list})
      
    • cmake会产生多个文件,可创建文件夹存放cmake结果

      mkdir build #build是创建的存放cmake结果的文件夹,可以换成其他名字
      cd build
      cmake .
      make
      

      注意:CMakeLists.txt文件位于build文件夹下。

你可能感兴趣的:(Linux)