1.打开终端输入,qmake -v ,如果提示版本信息正,就可以编译程序了。

2.当前目录切换到程序源代码目录,cd /home/likewei/untitled2

3.生成untitled2.pro文件(通过命令生成的pro文件,里面会缺少引用,最好还是通过QtCreator生成),qmake -project

4.生成makefile文件,qmake untitled2.pro

5.生成执行文件,make

编译出现的问题解决方法:

1.打开终端输入,qmake -v,出现错误:qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory

需要修改/usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf 文件内容,里面第一行内容为默认的编译器。

1.1 修改default.conf文件内容。终端命令,sudo vim /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf

1.2 修改default.conf文件第一行内容为自己使用的编译器,如:/home/likewei/Qt5.8.0/5.8/gcc_64/bin/qmake。

1.3 保存退出。

2.输入sudo vim /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf出现提示sudo vim 找不到命令,需要安装vim编辑器。

2.1 如果可以上网,输入命令,sudo apt-get install vim-gtk,可以完成安装。

以下离线安装vim

2.2 安装ncurses,安装vim需要安装ncurses库。

2.2.1 安装vim需要ncurses库。官网:https://ftp.gnu.org/gnu/ncurses/ 下载ncurses-6.1.tar.gz

2.2.2 终端命令解压缩,tar zxvf /home/likewei/桌面/myfile/ncurses-6.1.tar.gz

2.2.3 切换到解压缩后的文件目录,cd /home/likewei/ncurses-6.1

2.2.4 按照系统环境制作安装配置文件输入命令,./configure

2.2.5 编译源代码并且编译ncurses库,sudo make

2.2.6 安装编译好的ncurses库,sudo make install

2.3离线安装vim

2.3.1 官网https://www.vim.org/download.php#unix下载vim-8.0.tar.bz2

2.3.2 打开终端,命令解压缩,tar jxvf /home/likewei/桌面/myfile/vim-8.0.tar.bz2

2.3.3  cd /home/likewei/vim80/src

2.3.4  ./configure

2.3.5 sudo make

注意:在make过程中,如果缺少ncurses,可能会碰到下面的问题:checking for tgetent()... configure: error: NOT FOUND!

You need to install a terminal library; for example ncurses.

2.3.6 sudo make install

linux下使用命令模式去编译Qt程序的更多相关文章

  1. 【最详细最完整】在Linux 下如何打包免安装的QT程序?

    在Linux 下如何打包免安装的QT程序? 版权声明:嵌入式linux相关的文章是我的学习笔记,基于Exynos 4412开发板,一部分内容是总结,一部分是查资料所得,大家可以自由转载,但请注明出处! ...

  2. Linux下同时运行不同版本的qt程序

    因项目需要,可能有不同版本的qt程序要运行到同一台机器上,本次实验是qt4.8.5和qt5.3.1开发的程序同时运行在同一台机器上,此机器可以不按照qt的任何版本,当然,两个版本开发的qt与机器的位数 ...

  3. 命令行静态编译QT程序

    在.pro文件里加上(非必须)CONFIG += static release windows 静态库必须放在这个路径:C:\Qt\Qt5.3.2_static\bin\qmake -makefile ...

  4. 【Qt】命令行编译Qt程序(nmake)【转】

    简述 前两节讲解了如何在Visual Studio和Qt Creator中搭建Qt开发环境,并分享了我们第一个小程序-Hello World. 下面分享如何使用命令行来编译Qt程序.当然,MSVC和M ...

  5. Linux/Ubuntu下 静态编译Qt程序

    一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的.会提示缺少……库文件之类的错误.这就是动态编译的结果. 但是如果我们想编译一个程序 ...

  6. Linux下静态编译Qt程序

    一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的.会提示缺少……库文件之类的错误.这就是动态编译的结果. 但是如果我们想编译一个程序 ...

  7. 在linux下用命令行编译 java的eclipse项目

    由于jdk的版本问题导致在windows上编译打包好的jar包放在linux服务器上运行的时候出现一点小异常,所以决定在linux上进行一次项目编译,这有两个选择1.在相同的linux环境下安装lin ...

  8. Linux 下 make 命令 及 make 笔记

    Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.本文我们将用一些实例来讨论 make ...

  9. linux下svn命令使用大全

    最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...

随机推荐

  1. 使用git 上传项目到gitee/github

    参考: https://blog.csdn.net/qq944639839/article/details/79864081 注意:在此之前需要设置ssh公匙 详见:Github/github 初始化 ...

  2. try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}}引发的惨案

    如题,ajax请求报错:try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}}引发的惨案 要么是404,要么是40 ...

  3. bzoj千题计划312:bzoj2119: 股市的预测(后缀数组+st表)

    https://www.lydsy.com/JudgeOnline/problem.php?id=2119 题意:将给定数组差分后,求ABA形式的字串个数,要求|B|=m,|A|>0 1.后缀数 ...

  4. Spring Boot中使用使用Spring Security和JWT

     目标 1.Token鉴权 2.Restful API 3.Spring Security+JWT 开始 自行新建Spring Boot工程 引入相关依赖 <dependency> < ...

  5. 020、搭建本地Registry(2019-01-11 周五)

    参考https://www.cnblogs.com/CloudMan6/p/6902325.html   Docker Hub 虽然方便,但还是有些限制,比如     1.需要Internet连接,上 ...

  6. PHP 调第三方跨域接口示例

    <?php ); //错误信息 ); //php启动错误信息 ini_set('date.timezone','Asia/Shanghai'); ); //打印出所有的 错误信息 ini_set ...

  7. daemon_init函数:调用该函数把普通进程转变为守护进程

    #include <unistd.h> #include <syslog.h> #include <fcntl.h> #include <signal.h&g ...

  8. luogu 1772 物流运输 ZJOI2006 spfa+dp

    主要路径上存在时间限制(消失) 因为数据较小(点数较小),利用限制条件在规定时间内分别spfa,(也可用floyd) 再通过dp取最优值 #include<bits/stdc++.h> # ...

  9. JS基础题

    1.三目运算符(三元条件语句)的使用方法? 条件表达式?true表达式:false表达式 2.JS数据中哪些属于引用类型? 数组.对象 引用类型变量,变量名所储存的不是变量值,而是变量所在的地址. 3 ...

  10. Java基础 变量的作用域

    变量的作用域: 1. Java用一对大括号作为语句块的范围,称为作用域. 2.作用域中的变量不能重复定义. 3.离开作用域,变量所分配的内存空间将被JVM回收. public void name(){ ...