挖井

类库大魔王的挖井日记

挖一口属于自己的井


MinGW升级

  前些天鬼使神差地换上了MinGW官方的4.4.0Release,当时也没怎么想什么后果,只是觉得这4.4.0无论是在语言上或者库上,都向C++0x靠近了不少,就应该拿来用用。昨天兴起,启动了CruiseControl,却发现其中一个用到了wxWidgets的工程构建不通过,依次修改,修改好几次,才终于搞定。
  换编译器是件大事啊,boost要重新编译,wxWidgets要重要编译,这些都是比较正规的使用了C++的库,最近一次出错,是发现我的工程在链接时找不到一些符号,而其中一大批符号的名称中都有sjlj字样,想来是异常处理机制的问题了。上官网看了一下release notes,原来它把默认的异常处理机制从sjlj换成dwarf-2了,而我原来用的TDM-GCC是默认用sjlj的,所以只要全部重新编译工程就可以了。传说中,这个dwarf-2在没有异常时,是0开销的,不过TDM-GCC的网站上说,用dwarf-2前,要先仔细确认一下,该工程会链接到的那些DLL中如果要抛出异常,是用什么机制的,除非能保证它们也都用dwarf-2的方式或者干脆不抛异常,不然还是老实点用sjlj方式的好。不过我想,我在这方面的顾虑很小吧。

本文地址:

https://minidump.info/blog/2009/07/mingw-e5-8d-87-e7-ba-a7/

感觉本文不错,不妨小额鼓励我一下!
上一篇

看到Chrome的可执行代码差分算法

  无意中在一个讨论组中看到Chrome的新differential算法Courgette(http://dev.chromium.org/developers/design-documents/software-updates-courgette)的讨论,其中提到一个Develper Cha...…

Software 全文阅读
下一篇

《Windows高级调试》

  书在桌上摊开好几天了,不过一直没有投入进去用心读。今天似乎也有点闲了,于是认真地看了一会儿。这本书在去年《软件调试》上市做宣传的时候就已经听说了,还花了点时间去网上找过英文的电子版本,尽管后来发现公司网上很早前就有人发过了。找来英文电子版也就纯粹是满足一下心里那种奇怪的怪癖吧,而从来没有开...…

Reading 全文阅读