关于Qt中mingw的编译原理有什么用是怎麼样的求大神解答!!!!!! [问题点数:20分,结帖人trustguan]
-
最近要用到curl库于是就下载了已经编译好的库,我用的是qt4.8.4,于是我把里面的.lib,.a文件复制到工程目录裏面然后把include也放在里面,接着在.pro文件添加LIBS,结果说找不到无法获得inferior的句柄: 参数不正确于是我又把.lib文件复制到mingw里面的bin文件夹里面,这样就通过编译于是这时候我把.pro文件里面的LIBS删除,这样就说没有找到那些函数所以想问一下为啥会出现这样的情况,mingw编译的时候不是先要找笁程目录里面的动态链接库的吗还有一个问题是.a跟.lib有啥区别。
还有curl源码是怎么用mingw重新编译的请大神指教
-
1. 下载编译好的库有时候问题比較多,最好自己拿源码编译一遍
4. MSVC 和 gcc的lib和a似乎是通用的我以前试过。现在应该都是COFF格式lib和a的唯一区别在于a是编译过的,打包好的二进制玳码而lib既可以像a一样是打包好的二进制代码,也可以是一个引入库用来指明一个dll
-
库最好不要随意放到编译器目录里,除非你确定以后需要经常使用这个库而且放的话应该是放到lib目录里
-
不好意思,我说错了我是把.dll放在编译器目录里面,但是我找不到.lib文件怎么办好呢?谢谢你的回答
-
但是我的.pro文件已經写上了dll文件的路径了不是这样就可以的吗?
-
Windows下如果要link一个dll的话必须(似乎是的,欢迎指正)要有一个引入库lib如果没有的话有两个办法,一是自己重新编译一个二是用QLibrary來动态解析。
写dll的路径是没有用的链接器不会去链接dll。-l的东西要么是.a, 要麼是.lib
-
而MSVC链接的话一定要引入库lib
-
真心感谢你啊!!!我明白了很多了
-
不要误导人,mingw编译出来的windows静态库也是.a
匿名用户不能发表回复!