导航:首页 > 编程语言 > linuxqt程序静态编译

linuxqt程序静态编译

发布时间:2023-09-03 11:03:37

linux怎么静态编译

关于在 Linux 环境下面对 C 语言源程序进行静态编译,关键是要看你的 C 语言源程序中都使用到了哪些系统库函数?如果是标准的输入、输出库函数,只要在命令行提示符 $ 下面执行:
gcc my_prog.c 即可(缺省的可执行文件名是:a.out);如果在用户的源程序中使用到了数学计算函数,那么在命令行提示符 $ 下面必须执行:
gcc my_prog.c -IMATH.LIB(假设涉及到各种数学计算的数学库的库文件为:MATH.LIB)
如果不加上 -IMATH.LIB 选项,那么即使你的源程序编写得再正确,也无法正常编译。
另外还有一个必须要注意的就是:在 Linux 的环境变量中,一定要把 INCLUDE、LIB 所在的路径设置好(在 SHELL 文件中写好),这样在使用 Linux 系统时才能够减少出错的机会。

㈡ linux下执行qt程序怎么编译运行

qmake -project? 已经有.pro文件了! 直接运行qmake或者qmake snake.pro或qmake -makefile snake.pro.

重新解压,按以下步骤做:
$ qmake
$ make
找到可执行文件(不是.o, 没后缀的), 一般版如果snake.pro中没设置TARGET,默认生权成的可执行文件为snake,输入
.$ /snake

㈢ linux静态库怎么编译

linux库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀。例如:libhello.so
libhello.a
为了在同一系统中使用不同版本的库,可以在库文件名后加上版本号为后缀,例如:
libhello.so.1.0,由于程序连接默认以.so为文件后缀名。所以为了使用这些库,通常使用建立符号连接的方式。
ln
-s
libhello.so.1.0
libhello.so.1
ln
-s
libhello.so.1
libhello.so
动态库和静态库的区别:
当要使用静态的程序库时,连接器会找出程序所需的函数,然后将它们拷贝到执行文件,由于这种拷贝是完整的,所以一旦连接成功,静态程序库也就不再需要了。然而,对动态库而言,就不是这样。动态库会在执行程序内留下一个标记‘指明当程序执行时,首先必须载入这个库。由于动态库节省空间,linux下进行连接的缺省操作是首先连接动态库,也就是说,如果同时存在静态和动态库,不特别指定的话,将与动态库相连接。
两种库的编译产生方法:
第一步要把源代码编绎成目标代码。以下面的代码hello.c为例,生成hello库:
/*
hello.c
*/
#include
void
sayhello()
{
printf("hello,world\n");
}
用gcc编绎该文件,在编绎时可以使用任何全法的编绎参数,例如-g加入调试代码等:
gcc
-c
hello.c
-o
hello.o
1.连接成静态库
连接成静态库使用ar命令,其实ar是archive的意思
$ar
cqs
libhello.a
hello.o
2.连接成动态库
生成动态库用gcc来完成,由于可能存在多个版本,因此通常指定版本号:
$gcc
-shared
-wl,-soname,libhello.so.1
-o
libhello.so.1.0
hello.o
另外再建立两个符号连接:
$ln
-s
libhello.so.1.0
libhello.so.1
$ln
-s
libhello.so.1
libhello.so
这样一个libhello的动态连接库就生成了。最重要的是传gcc
-shared
参数使其生成是动态库而不是普通执行程序。
-wl
表示后面的参数也就是-soname,libhello.so.1直接传给连接器ld进行处理。实际上,每一个库都有一个soname,当连接器发现它正在查找的程序库中有这样一个名称,连接器便会将soname嵌入连结中的二进制文件内,而不是它正在运行的实际文件名,在程序执行期间,程序会查找拥有
soname名字的文件,%b

㈣ linux下qt程序如何编译运行说的详细点!!!!急急急!!!

1 需要保证linux下要安装了qt环境
2 进入你的程序目录,运行 /usr/local/qt_install/bin/qmake xxxx.pro。 其中/usr/local/qt_install是qt安装目录. xxxx.pro是你应内程程容序中的pro文件
3 执行make
4 运行生成的bin文件

阅读全文

与linuxqt程序静态编译相关的资料

热点内容
哪些统计量可以反映数据波动 浏览:946
js地图标记怎么清空 浏览:479
googlenow教程 浏览:508
安全四个责任体系内容文件 浏览:965
南阳政务app怎么注册 浏览:343
照片压缩包同一路径的文件能删吗 浏览:590
路由没网络怎么办 浏览:745
南京网站推广大概多少钱 浏览:983
js隐藏打印出来 浏览:135
手工之家app哪里下载 浏览:328
网络教育联盟英语考试是什么 浏览:69
macairwin10忘记密码 浏览:716
java上传方法 浏览:970
csc文件夹可以删除吗 浏览:130
打线工具怎么用 浏览:376
mat文件如何转换为cad 浏览:761
qq浏览器旧版本614 浏览:713
将数据库文件批量导出excel 浏览:262
招投标文件在招标公司存多少年 浏览:551
u盘空间不足不能复制系统镜像文件 浏览:212

友情链接