cmake

十五年专注C++开发4 天前
c++·windows·cmake·控制台隐藏
CMake实践:VS2019控制台程序隐藏控制台方法目录1.代码运行时动态隐藏2.编译层面彻底移除控制台2.1.MSVC (VS 编译器)2.2.MinGW (g++ 编译器)
阳区欠6 天前
软件构建·cmake
CMake目录1. CMake概念1.1 工作流程2. 构建一个Hello CMake项目2.1 命令解析3. 项目指令总结
草莓熊Lotso9 天前
linux·c语言·数据库·c++·软件工程·cmake
【CMake】静态库的编译、链接与引用全解析🎬 博主简介:在 C/C++ 项目开发中,代码复用是提升开发效率的核心手段。当项目规模逐渐扩大,我们往往会将独立的功能模块(如网络通信、数据处理、算法实现)封装成库文件,供多个模块或项目共享使用。传统的手写 Makefile 方式管理静态库不仅语法复杂、跨平台性差,而且在处理依赖传递时极易出错。CMake 作为 C/C++ 领域事实上的构建标准,通过基于目标的属性传递机制,完美解决了静态库的构建、链接与引用问题。本文将从静态库的基础原理出发,结合完整的实战项目,深入解析 CMake 中静态库管理的核心逻
郝学胜-神的一滴9 天前
linux·服务器·开发语言·c++·软件构建·cmake
CMake 012:Linux 下动态库与可执行程序的单文件构建CMake 012:Linux 下动态库与可执行程序的单文件构建在 C/C++ 工程化开发里,库的编译与链接是绕不开的核心环节,而静态库与动态库的差异,更是很多开发者从 “能跑通” 到 “做得稳” 的必经之路。今天就用最清晰的思路,带你用 CMake 把动态库编译、链接、运行时查找一次性讲透,全程一个 CMakeLists.txt 搞定,Linux 环境直接复用~
皮皮木子10 天前
编译·强化学习·cmake·蒸馏
rl_locomotion 编译过程三项目名称为 _raisim_gym_torch,使用 C++14 标准。所有编译产物(.so、.a、可执行文件)统一输出到 raisimGymTorch/env/bin/。
郝学胜_神的一滴10 天前
c++·cmake
CMake 012:Linux 下动态库与可执行程序的单文件构建CMake 012:Linux 下动态库与可执行程序的单文件构建在 C/C++ 工程化开发里,库的编译与链接是绕不开的核心环节,而静态库与动态库的差异,更是很多开发者从 “能跑通” 到 “做得稳” 的必经之路。今天就用最清晰的思路,带你用 CMake 把动态库编译、链接、运行时查找一次性讲透,全程一个 CMakeLists.txt 搞定,Linux 环境直接复用~
皮皮木子10 天前
编译·cmake
rl_locomotion 编译过程四生成.os的具体方法和过程生成 .so 文件的核心语句是 第 54 行:这一行在 FOREACH(subdir ${SUBDIRS}) 循环中(第 53 行),会被执行两次:
dozenyaoyida12 天前
经验分享·c·cmake·嵌入式开发·isatty·没有定义问题
RISC-V嵌入式开发:彻底解决“undefined reference to isatty“错误全攻略在Linux环境下,编译原厂的SDK过程中,出现了如下的报错,显示isatty没有定义。编译时遇到这个致命错误?
shanql13 天前
cmake
CMake笔记:Linux下常规使用ccmake -B ./build_dir -S ./src_dircmake --build ./build_dir
zh_xuan14 天前
android·cmake·jni·ndk·动态注册·内存页大小
Android JNI 动态注册:获取系统内存页大小之前是用静态注册方式,通过 javac -h 生成头文件,函数名必须严格遵循 Java_包名_类名_方法名 的命名规则,这种方式如果 Java 类重命名或包路径调整,所有 native 函数名都要同步修改。再试下动态注册,它通过 JNI_OnLoad 和 RegisterNatives 手动绑定 Java 方法与 C++ 函数,解耦命名约束,是大型项目和生产级 SDK 的首选方案。
雪靡15 天前
c++·ide·cmake·visual studio
Visual Studio 2026 优雅的给Cmake设置大代理众所周知,国内是无法直接访问Github,需要设置代理。在项目根目录下,创建CMakeUserPresets.json,为Cmake设置的用户预设。
郝学胜-神的一滴16 天前
开发语言·c++·嵌入式硬件·qt·程序人生·cmake·liunx
CMake 011:跨平台动态库编译CMake 011:跨平台动态库编译在跨平台 C/C++ 开发中,动态库编译堪称最经典的 “细节地狱”—— 同样一套代码,Linux 跑通、macOS 正常,一到 Windows 就报链接错误、缺 .lib、符号找不到;加了导出宏,Linux 又报错不认识语法;好不容易兼容,静态库又出幺蛾子……
郝学胜-神的一滴23 天前
开发语言·c++·qt·程序人生·系统架构·cmake
CMake 010 :一步到位链接静态库CMake 010 :一步到位链接静态库在跨平台 C++ 开发中,静态库编译 + 外部项目链接是高频且容易踩坑的环节。头文件找不到、符号未定义、链接失败…… 这些问题看似琐碎,却直接决定编译能否跑通。
草莓熊Lotso24 天前
linux·运维·服务器·网络·c++·cmake
【CMake】 工程实战:可执行文件从编译、链接到安装全流程深度拆解🎬 博主简介:C/C++ 开发中,工程构建一直是新手入门的第一道坎:Linux 下手写 Makefile 语法晦涩、跨平台适配成本极高,Windows 下 Visual Studio 的工程配置无法直接迁移到 Linux/macOS,不同 IDE 的构建体系各自为战,导致项目跨环境编译处处碰壁。而 CMake 作为 C/C++ 领域事实上的工程构建标准,凭借一处配置、到处构建的核心优势,完美解决了跨平台构建的痛点,也是所有商业级 C/C++ 项目的首选构建工具。本文将从零拆解可执行文件从编译、链接到系统
明月_清风1 个月前
后端·cmake
Makefile 完全指南:从入门到 CMake 工程化实践本文将深入讲解 Makefile 的核心概念、语法规则,以及 Make 和 CMake 工具链的实战用法,帮助你掌握 Linux/Unix 下的项目构建艺术。
yuanyuan2o21 个月前
c语言·开发语言·arm开发·c++·makefile·make·cmake
从最小项目开始的 CMake 教程你可能需要的 Make/Makefille/CMake 知识在 C 语言中,gcc 是最底层的编译器,它真正负责把源代码编译、链接成可执行文件;make 是底层的执行工具,它并不理解代码,只是按照规则调用 gcc;Makefile 则是这些规则的具体形式,明确写出了哪些文件依赖哪些文件、在什么情况下调用 gcc 执行哪些命令;而 CMake 站在更高一层,用来描述工程的整体结构,并根据这些结构描述自动生成 Makefile 等构建文件。
瞎折腾啥啊1 个月前
linux·c++·cmake·cmakelists
VCPKG详细使用教程这是一份 vcpkg 的详细使用教程,内容涵盖从安装、核心命令到与 CMake 和 Visual Studio 集成的完整流程,重点推荐使用清单模式 (Manifest Mode) 进行项目开发。
郝学胜-神的一滴1 个月前
linux·c++·程序人生·unix·cmake
跨平台动态库与头文件:从原理到命名的深度解析跨平台动态库与头文件:从原理到命名的深度解析在程序构建与跨平台开发中,动态库是绕不开的核心基石,它不仅关乎编译、链接与运行的全流程,更在不同操作系统中呈现出独有的规则与特性。从 Windows 到 Linux、macOS,从文件命名到内存加载,从动态库与静态库的差异到头文件的真正价值,每一处细节都决定着程序的健壮性与兼容性。
吃鱼鱼鱼1 个月前
cmake
CMakeListsc常用路径详解含义:最顶层 CMakeLists.txt 所在的目录特点:整个构建过程中永远不会改变指向:运行 cmake 命令时指定的源代码目录
瞎折腾啥啊1 个月前
linux·c++·cmake·cmakelists
vcpkg与CMakevcpkg 和 CMake 的关系是:CMake 负责构建项目,vcpkg 负责管理依赖库,两者通过 vcpkg 提供的 CMake 工具链文件无缝集成。