• 10901阅读
  • 12回复

[提问]目前qt5能不能Qt5.0.0+VS2010(+静态编译) [复制链接]

上一主题 下一主题
离线呆呆很呆
 
只看楼主 倒序阅读 楼主  发表于: 2012-04-06
我想试一下Qt5,Qt5没有SDK,只能从源码编译安装,所以问一下:
目前qt5能不能Qt5.0.0+VS2010(+静态编译),静态编译可有可无(尽量有吧),是不是大体是这样:

把configure.exe,nmake.exe所在的位置加入环境变量Path,新建一个文件夹,打开VS2010的命令行,cd到新建的文件夹执行

configure -static(应该还有一大摞,那些可以没有吗?必须有的话是什么?)
nmake
nmake install  (这个是干什么的,有点教程有这个,有的没有,怎么一回事)
nmake clean

另外,动态编译和静态编译分别需要多少GB空间?

谢谢!
离线roywillow

只看该作者 1楼 发表于: 2012-04-06
对不起我没有编译过Qt5……
你有没有编译过4.8之类的之前的版本?感觉应该步骤差不多吧,有没有查过文档?
configure就是对编译进行配置,比如是开源版还是商业版,动态还是静态,要编译哪些模块,使用哪个mkspecs(这个直接决定了configure后的makefile是针对什么编译器的)(4.8等版本是这么进行的)
nmake的话,应该就跟mingw32-make一样,进行编译
nmake install应该就是跟mingw32-make install一样了,会将编译出来的二进制文件、头文件等等在makefile中指定的一些文件复制到指定的文件夹中(这个文件夹大概是在configure的时候传入 -prefix "some/where"进行指定),这样就将编译中间文件和最终需要的文件分离开了。windows下只是简单地复制,linux下似乎还会配置环境变量?
最后的clean就是清理掉中间文件,当然makefile还是会留着的


专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线呆呆很呆
只看该作者 2楼 发表于: 2012-04-07
回 1楼(roywillow) 的帖子
没有编译过Qt4,因为有QtSDK,虽然SDK不能静态编译,但方便点吧,Qt5没有SDK,网上编译Qt的太多了,五花八门,主要是configure的参数和nmake install的有无,不知道该怎么办了
离线dbzhang800

只看该作者 3楼 发表于: 2012-04-07
Re:回 1楼(roywillow) 的帖子
引用第2楼呆呆很呆于2012-04-07 09:15发表的 回 1楼(roywillow) 的帖子 :
没有编译过Qt4,因为有QtSDK,虽然SDK不能静态编译,但方便点吧,Qt5没有SDK,网上编译Qt的太多了,五花八门,主要是configure的参数和nmake install的有无,不知道该怎么办了


configure 后面的所有参数均可省略。

不要 nmake install
离线呆呆很呆
只看该作者 4楼 发表于: 2012-04-07
回 3楼(dbzhang800) 的帖子
原来这样就行,谢了,
离线facat

只看该作者 5楼 发表于: 2012-04-07
qt5还不太完整,编译的时候对于某些库可能会提示缺少文件。
离线呆呆很呆
只看该作者 6楼 发表于: 2012-04-07
回 5楼(facat) 的帖子
那些库??????
离线呆呆很呆
只看该作者 7楼 发表于: 2012-04-07
离线呆呆很呆
只看该作者 8楼 发表于: 2012-04-07
静态编译和动态编译个需要多大空间?
离线roywillow

只看该作者 9楼 发表于: 2012-04-07
回 3楼(dbzhang800) 的帖子
不过不进行install的话残留下来的中间文件和makefile会混在二进制文件一起,感觉很不好办呢……
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线呆呆很呆
只看该作者 10楼 发表于: 2012-04-08
Re:回 3楼(dbzhang800) 的帖子
引用第9楼roywillow于2012-04-07 21:18发表的 回 3楼(dbzhang800) 的帖子 :
不过不进行install的话残留下来的中间文件和makefile会混在二进制文件一起,感觉很不好办呢……


这句话真难懂,什么难办?怎么个难办法?

目前正在nmake,至于configure的参数加了个debug-and-release,其他默认。没有静态编译,听说静态编好几十GB,恐怖……我家电脑硬盘一共才不到100GB,每个盘只有20多GB……VS2010占了好多,目前编译的F盘还剩8.76GB(本来还剩10GB来着)
离线roywillow

只看该作者 11楼 发表于: 2012-04-08
回 10楼(呆呆很呆) 的帖子
举个最糟糕的情况吧,是我最早尝试编译Qt的时候的情况
我直接在源码目录下configure,直接在源码目录下mingw32-make,然后源码目录体积骤增,经过mingw32-make clean之后虽然小了一些,但是还是有很多以后用不到的文件,比如那些makefile
后来当我把里面的lib、bin、include等等复制出来单独存放的时候,发现include的各种头文件还是指向源码的,搞得我想删掉源码节省空间都办不到
于是最近的一次编译我设置了install路径,install之后只有不到200MB,源码可以放心删除,几乎可以当做SDK来使用了
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线pannian

只看该作者 12楼 发表于: 2012-07-17
感兴趣。。
追梦永不放弃
快速回复
限100 字节
 
上一个 下一个