我的debian 的ld 是2.17版本的,我想升到2.18请问怎么做 发散问题: 1.ld 属于哪能个工具包? 2.是不是apt-get install ??? 某个包就行了. 3. 如果用synaptic package manager 是安哪能个包. 谢谢.
by lee51525125 - Linux系统管理 - 2009-07-30 18:21:31 阅读(1673) 回复(1)
最近试图使用ld_PRELOAD的方法劫持系统调用。按照http://chenm.blogbus.com/logs/52077181.html,成功的替换了read这个系统调用。但是问题出现了,如果我的程序中直接使用read,它会被替换为我自己实现的read,但是,如果我调用动态库libc的fread函数(fread最后也是调用的read),我发现我自己实现的read并没有被使用。 我很奇怪为什么会这样。于是我自己写了一个函数myRead,myRead调用系统调用read进行文件读写,然后我把这个函...
小弟在做嵌入式的实验 用的是天嵌的tq2440 例子程序是 韦东山的《嵌入式linux开发完全手册》上的 第7章 mmu的。 这个是它的makefile objs := head.o init.o leds.o mmu.bin : $(objs) arm-linux-ld -Tmmu.lds -o mmu_elf $^ arm-linux-objcopy -O binary -S mmu_elf $@ arm-linux-objdump -D -m arm mmu_elf > mmu.dis %.o:%.c arm-linux-gcc -Wall -O2 -c -o $@ $< %.o:%.S arm-linux-gcc -Wall -O2 -c -o $@ $< cle...
ld,即GNU的连接工具,用于将各目标文件合并在一起,并重新安排他们的数据以及符号的引用,常常是程序编译的最后一步。 ld scripts 即ld脚本。ld 脚本的主要目的是要描述怎样将输入文件的各段印象到输出文件中去。它控制输出文件在内存的布局情况。 -------------------------------------------------------------------------------- 关于VMA ,LMA 每一个可装载的输出段都有两个地址:VMA(Virtual memory address) 和 LMA(Load m...
一. 直接指定代码段,数据段,BSS段的起始地址 -Ttest startaddr -Tdata startaddr -Tbss startaddr 示例: Arm-linux-ld –Ttext 0x0000000 –g led_on.o –o led_on_elf 二. 使用连接脚本设置地址: Arm-linux-ld –Ttimer.lds –o timer_elf $^ 完整的连接脚本格式: SECTIONS{ … Secname start ALING(aling) (NOLOAD):AT(ldaddr) {contents} > region:phdr=fill ….. } 本文来自ChinaUnix博客,如果查看原文请...
在linux下进行如下操作 ld test.o /lib/tls/libc.so.6 -o test.bin 执行该可执行程序 ./test.bin 产生如下输出:/usr/lib/libc.so.1: bad ELF interpreter: 没有那个文件或目录 这是什么原因,请指教。
linux 运行的时候,是如何管理共享库(*.so)的?在 linux 下面,共享库的寻找和加载是由 /lib/ld.so 实现的。 ld.so 在标准路经(/lib, /usr/lib) 中寻找应用程序用到的共享库。 但是,如果需要用到的共享库在非标准路经,ld.so 怎么找到它呢? 目前,linux 通用的做法是将非标准路经加入 /etc/ld.so.conf,然后运行 ldconfig 生成 /etc/ld.so.cache。 ld.so 加载共享库的时候,会从 ld.so.cache 查找。 传统上,linux 的先辈 Unix 还...
linux 运行的时候,是如何管理共享库(*.so)的?在 linux 下面,共享库的寻找和加载是由 /lib/ld.so 实现的。 ld.so 在标准路经(/lib, /usr/lib) 中寻找应用程序用到的共享库。 但是,如果需要用到的共享库在非标准路经,ld.so 怎么找到它呢? 目前,linux 通用的做法是将非标准路经加入 /etc/ld.so.conf,然后运行 ldconfig 生成 /etc/ld.so.cache。 ld.so 加载共享库的时候,会从 ld.so.cache 查找。 传 统上, linux 的先辈...