如何从Linux上的汇编代码调用c库?
|
我正在尝试在英特尔架构上的 Linux程序集中编译一个小程序.我想使用C库的一些功能,但它没有链接. 这是我的装配程序: .text
.globl main
main:
pushl $512
call malloc
addl $4,%esp
mov $1,%eax
mov $0,%ebx
int $0x80
我正在编译 as --32 -o output.o output.asm 一切顺利.然后当我联系时 ld -static -m elf_i386 -o a.out output.o -lc ,我收到了这些错误:
(我还有其他错误,但我认为这足以看出问题了) 我看到一些解决方案表明我应该与-lgcc链接,但在我的计算机上找不到库… 有人有想法吗? 解决方法glibc要求某些初始化代码与可执行文件静态链接.最简单的方法是使用gcc链接:gcc -static -o a.out output.o 通过将-v传递给gcc,您可以确切地看到链接的内容. (编辑:东莞站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- linux – 如果我启动后台进程然后注销,它会继续运行吗?
- 使用Postman工具/ cURL /在Chrome控制台中测试CORS
- linux内核 – remap_pfn_range如何将内核内存重新映射到用户
- linux – Emacs要读大文件14GB [已关闭]
- 在Redhat Enterprise Server上安装python-ldap时解决GCC错误
- linux – bash脚本在文本文件中查找模式并返回整行
- Linux:命令使文件夹可以递归地写入,而不影响其中的文件的权
- linux – 使用$(basename $(notdir $@))了解Makefile
- Zynq 7000上的嵌入式Linux,几乎丢弃了所有UDP数据包
- 如何在linux上显示最后修改时间
