是'.set noat'不支持 MIPS 汇编?
目前,我正在学习GNU as,并在“info as”中找到了很多有用的信息。 我发现“.set noat”在MIPS指定的代码中使用,但是当在“info as”中搜索该指令时…
Macos 10.6.8 (Snow Leopard) 上的本机工具链问题
下面是问题的描述。 我将其全部标记为代码,以避免 StackOverflow 所做的隐式格式化。 处理类似 Wiki 的标记语言是相当烦人的 当我确切地知道自己想要…
gcc 如何查找 as、ld 和其他 binutils 可执行文件?
它们的位置是否硬编码到 gcc 代码中,还是 gcc 只是调用 as 而我们的 PATH 变量中必须有 as 位置? 在后一种情况下,我们如何创建两个完全独立的 gcc …
如何从可执行文件中删除链接库
全部。 有人创建了一个可执行文件。 # ldd test_bin libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x4082d000) libA.so.0 => /usr/lib/libA.so.0 (0x4…
gdb:它如何知道变量类型和大小?
我试图弄清楚这一点,因为我试图用自制脚本做同样的事情(希望): 示例 C 代码: typedef struct _B { A aa; double b; char c[LEN]; int d; char *a…
如何用IPC::Open2过滤大量数据?
我的任务是使用外部实用程序(addr2line)从 perl 脚本中过滤一些数据。数据量相当大。我需要将大量数据打印到程序的 stdin 并读回大量数据(从程序的…
objdump 和 ARM 与 Thumb
我正在尝试使用 gcc 反汇编为 ARM 构建的对象。不幸的是,objdump 试图猜测代码是否是 ARM 和 Thumb,但结果是错误的:它认为我的代码是 Thumb,而实…
将节注入 GNU ld 脚本; binutils 版本之间的脚本兼容性。
我正在构建类似问题 如何将不同 .a 文件中的数据收集到一个数组中?如何使用 ld 脚本保留 .a 文件中的部分?,即在链接期间由来自不同目标文件的元素…
binutils make 交叉编译出错
我正在尝试编译 binutils 以设置 GNU 工具链,以便在 Linux x86 架构上为 ARM 进行交叉编译。 为此,我从以下位置下载了 GNU 工具链: http://lejosrt…
为什么 -r 选项(可重定位)使 ld 找不到任何库?
使用 GNU ld 2.21 运行 Debian/Linux x86_64。 很简单,如果我链接 ld -o main main.o /usr/lib/crti.o /usr/lib/crt1.o /usr/lib/crtn.o -lc -lm It …
构建交叉编译 64 位 GCC 失败
我正在尝试创建一个运行在我的本地计算机上的 gcc 交叉编译器 [Darwin new-host-2.home 10.7.4 Darwin Kernel Version 10.7.4: Mon Apr 18 21:24:17 P…
将 -pie 标志传递给 gcc 时堆栈溢出
我正在尝试将 fedora 移植到 mips cpu,一些软件包如“sudo”“krb5”,以下是通过配置自动添加“-fpie”“-pie”标志生成的“sudo”的 Makefile。 SU…
GNU 链接器中 -l 和 -L 选项的顺序重要吗?
-l 选项告诉链接器在标准目录中搜索库。 并且通过-L,我们可以指定自己的库目录进行搜索。 问题:顺序对于 -L 选项是否也很重要,就像对于链接器的 -l…
将附加代码合并到可执行文件中 (arm-linux)
我正在尝试将一些额外的日志记录代码合并到静态链接(android arm linux)可执行文件中。 (普通的跟踪方法似乎不起作用,因为它是一个守护进程,在做…