首页 > 其他 > 详细

通过命令行新建qt项目,并编译打包

时间:2019-06-26 12:49:08      阅读:170      评论:0      收藏:0      [点我收藏+]

ref: https://blog.csdn.net/weixin_42837024/article/details/81945656


 

新建项目

  • 新建文件夹,作为项目根目录
  • 编写main.cpp
    main.cpp
#include<QApplication>
#include<QWidget>
int main(int argc,char ** argv)
{
    QApplication app(argc,argv);
    QWidget* pWidget = new QWidget();
    pWidget->show();
    return app.exec();

}

 

技术分享图片

 

 

  • 进入到相应的 文件夹下 输入qmake -project 会发现文件夹下生成了平台无关的项目文件一个XXX.pro文件(前面和文件夹名字一样)
    • qmake -project
      技术分享图片
  • 下一步输入 qmake XXX.pro 你要输入对应的pro文件
    • qmake XXX.pro
    • 生成一些 makefile 文件 和 debug 和 release 文件夹(因为手写Makefile是比较困难并且容易出错的,尤其是需要给不同的平台和编译器组合写几个Makefile。使用qmake,开发者创建一个简单的“项目”文件并且运行qmake生成适当的Makefile。qmake会注意所有的编译器和平台的依赖性,可以把开发者解放出来只关心他们的代码

编译

如果使用的是开源版的Qt,用make;如果是商业版的Qt,用nmake

  • 所以我输入make,会 报错 不要着急

技术分享图片

 

因为我们用到了QWidget 所以要在pro文件里加入 QT += widgets 然后继续重复上一步

技术分享图片

  •  重新make
    •   make

 

效果如图
技术分享图片

 

打包

不同平台下的打包方式还不太一样。但是原理是类似的,都是将 应用文件依赖的有关库放到同级目录下

  • Windows
    • 输入命令  windeployqt XXX.exe
    • 可以再使用  Enigma Virtual Box 将文件都打包在一起
  • Linux

 1.将编译后生成的可执行程序(如:test)复制到一个空目录下

 2.使用ldd命令查看和导出需要的库

在步骤1的目录下新建一个pack.sh文件,文件内容如下:

#    pack.sh
#    SCHIPS
#    schips@dingtalk.com
#    https://gitee.com/schips/
#    Wed 26 Jun 2019 10:38:11 AM HKT
##
#!/bin/zsh

#你需要发布的程序名称
bin="test_project"

# 输出路径
des="./"
deplist=$(ldd $bin | awk  {if (match($3,"/")){ printf("%s "),$3 } })
cp $deplist $des

即可

 

 

通过命令行新建qt项目,并编译打包

原文:https://www.cnblogs.com/schips/p/11089088.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!