项目一直使用Sun Studio 11作为开发环境,在此之前一切都顺风顺水。目前,想引入Google Test作单元测试,遇到了问题。
Sun Studio有两个C++实现库:libCstd和libstlport。项目一直都是用默认的libCstd进行开发。但是在编译Google Test库的时候,发现所用到的一些模板特别,如iterator_traits并不被libCstd所支持,只能使用libstlport作为C++库进行编译。
这样就产生了问题:在进行单元测试的时候,需要用到以前的一些基础库,但是这些库都是用libCstd编译,而使用Google Test进行单元测试,就需要链接到libstlport库,而这两种库不能混用,因此造成了很大的麻烦。
现在想以下几种解决办法:
(1)所有库都是用libstlport编译。这个工作量可能比较大,关键是一些平台库,不知道平台的维护
人员愿不愿意呢
(2)找到libCstd patch,以支持一些模板功能。但是又怕造成二进制不兼容,那更麻烦。
(3)换用别的单元测试工具。不知道还会不会遇到同样的问题
能想到的就这几种办法,哪位大拿还有好办法呢?谢谢啦!
阅读(712) | 评论(0) | 转发(0) |