September 2011 Archives

关于高版本的libtool v2.4的问题

| No Comments
因为生成so的问题,发现libtool v2.4生成代码时:
libtool --debug --tag=CXX --mode=link g++ -fPIC -g -O2 -g -Wall -D_DEBUG -shared -fpic -o libsotest.so libsotest_so-testso.o -lpthread -ldl -lcppunit
结果为:
g++ -fPIC -g -O2 -g -Wall -D_DEBUG -fpic -o libsotest.so libsotest_so-testso.o  -lpthread -ldl -lcppunit
而期望的结果应该是:
g++ -fPIC -g -O2 -g -Wall -D_DEBUG -shared -fpic -o libsotest.so libsotest_so-testso.o  -lpthread -ldl -lcppunit
低版本的libtool v1.5.22则没有这个问题,于是查找原因,经过分析,发现新版本的libtool对-shared选项有二处地方的变动,一处为func_mode_compile函数,主要是针对-shared的优化,
 2429     -shared | -static | -prefer-pic | -prefer-non-pic)
 2430       later+=" $arg"
 2431       continue
 2432       ;;
另外,在函数func_mode_link中
 6171       -shared)
 6172     # The effects of -shared are defined in a previous loop.
 6173     continue
 6174     ;;
如果得到上面的期望结果,则注释这条语句即可。

详细的问题描述见:http://my.huhoo.net/archives/2011/08/libtool.html

    Fedora16工程团队决定不使用btrfs系统作为默认的文件系统了,因为时间不充足,无法达到改变默认文件系统所要满足的基本要求。
    记得在Fedora15发布的时候,宣布fedora16将采用btrfs作为默认的文件系统,当时很好奇的试了一下,拿自己的移动硬盘格式化分区为btrfs分区,但是效果很不理想,存在很多不完善的地方,后来还是换上了reiserfs和ext4。
    brefs的主要特性是copy-on-write,如果想要知道什么是copy-on-write,可以参考COW,目标是取代Linux目前的ext3/4文件系统,改善ext3的限制,特别是单一文件的大小,总文件系统大小及加入文件校验和。加入目前ext3/4未支援的功能,例如可写的磁盘快照(snapshots)、支持递归的快照(snapshots of snapshots)、内建磁盘阵列(RAID)支援、支持子卷(Subvolumes)的概念、支持在线调整文件系统大小等。

Archives

Recent Comments

  • rao.chenlin: const-c.inc和const-xs.inc这两个的写法能不能详细说说啊。perlxs的中文资料不好找~~多谢多谢 read more
  • rao.chenlin: 我是openSUSE12.1的i686,QQ群获取的群友昵称(包括自己)是乱码~其他一切OK read more
  • cnangel: 已经证明在fedora、ubuntu的i686以及x86_64平台都可以使用。 read more
  • fdcwqmst: 总算找到一点靠谱的博文了 read more
  • Cnangel: 所以说嘛,无奈~ read more
  • 贝贝: 提示你了他们怎么赚钱阿?就是要让你在不知不觉中就花了好多钱 read more
  • Cnangel: please say chinese read more
  • david: hello , i need you help , but i dont read more
  • Cnangel: 问题出错在: /root/phpdev/php-5.3.3/ext/php5cpp/php5cpp.cpp:65: error: invalid conversion from ‘const zend_function_entry*’ to ‘_zend_function_entry*’ read more
  • craboy1: 我make出现了下边的错误: g++ -I. -I/root/phpdev/php-5.3.3/ext/php5cpp -DPHP_ATOM_INC -I/root/phpdev/php-5.3.3/ext/php5cpp/include -I/root/phpdev/php-5.3.3/ext/php5cpp/main -I/root/phpdev/php-5.3.3/ext/php5cpp -I/usr/include/php5 -I/usr/include/php5/main read more

Pages

Powered by Movable Type 5.2.2

December 2012

Sun Mon Tue Wed Thu Fri Sat
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
Creative Commons License
This blog is licensed under a Creative Commons License.

About this Archive

This page is an archive of entries from September 2011 listed from newest to oldest.

August 2011 is the previous archive.

October 2011 is the next archive.

Find recent content on the main index or look in the archives to find all content.