
cmake
文章平均质量分 69
Dontla
这个作者很懒,什么都没留下…
展开
-
ubuntu16.04安装低版本cmake(安装cmake安装)
解压后,你可以选择一个目录来安装这个版本的CMake,例如。这样可以避免与系统中其他版本的CMake冲突。你可以使用以下命令移动解压后的文件夹到。时,就会调用这个特定版本的CMake。这样,每次你在终端输入。原创 2024-07-12 11:07:07 · 1157 阅读 · 0 评论 -
CMake add_subdirectory()函数
是 CMake 中的一个函数,用于向 CMake 工程中添加一个子目录。这个函数接受一个参数,即子目录的路径,它会在当前 CMakeLists.txt 文件中的对应位置包含子目录中的 CMakeLists.txt 文件,并执行其中的命令。这样可以将工程分解为多个模块,各模块的 CMakeLists.txt 文件可以单独管理,提高了工程的可维护性。原创 2023-02-28 16:55:33 · 2362 阅读 · 0 评论 -
CMake PROJECT_SOURCE_DIR变量(使用project()命令指定项目名称时,CMakeLists.txt所在路径)PROJECT_BINARY_DIR变量,根目录下build目录
的默认值为项目根目录的路径(CMakeLists.txt所在的路径)。如果你使用的是子目录。是CMake内置变量之一,它代表当前项目根目录的路径。命令指定项目名称时,CMake会自动设置。将会是子目录的路径。原创 2023-02-28 16:38:18 · 9548 阅读 · 0 评论 -
gcc编译选项-Wextra(启用额外的警告信息,提高代码质量和安全性)
是 GCC 和 Clang 编译器的警告选项之一,用于启用额外的警告信息,提高代码质量和安全性。原创 2023-02-28 16:21:23 · 3219 阅读 · 0 评论 -
gcc编译选项pedantic(GCC编译器的C++标准严格模式)
是 GCC 编译器的一个编译选项。这个选项会让编译器严格遵守 C++ 标准,并输出标准要求的诊断信息,对于一些可能不符合 C++ 标准的语法或者行为会给出警告或者错误提示。这个选项被用来开启 GCC 编译器的 C++ 标准严格模式,如果编译器支持。变量就会添加这个选项,从而让编译器在编译时更加严格地遵守 C++ 标准。在这个 CMake 文件中,原创 2023-02-28 15:03:57 · 654 阅读 · 0 评论 -
gcc编译器选项-Wl,--no-undefined(告诉链接器在链接过程中不允许有未定义的符号)(gcc编译器和链接器是分离的工具,它们需要通过选项来进行通信)
的一个选项,它告诉链接器不要允许有未定义的符号。这个选项是链接器提供的,因为链接器才是最终将目标文件合并成可执行文件或动态链接库的工具。选项是一种编译器的防御性编程技术,可以在编译时检测到潜在的问题,避免程序在运行时出现崩溃等错误。如果有未定义的符号,链接器将无法解析它们,因此会抛出“未定义符号”的错误。是gcc编译器的一个选项,它告诉编译器将后面的参数传递给链接器。是一个gcc编译器的选项,它告诉链接器在链接过程中不允许有未定义的符号。在链接一个程序时,链接器会将所有的目标文件(是用来分隔两个选项的。原创 2023-02-28 14:52:01 · 1195 阅读 · 0 评论 -
CMake CheckCXXCompilerFlag用法(CMake set()函数、CMake set函数)(-std=gnu++14`编译选项)
CheckCXXCompilerFlag 是 CMake 内置的一个函数,用于检查编译器是否支持指定的编译选项。它会尝试编译一个简单的测试程序,并将编译结果存储在一个变量中,供后续的条件判断使用。这样做可以保留原有的编译选项,并在其基础上添加新的选项。是要设置的变量名,它是 CMake 预定义的变量,表示 C++ 编译器的编译选项。变量原来的值可能包含一些其他的编译选项,所以在添加新选项时需要使用。是 CMake 的变量替换语法,用于获取一个变量的值。是变量的旧值,也就是当前编译器的编译选项。原创 2023-02-28 14:25:26 · 1026 阅读 · 0 评论 -
CmakeLists.txt单行注释和多行注释(#[[ ]])(cmake批量注释、cmake多行注释)
单行注释:使用#多行注释:使用#[[ ]]以下图为例:(多行注释)转载 2023-01-14 21:21:44 · 1583 阅读 · 0 评论 -
gcc静态库互相依赖问题(cmake静态库链接顺序)(-Wl,--start-group、-Wl,--end-group)
我的A.lib依赖B.lib,B.lib依赖A.lib,我在CMakeLists里加上的链接顺序都失效了。编译时说unreferenced。提供了一个办法,即给不想弄顺序的静态库们,弄一个start、end包在一起,然后cmake会自动解决里面的顺序问题。貌似通过改变顺序可以解决,但是静态库较多,依赖情况较多,要写对顺序不容易,我按照它介绍的,把CMakeLists改成这样就好了。重复写链接库解决,我试试。原创 2022-12-12 14:09:00 · 1967 阅读 · 0 评论 -
巨坑,cmake make相同的代码居然产生不同的编译结果!见鬼了,ngrest
编译ngrest的时候,明明两份相同代码,却产生不同编译结果。实在是不明觉厉,难道是编码问题?原创 2022-11-09 19:47:56 · 463 阅读 · 0 评论 -
ubuntu16.04升级cmake
照着上面这篇弄没啥问题。原创 2022-11-09 16:27:40 · 360 阅读 · 0 评论 -
vs cmake opencv 远程 ubuntu 开发时:vs代码出现紫色波浪线且报错怎么办?
解决办法:先将cmake设置里的IntelliSense模式改成linux-gcc-x64然后ctrl+s发现可能还是呈紫色且报错接下来切换一下这里,在这两个之间切换,然后紫色波浪线和报错即可消除(再不行就重新生成一遍代码)参考文章:VS远程调试(Visual Studio)远程连接到linux cmake(跨平台开发)(适用于VS2019,且远程目标平台cmake版本大于等于3.8)...原创 2022-02-23 00:58:09 · 2826 阅读 · 0 评论 -
VS cmake 远程开发 opencv报错:CMake was unable to find a build program corresponding to “Ninja“.(换个构建方式)
1> /usr/bin/cmake -G "Ninja" -DCMAKE_BUILD_TYPE:STRING="Debug" -DCMAKE_INSTALL_PREFIX:PATH="$HOME/.vs/vs_opencv_cmake_remote_test/5fadcd68-7b57-47e8-ae56-74e16e9eeead/out/install/Arnold_Opencv_Linux-GCC-Debug" "/home/arnold/.vs/vs_opencv_cmake_remote原创 2022-02-23 00:27:59 · 2415 阅读 · 0 评论 -
VS cmake远程调试ubuntu项目生成报错:“Does not match the generator used previously: Ninja“(删除.vs隐藏文件夹)
我把这个目录换一下就好了一些高级选项不过还是有点懵逼,其他的目录仍是默认的.vs为什么没见生成这个目录?1> 正在将文件复制到远程计算机。1> 开始将文件复制到远程计算机。1> 正在将“C:\Users\Arnold\Desktop\opencv_test\opencv_test2_cmake\CMakeSettings.json”复制到“/home/arnold/.vs/opencv_test2_cmake/ab6dd273-e221-4fb9-a6f7-338a3b22原创 2022-02-09 21:19:55 · 4615 阅读 · 0 评论 -
ubuntu makefile交叉编译报错:file not recognized: file format not recognized
解决方法:make clean一下或者手动将之前编译生成的文件删除参考文章:linux编译出现问题:file not recognized: File format not recognized原创 2021-12-20 14:03:27 · 5117 阅读 · 0 评论 -
ubuntu cmake交叉编译时报错:没有那个文件或目录
原因,不能将这种注释像这样放在这中间要放到后面去!这样就能编译成功了。。原创 2021-12-17 16:46:08 · 2989 阅读 · 0 评论 -
cmake-变量作用域
参考文章:cmake-变量作用域转载 2021-10-13 10:58:08 · 203 阅读 · 0 评论 -
Cmake教程笔记
被引用:文章目录CMake的使用语法特性CMake重要指令cmake_minimum_required(指定CMake最小版本)project(定义工程名称)set(定义变量)include_directories(头文件搜索路径)link_directories(库搜索路径)add_library(生成库文件)add_compile_options(添加编译参数)add_executable(生成可执行文件)target_link_libraries(为target添加需要链接的库文件)add_subd原创 2021-10-12 13:41:46 · 402 阅读 · 0 评论 -
linux下cmake-gui的安装
安装:sudo apt-get install cmake-gui运行:sudo cmake-gui原创 2021-09-13 16:06:04 · 3173 阅读 · 0 评论 -
cmake教程(为什么要用cmake?)(cmake编译opencv)(就是个跨平台的编译工具Linux、windows)(很重要,必须得学)(报错解决方案)opencv编译
CMake:简介及工程应用,及为什么要用CMake,使用CMake自动构建工程make一下,回头更原创 2021-08-30 00:32:11 · 736 阅读 · 0 评论