Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
c - 将 .data 发送到不同的部分
我想把其中的符号 data为特定 C 文件生成的节并将它们放在不同的节中 例如 mydata 在最终的可执行文件中 例如 normaldata c char my str this should appear in data special
gcc
linkerscripts
将rodata 与创建它的函数一起保存
我试图使 rodata 部分位置与其关联的函数内存位置保持一致 我正在使用 GNU 编译器 链接器 裸机 plain jane c 和 STM32L4A6 微控制器 我有一个使用 STM32L4A6 控制器的定制板 其中 1Meg 闪存分为
c
sections
linkerscripts
flashmemory
链接描述文件未按预期跳过字节
因此 我有这个汇编文件 我使用 GNU as 进行汇编 并使用链接器脚本与 GNU ld 进行链接 链接描述文件 boot ld INPUT boot o OUTPUT boot out ENTRY boot start SECTIONS
Assembly
x86
ld
linkerscripts
objcopy
在运行时访问 build-id
我试图弄清楚如何访问链接器在运行时生成的构建 ID 从这个页面开始 https linux die net man 1 ld https linux die net man 1 ld 当我构建一个测试程序时 例如 gcc test c o
c
gcc
Linker
ELF
linkerscripts
数组和结构体可以以不同的方式初始化吗?
我的问题可能看起来很奇怪 事实上 这是上下文 我目前在切换时遇到一个奇怪的问题 关于我正在从事的项目 核心从pullinino到CV32 也发生了一些其他变化 例如关于crt0 如一些数据内存重置 这是一个 真实的 例子 说明了一个非常简单
c
Embedded
Storage
RISCV
linkerscripts
将 gcc libs .data 放在特定部分?
我正在尝试为我们的嵌入式系统切换到 GNU GCC 编译器 但由于我们芯片的内存布局被分割 我在链接该项目时遇到了问题 RAM section 1 0x10000 0x12FFF RAM section 2 0x18000 0x1BFFF
gcc
Embedded
GNU
ld
linkerscripts
默认 GNU 链接器脚本名称,以便 VIM 进行语法突出显示
链接描述文件的常用后缀是什么 以便 VIM 对其使用语法突出显示 好像是 ld 仅据我所知 Vim 没有提供它的语法文件 至少我的没有 7 3 尝试提供下载的内容here http vim 1045645 n5 nabble com Syn
Vim
linkerscripts
加载脚本以加载内存区域顶部的部分
我正在开发一个使用 ARM M0 的嵌入式系统项目 必须创建一个 ROM 应用程序 其唯一目的是在 ROM 中存储内容 并在需要时初始化 data 和 bss 部分 到目前为止的负载脚本是这样的 MEMORY rom rx ORIGIN 0
gcc
ld
linkerscripts
GCC 链接器脚本 - 将 .bss 部分分割到多个 RAM 区域
嵌入式设备有两个 SRAM 区域 首先位于 0x20000000 长度为 16k 然后在 0x20040000 处长度为 96k 在应用程序中 生成的 bss 部分大小为 102k 因此它不完全适合任一 RAM 区域 它需要在两个区域之间划
gcc
Linker
Embedded
ld
linkerscripts
链接描述文件中的 KEEP 是什么意思?
The LD手册 http ftp gnu org old gnu Manuals ld 2 9 1 html mono ld html SEC2没有解释什么KEEP命令执行 下面是第三方链接描述文件的一个片段 其特点是KEEP 什么是KE
Linker
ld
linkerscripts
与另一个启动文件链接
我正在尝试使用以下命令将程序与我自己的启动文件链接STARTUPLD 脚本中的指令 ENTRY start STARTUP my crt1 o GCC驱动程序用于链接程序 不关心像libgcc等库路径 gcc T my script ld
c
gcc
Linker
ld
linkerscripts
GCC LD NOLOAD 链接器部分生成可加载段
我正在开发 Arm 裸机应用程序 并且我用以下标记标记了一些部分NOLOAD 根据中的解释了解嵌入式软件中的链接描述文件 NOLOAD 部分 https stackoverflow com q 57181652 6271889 我期望生成的
c
gcc
ld
linkerscripts
链接器文件中输入和输出部分之间的区别?
虽然在生成的二进制或 ELF 文件的上下文中可以清楚什么是节 但文档中的许多地方 与所使用的编译器无关 将它们称为输入或输出节 它们之间有什么区别 链接器使用目标文件 以及可能的共享库 并输出 可执行文件或共享库 输入目标文件由命名的 部分
Linker
ld
ELF
linkerscripts
使用链接器脚本重命名符号
是否可以使用链接描述文件或映射文件来重命名符号 我正在尝试修改一些用 C 和 Fortran 混合编写的代码 以便它可以在 Linux 上与多个 Fortran 编译器一起工作 目前它是为 Solaris Studio 编译器编写的 并且启
Linker
ld
linkerscripts
链接器脚本 .relocate 部分的第一个符号 _srelocate 不正确(GCC Bug?)
Problem 我的问题是 当我使用以下脚本将代码放入 RAM 时 重定位部分会填充虚假数据 我的问题是 为什么是 srelocate符号比 4 个字节大 etext象征 它们不应该是一样的吗 另外 如果 1 的答案是否定的 我不应该复制
c
Linker
ld
linkerscripts
在 Mac OS X 上使用链接描述文件
有没有办法使用链接器脚本ld在 Mac OS X 上 The GNU ldLinux 上的程序接受 T
gcc
MacOS
Linker
linkerscripts