linux下 qt程序源代码如何编译运行

linux下 qt程序源代码如何编译运行,第1张

仔细看里面的源代码,应该有一些文件里有连接到lib文件的,这是QT的动态库文件把QT库编译成linux下的lib,然后编译的时候,把lib文件放在同一文件夹,并且编译命令加上-l lib或者放到根目录下的lib目录下也可以。这样试一下。o文件还需要经过连接才能生成可执行的文件。

linux终端下,编译C语言程序步骤为:

采用vi进行源代码编写,编写完成后,:wq存盘退出,如:

vi testc

在命令行下,运行gcc编译程序,生成执行码,如:

gcc -o test testc

-o 表示指明生成的执行码名称

运行编译后的执行码

/test

编译linux内核步骤:

1、安装内核

如果内核已经安装(/usr/src/目录有linux子目录),跳过。如果没有安装,在光驱中放入linux安装光盘,找到kernel-source-2xxxxrpm文件(xx代表数字,表示内核的版本号),比如RedHat linux的RPMS目录是/RedHat/RPMS/目录,然后使用命令rpm -ivh kernel-source-2xxxxrpm安装内核。如果没有安装盘,可以去各linux厂家站点或者>

格式:ifort 要编译的文件名 -0 指定生成的文件名

如我要把123f文件编译

ifort 123f -o 123e

如果不加指定生成的文件名,系统会自动生成一个aout的文件

一、程序的组成部分

Linux下程序大都是由以下几部分组成:

二进制文件:也就是可以运行的程序文件

库文件:就是通常我们见到的lib目录下的文件

配置文件:这个不必多说,都知道

帮助文档:通常是我们在Linux下用man命令查看的命令的文档

二、Linux下程序的存放目录

Linux程序的存放目录大致有三个地方:

/etc, /bin, /sbin, /lib :系统启动就需要用到的程序,这些目录不能挂载额外的分区,必须在根文件系统的分区上

/usr/bin,/usr/sbin,/usr/lib: *** 作系统核心功能,可以单独分区

/usr/local/bin,/usr/local/sbin,/usr/local/lib,/usr/local/etc,/usr/local/man:这个用于安装第三方程序,分别对应了二进制文件、库文件、配置文件、帮助文档的目录

通常来说我们安装程序就安装在 /usr/local目录下

 三、编译安装源程序

1、使用如下命令查看当前是否安装了gcc编译器,没有可以先用yum安装gcc

gcc --version #查看是否安装gcc

2、解压源码包,例如:

tar -xvf nginx-177targz #解压源码包

3、进入解压好的源码包:

cd nginx-177 #进入源码包

4、执行configure文件,此文件有两个功能:1、让用户选定编译特性;2、检查编译环境。configure执行后将生成MakeFile文件。例如:

/configure --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginxconf

其中我们通过--prefix制定了安装路径,通过--conf-path制定了配置文件的具体位置。注意:不是所有的程序的configure参数都是一样的 可以使用 /configure --help查看详细参数说明。如果该程序所依赖的库在当前系统中没有安装,则会导致configure最后报错,遇到这种情况就需要你先安装依赖库。

5、执行make命令,编译程序

make

6、编译成功后就可以安装了,执行如下命令

make install

到此程序就算安装完成了,但是不要忘了还有后续的配置哦

四、配置程序

1、修改PATH环境变量,以能够识别此程序的二进制文件路径;

修改/etc/profile文件,在文件中 添加

export PATH=$PATH:/path/to/somewhere#记得是可执行文件所在的目录,路径中不要包含可执行文件。

然后执行 :

source /etc/profile #是我们的修改生效

2、默认情况下,系统搜索库文件的路径/lib, /usr/lib; 要增添额外搜寻路径(注意:有的程序不提供库文件,那就不需要此设置了)

在/etc/ldsoconfd/中创建以conf为后缀名的文件,而后把要增添的路径直接写至此文件中;然后执行如下命令使其生效

ldconfig

3、如果程序提供了库文件,也会相应的提供头文件,一般在安装目录的include目录下,系统默认扫描头文件的路径是:/usr/include。我们可以在/usr/include下用链接连接到我们安装程序的头文件。

