QT学习心得-关于编译器的选择(PCL库的配置)

原本我实在VC上进行开发,在编译的时候的选择的调试器也就只有debug 64和x86,或者release 64或x86。没有这么注意编译器的版本。其实每种IDE都有自己的独有的编译器,比如VS2015的编译器就是MSCV14.0,VS2013的编译器就是MSCV12.0。

对于QT来说,对于编译器有许多种的安装版本,比如针对MSCV14.0的安装版本,安装后的编译器是,而对于mingw编译器的安装版本,安装后的编译器就是Mingw 5.3.0。当然,除了默认的编译版本之外,我们也可以在手动设置编译器,比如在构建套件里选择手动设置

手动设置PCL的编译器为MSCV14.0当然可行,但是如果工程中任何一个外部链接库的编译版本跟编译器不一致,就会出现无法解析的外部符号之类的错误。举个例子,如果在mingw编译器QT版本设置MSCV14.0编译器,则QT的内部链接库会链接不上,出现无法解析的外部符号之类的错误。

所以在配置第三方库时,我们要选择对应的编译版本,如果编译器是Mingw,则我们要用cmake先将第三方库编译成Mingw版本 ; 如果编译器是MSCV14.0,则我们要用cmake先将第三方库编译成MSCV14.0版本,这样才能给QT调用。

在整个系统的开发时,第三方库的调用是非常频繁的,所以在对PCL进行QT的配置时,我对编译器有了更深的理解,方便我以后更正确的调用第三方库。

猜你喜欢

转载自blog.csdn.net/irobot2016/article/details/78139555