随笔分类 -  编译相关

摘要:在交叉编译中,通常有两种方法: Explicit sysroot(完全隔离): 你用 debootstrap 或 QEMU chroot 做一个干净 aarch64 文件系统 target Python dev 包安装在 /usr/include /usr/lib 下,这些路径在 sysroot 里 阅读全文
posted @ 2026-01-03 15:54 墨尔基阿德斯 阅读(4) 评论(0) 推荐(0)
摘要:export PATH=$PATH:/opt/toolchains/aarch64--glibc--stable-2020.08-1/bin export TARGET_ARCH=aarch64 export TARGET_TRIPLE=aarch64-linux export CROSS_COMP 阅读全文
posted @ 2025-02-12 14:12 墨尔基阿德斯 阅读(154) 评论(0) 推荐(0)
摘要:交叉编译器的命名规则是什么? 交叉编译器(cross-compiler)是用来编译可在与编译器运行环境不同的架构或操作系统上运行的代码的工具。交叉编译器的命名通常遵循一个约定,以便能够描述编译器的目标平台。这个命名规则主要包含以下几个组成部分,通常顺序为: 目标架构(Target Architect 阅读全文
posted @ 2024-10-14 20:50 墨尔基阿德斯 阅读(223) 评论(0) 推荐(1)
摘要:学C++从Cmake学起_--copy-dt-needed-entries-CSDN博客 阅读全文
posted @ 2024-09-08 17:11 墨尔基阿德斯 阅读(18) 评论(0) 推荐(0)
摘要:Makefile-只修改了.h头文件,编译为什么不起作用?-腾讯云开发者社区-腾讯云 (tencent.com) 不知道各位小伙伴是否碰到过这样的情况:一个 .c 文件 include 另一个 .h 头文件,使用 Makefile 来构建(编译)应用程序。第一次编译、执行,很正常!但是此时,如果修改 阅读全文
posted @ 2024-07-17 20:44 墨尔基阿德斯 阅读(282) 评论(0) 推荐(0)
摘要:最近看到一种比较新颖的写法 —— 结构体在头文件中声明, 源文件中定义 A.h typedef struct Context Context; A.cpp #include "stdafx.h" #include "A.h" struct Context { int param; char *str 阅读全文
posted @ 2023-11-16 16:03 墨尔基阿德斯 阅读(147) 评论(0) 推荐(0)
摘要:本文重点讲解GCC的基本概念和在嵌入式环境下的使用。 原文 1. GCC工具 GCC编译器: GCC(GNU Compiler Collection)是由 GNU 开发的编程语言编译器。 GCC最初代表“GNU C Compiler”,当时只支持C语言。 后来又扩展能够支持更多编程语言,包括 C++ 阅读全文
posted @ 2023-06-11 14:06 墨尔基阿德斯 阅读(687) 评论(0) 推荐(0)
摘要:https://zhuanlan.zhihu.com/p/469950256 阅读全文
posted @ 2023-03-09 15:52 墨尔基阿德斯 阅读(7) 评论(0) 推荐(0)
摘要:重新理解Linux交叉编译及编译流程-CSDN博客 阅读全文
posted @ 2023-03-09 13:57 墨尔基阿德斯 阅读(40) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/pengfei240/article/details/52912833 阅读全文
posted @ 2023-03-09 12:04 墨尔基阿德斯 阅读(15) 评论(0) 推荐(0)
摘要:https://zhuanlan.zhihu.com/p/357803433 目录 收起 编译器一般构成 GCC LLVM 编译器大神 Chris Lattner 横空出世 LLVM2.0 - Clang GCC 和 Clang 对比 GCC、LLVM 和 Clang 如何选择? 总结 - 再探 L 阅读全文
posted @ 2023-03-09 11:55 墨尔基阿德斯 阅读(771) 评论(0) 推荐(0)
摘要:转自:https://blog.csdn.net/zhaoyun_zzz/article/details/82466031#gcc%E9%93%BE%E6%8E%A5%E9%80%89%E9%A1%B9ldflags%E5%8F%82%E6%95%B0 GCC编译选项CFLAGS参数 GCC链接选项 阅读全文
posted @ 2023-02-21 09:36 墨尔基阿德斯 阅读(1133) 评论(0) 推荐(0)
摘要:。。 $ tar zxf readline-5.2.tar.gz $ cd readline-5.2/ $ ./configure --host=arm-linux --prefix=$(pwd)/_install $ make $ make install 中 ./configure --host 阅读全文
posted @ 2023-02-12 11:14 墨尔基阿德斯 阅读(217) 评论(0) 推荐(0)
摘要:参数值与编译链相关 https://gaomf.cn/2016/06/15/GCC%E4%B8%AD-march%E3%80%81-mtune%E3%80%81-mcpu%E4%B8%89%E4%B8%AA%E5%8F%82%E6%95%B0%E7%9A%84%E8%AE%BE%E7%BD%AE/ 阅读全文
posted @ 2023-02-03 19:20 墨尔基阿德斯 阅读(530) 评论(0) 推荐(0)
摘要:前言: 今天遇到一个问题,在makefile中定义个宏,宏为一个字符串,希望将该字符串传递给代码。但是一直传递不过去,最后才找到原因,这里小结一下。 直接上代码,makefile 如下: 1 C_FLAGS := -DTEST_MACRO_HEHE="abcd1234" 2 3 test: test 阅读全文
posted @ 2022-12-03 14:13 墨尔基阿德斯 阅读(677) 评论(0) 推荐(1)
摘要:概述 — 跟我一起写Makefile 1.0 文档 (seisman.github.io) Makefile中的include命令详解 - colabean - 博客园 (cnblogs.com) 阅读全文
posted @ 2022-12-02 10:04 墨尔基阿德斯 阅读(38) 评论(0) 推荐(0)
摘要:我们通常把一些公用函数制作成函数库,供其它程序使用。 函数库分为静态库和动态库两种。 1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用 阅读全文
posted @ 2022-05-09 14:27 墨尔基阿德斯 阅读(126) 评论(0) 推荐(0)
摘要:什么是库 库是写好的,现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常。 本质上来说,库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)。 所谓静态、 阅读全文
posted @ 2022-05-09 14:25 墨尔基阿德斯 阅读(123) 评论(0) 推荐(0)
摘要:被忽略的过程 转载自:预处理、编译、汇编、链接、启动代码、相关command - 克拉默与矩阵 - 博客园 (cnblogs.com) 对于C这种编译性语言,我们平时编译时,不管是通过IDE图形界面,还是通过命令行,总感觉编译一下就完成了,然后就得到了针对某OS和某CPU的二进制可执行文件(机器指令 阅读全文
posted @ 2022-05-07 10:32 墨尔基阿德斯 阅读(142) 评论(0) 推荐(0)