问题标签 [binutils]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gcc - binutils: hex2asm
我从 android 的 logcat 得到堆栈转储,它显示了 pc 周围的代码,如下所示:
问题是:使用 gcc/binutils,我怎样才能将这些东西转换成 asm?
c - 有没有办法用 GNU binutils 取消隐藏隐藏的可见性符号?
我正在编写一个脚本,以使 uClibc 在现有的 glibc 目标 gcc/binutils 工具链上可用,我剩下的一个问题是pthread_cancel
需要dlopen
libgcc_s.so.1
. 主机 gcc 提供的版本链接到依赖于 glibc,所以我改为使用ld
's-u
选项来提取所需的符号(及其依赖项)libgcc_eh.a
以进行替换libgcc_s.so.1
:
原则上我会完成,但是其中的所有符号libgcc_eh.a
都将其可见性设置为隐藏,因此在输出.so
文件中,它们都变为本地并且不会添加到.dynsym
符号表中。
我正在寻找一种在文件或原始文件objcopy
上使用 binutils(也许?或链接器脚本?)的方法来取消隐藏这些符号。这可能吗?.so
.o
libgcc_eh.a
c - GNU ld 是否有完全省略 -dynamic-linker (PT_INTERP) 的选项?
我正在 Linux 上尝试纯静态链接的 PIE 可执行文件的概念,但遇到了 GNU binutils 链接器坚持在使用时将 PT_INTERP 标头添加到输出二进制文件的问题-pie
,即使也给出了-static
. 有没有办法抑制这种行为?也就是说,有没有办法专门告诉 GNU ld 不要将某些标头写入输出文件?也许使用链接器脚本?
(请不要回答声称它不起作用;我很清楚该程序仍然需要重定位处理 - 加载地址相对重定位只是因为我使用了-Bsymbolic
- 而且我有特殊的启动代码代替处理这个问题的标准Scrt1.o
。但是如果没有动态链接器已经启动并完成工作,我无法调用它,除非从二进制文件中对PT_INTERP
标头进行十六进制编辑。)
networking - 在网络层工作的工具
我最近一直在使用telnet
很多东西来测试许多不同类型的 tcp 连接(基本 TCP、标准 HTTP、通过 HTTP 的 Bayeux 等)作为了解事物如何工作的一种手段。
我想通过使用一种工具来学习网络层发生的事情,进一步了解 OSI 模型中的下一层是如何工作的。
就像 telnet 允许在 TCP 层发送消息以了解它上面的层发生了什么一样,我想使用一个允许我发送 IP 数据包消息的工具来查看 TCP 层做了什么。
有人对我可以使用什么工具有任何建议吗?
macos - Binutils stat 非法选项 -c
我在脚本中使用 stat 两次,一次是查找文件文件权限,一次是查找文件的大小。
我正在使用 OSX 10.7,目录和文件是我所在的当前目录和文件的变量。
gcc - 如何找到哪个版本的 gcc 对应哪个版本的 binutils?
就像问题听起来一样。
如果对于任何给定的版本对都没有通用的方法来回答这个问题,那么至少有人可以回答 gcc 3.4.6 和 ld 2.15.92.0.2 是否相互对应的具体问题吗?
谢谢。
我正在看问题:-
我得到的错误与这些问题的提问者完全相同。
linux - i386-pc-mingw32-objdump pe 反汇编中止
我正在尝试从 1C 光盘反汇编 Sid Meiers Railroads 1.1 原始二进制文件
如何处理这样的问题?您知道其他可以与 pe-i386 一起使用的反汇编程序(在 linux 上工作)吗?
linux - Arch Linux 没有 i586-elf-gcc 或 i586-elf-gcc
我最初尝试按照本教程创建一个 C 内核:http : //wiki.osdev.org/Bare_Bones 但是,我的系统没有 i586-elf-gcc 或 i586-elf-ld。我真的不确定在哪里可以找到这些,或者它们是否已经在我的计算机上。我用 pacman 安装了 gcc 和 binutils。
输出
如果必须,我不介意编译,但更喜欢二进制文件。
assembly - GNU 对带有全局标签的 jmp 来说很奇怪
我想了解 GNU 的以下行为。
OS X 上的以下测试程序(Apple cctools-822/GNU as 1.38)
被编码为
而 GNU as on Linux (GNU as 2.22) 编码为
为什么后者会(对我)奇怪的跳跃?
此外,显然这个魔术0xfcffffff
地址用于每次跳转到全局标签:
测试2.s
在 linux 上使用 GNU 生成(GNU 为 2.22)
谁能解释这种行为?
windows - 如何使用/安装 GNU binutils (objdump)
我需要在 Windows 上运行的应用程序中使用 objdump 和 readelf 命令。我知道我可以安装 cygwin 来使用它们。我不想使用 cygwin 的原因是因为我想让它随笔进行部署。另外,我不知道如何进行 cygwin 的静默安装。因此,我相信我需要的是GNU Utilities For Win32,因为链接指出这些库是无服务器的。“可执行文件仅依赖于 Microsoft C 运行时 (msvcrt.dll),而不依赖于 Cygwin 工具提供的模拟层”
无论如何,一旦我转到该链接,我不知道如何安装它。具体来说,我想使用>这个工具<
如果有人能指出我将如何在我的应用程序中使用 objdump 和 readelf(cygwin 中的 binutils)的正确方向,我将不胜感激。