ln -s /usr/local/nginx/include /usr/include/yourname

4、可能程序还提供了帮助文档,一般是安装目录下的man目录,为了我们可以使用man命令查看我们程序的帮助文档,我们需要:在/etc/manconfig中添加一条MANPATH,指向我们的文档目录

方法/步骤1

用git --version命令检查是否已经安装

2

在CentOS5的版本,由于yum源中没有git,所以需要预先安装一系列的依赖包。在CentOS6的yum源中已经有git的版本了,可以直接使用yum源进行安装。

3

yum -y install git

但是yum源中安装的git版本是171,Github等需要的Git版本最低都不能低于172 。所以我们一般不用上面的方法,而是下载git源码编译安装。

END

编译安装git

1

首先更新系统

yum -y update

更新完成之后有65变成67了

在终端中输入 gcc 文件名 -o 目标文件名

然后 /目标文件名 就行了,没有目标文件名,自动存为 a

执行 /a 就行了。

在使用Gcc编译器的时候,我们必须给出一系列必要的调用参数和文件名称。GCC编译器的调用参数大约有100多个,其中多数参数我们可能根本就用不到,这里只介绍其中最基本、最常用的参数。

GCC最基本的用法是∶gcc [options] [filenames]

其中options就是编译器所需要的参数,filenames给出相关的文件名称。

-c,只编译,不连接成为可执行文件,编译器只是由输入的c等源代码文件生成o为后缀的目标文件,通常用于编译不包含主程序的子程序文件。

-o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件aout。

-g,产生符号调试工具(GNU的gdb)所必要的符号资讯,要想对源代码进行调试,我们就必须加入这个选项。

-O,对程序进行优化编译、连接,采用这个选项,整个源代码会在编译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、连接的速度就相应地要慢一些。

-O2,比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。

-Idirname,将dirname所指出的目录加入到程序头文件目录列表中,是在预编译过程中使用的参数。C程序中的头文件包含两种情况∶

A)#include <myinch>

B)#include “myinch”

其中,A类使用尖括号(< >),B类使用双引号(“ ”)。对于A类,预处理程序cpp在系统预设包含文件目录(如/usr/include)中搜寻相应的文件,而B类,预处理程序在目标文件的文件夹内搜索相应文件。

GCC执行过程示例

示例代码 ac:

#include <stdioh>

int main()

{

printf("hello\n");

}

预编译过程:

这个过程处理宏定义和include,并做语法检查。

可以看到预编译后,代码从5行扩展到了910行。

gcc -E ac -o ai

cat ac | wc -l

5

cat ai | wc -l

910

编译过程:

这个阶段,生成汇编代码。

gcc -S ai -o as

cat as | wc -l

59

汇编过程:

这个阶段,生成目标代码。

此过程生成ELF格式的目标代码。

gcc -c as -o ao

file ao

ao: ELF 64-bit LSB relocatable, AMD x86-64, version 1 (SYSV), not stripped

链接过程:

链接过程。生成可执行代码。链接分为两种,一种是静态链接,另外一种是动态链接。使用静态链接的好处是,依赖的动态链接库较少,对动态链接库的版本不会很敏感,具有较好的兼容性;缺点是生成的程序比较大。使用动态链接的好处是,生成的程序比较小,占用较少的内存。

gcc ao -o a

程序运行:

/a

hello

编辑本段

GCC编译简单例子

编写如下代码:

#include <stdioh>

int main()

{

printf("hello,world!\n");

}

执行情况如下:

gcc -E helloc -o helloi

gcc -S helloi -o hellos

gcc -c hellos -o helloo

gcc helloc -o hello

/hello

hello,world!

1、安装编码源码的编译工具,一般是需要安装gcc

yum install gcc

2、把源码解压

tar zxvf unametargz

3、进入解压的目录执行

/configure

make

make install

完成编译安装

以上就是关于linux下 qt程序源代码如何编译运行全部的内容,包括:linux下 qt程序源代码如何编译运行、如何在linux上编写c语言程序代码、Linux内核源码如何编译Ubuntu源代码在哪里呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10115773.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存