编译链接时优化有关问题.
发布时间:2010-06-14 16:51:04 文章来源:www.iduyao.cn 采编人员:星星草
编译链接时优化问题求助....
环境为VxWorks,发现部分函数在map表里面找不到, 后来发现只要是c文件中的所有接口都没其他文件函数调用时,该文件生成的点O不会被链接。 makefile没问题,如果把该文件的函数在别的文件中调用一下,则整个文件中接口都会被链接.
麻烦热心的兄弟帮忙解释一下这问题的原因, 是不是由哪个编译选项和开关控制?
------解决方案--------------------
是这样的,有一个东西叫做 dead strip,
意思就是,在链接的时候,如果链接器发现 有 symbols 没有被使用,则linker负责把这部分内容 剔除掉,不会放在生成的输出文件中
可以从几方面去看看:
1. linker script 链接脚本中可以不可以,将你不想被删除的symbols 通过什么 命令定义一下,避免被删除
2. 通过编译连接选项,
3. 有没可能makefile中调用了 名为 strip(arch)的可执行程序,做了 dead strip 这个事情
第三点最有可能 ,我看了 VxWorks APPLICATION PROGRAMMER'S GUIDE 6.7
里边有提到
3.3.4 Reducing Executable File Size With the strip Facility
For production systems, it may be useful to strip executables. The striparch utility
can be used with the --strip-unneeded and --strip-debug (or -d) options for any
RTP executables.
The --strip-all (or -s) option should only be used with absolutely-linked
executables. For more information in this regard, see Stripping Absolutely-Linked
RTP Executables, p.36 and Caveat With Regard to Stripped Executables, p.54). For
information about absolutely-linked RTP executables and the overlapped virtual
memory model, see 2.5 About VxWorks RTP Virtual Memory Models, p.23 and
2.6 Using the Overlapped RTP Virtual Memory Model, p.26
------解决方案--------------------
最好还是用LD来做
可以全部连接进去,Makefile写好就行
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
Tilcon下的Table控件问题
VxWorks5.5+Tilcon5.4环境下~~
在程序中如何在Table的最后新增一行?
------解决方案-----------------...
-
关于vxworks的inflate/deflate
请问各位大侠,在vxworks中,针对不同架构的cpu的vxworks代码中,应该是采用相同的inflate/deflate解压...
-
tornado安装问题
请高手帮忙:
问下tornado的安装过程中,如果从开始菜单直接运行tornado,会提示错误,这是因为安装还没有完成,在C盘Torn...
-
vxworks系统启动很慢
小弟最近在做一个vxworks下的项目,目前系统基本上已经搭建起来了,但是系统从flash上启动的时候非常的慢,经查看...
-
请问一下,一个任务accept产生的socket描述符怎么在另一个task的send函数中用,把那个Socket ID作为全局可以吗???谢谢!
有两个任务,一个接...
-
taskspawn 分配一个任务时,参数中有优先级,堆栈大小,我要怎么来写啊?刚刚搞这个东西。
taskspawn 分配一个任务时,参数中有优先级,堆栈...
-
谁会裸机运行pentium的cpu
谁会裸机运行pentium的cpu,能不能简单讲讲?
就是将cpu引导到保护模式后,进入到一段用户代码,这段代码是个...
-
如何根据字符数组去执行相应的函数或者查找到变量(急!)
现在需要在没有操作系统的powerPC上完成这样一个类似串口的输入输出功能。注...
-
关于vxworks TFFS文件系统搭建时 format 死机问题
我修改了tffsconfig.c systffs.c config.h 等文件,已经显示了 type size但是...
-
vxworks解压缩
请问各位大侠,vxworks的解压缩源代码怎么看不到啊?它是采用的通用deflate/inflate算法吗?
在命令行中defl...