当前位置: 首页 > news >正文

关于C/C++的编译、构建、CMake、x86_amd64等问题(自用)

被这些玩意整红温了

编译器版本

  • x86:编译器为x86版本,输出文件为x86。
  • amd64_x86:编译器为amd64版本,输出文件为x86。
  • amd64:编译器为amd64版本,输出文件为amd64。
  • x86_amd64:编译器为x86版本,输出文件为amd64、

所以,为什么没有x64呢?

什么是CMake

MakeFile生成工具

什么是MakeFile

自动化构建

在多文件程序编写完成后,我们需要“手动编译每一个文件,并为它们链接依赖库”(构建)。

而makefile帮助我们把这一过程自动化,只要编写一次makefile规则,后续编译链接只要一个命令即可搞定。

什么是构建项目

编译大家都很清楚,把源代码转换为机器码。构建过程包含编译过程,此外,构建还包括链接过程。当然,还包括其它乱七八糟的操作

CMake命令

include_directories(...)  包含库的头文件

link_libraries(...)  将这些库文件lib,链接到稍后产生的可执行文件中

add_executable(myProj  main.cpp)  将源文件编译为名为myProj的可执行文件

target_include_directories(...)  为指定exe,包含库的头文件

target_link_libraries(target   ...)  将这些库文件lib,链接到指定的可执行文件中

aux_source_directory( ./   vars) 查找指定目录下的所有源文件,并赋值给变量vars

add_library(name  [库类型]  src1 src2 ...) 使用指定的源文件编译生成一个目标库

add_subdirectory(path    output)  编译子文件夹,并将生成的库文件放入output文件夹下

find_package() 查找指定库文件

C++怎么使用第三方库

两步:1.包含 头文件.h 所在文件夹   2. 指明 库文件.lib 所在位置

一般都用VS开发,网上教程很多,怎么“包含”和“指明”

其它

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 浅谈Trie树算法
  • 开启休假模式
  • WebSocket 协议与 HTTP 协议、定时轮询技术、长轮询技术
  • Linux 安装 Redis 6.2.14
  • vulhub靶场之wordpress关卡(保姆级教程)
  • 大数据Flink(一百零七):阿里云Flink的应用场景
  • npm ERR! missing script: serve
  • 基于MPC在线优化的有效集法位置控制器simulink建模与仿真
  • 免杀笔记 ---> 函数踩踏 PEB寻址
  • 获取UTC时间计算时间
  • POE服务机器人-快速开始
  • <Rust>使用rust实现crc16_modbus校验码生成?
  • 使用Cython调用CUDA Kernel函数
  • 【Rust光年纪】探索Rust语言中的WebSocket库和框架:优劣一览
  • 探索Python为何成爬虫开发首选
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • If…else
  • iOS动画编程-View动画[ 1 ] 基础View动画
  • js学习笔记
  • JS学习笔记——闭包
  • Linux中的硬链接与软链接
  • mac修复ab及siege安装
  • magento 货币换算
  • Mocha测试初探
  • mysql外键的使用
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • 构建工具 - 收藏集 - 掘金
  • 浏览器缓存机制分析
  • 如何用vue打造一个移动端音乐播放器
  • 小程序button引导用户授权
  • 新手搭建网站的主要流程
  • 字符串匹配基础上
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • 如何正确理解,内页权重高于首页?
  • ​​​​​​​​​​​​​​Γ函数
  • ​必胜客礼品卡回收多少钱,回收平台哪家好
  • ​用户画像从0到100的构建思路
  • # 透过事物看本质的能力怎么培养?
  • #DBA杂记1
  • #Lua:Lua调用C++生成的DLL库
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (1)bark-ml
  • (2)空速传感器
  • (2024,LoRA,全量微调,低秩,强正则化,缓解遗忘,多样性)LoRA 学习更少,遗忘更少
  • (7)摄像机和云台
  • (C++哈希表01)
  • (编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (三)c52学习之旅-点亮LED灯
  • (十六)视图变换 正交投影 透视投影
  • (四)TensorRT | 基于 GPU 端的 Python 推理
  • (算法)硬币问题
  • (转)linux 命令大全
  • (转)大道至简,职场上做人做事做管理