Qt5.12實戰之Linux靜態庫編譯與調用完整過程

文章详细介绍了如何在Linux环境下使用gedit编辑C++源文件,创建静态库libtest.a,然后编写并编译调用该库的可执行程序app,最后运行程序的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安裝gedit

sudo apt-get install gedit -y

2.使用gedit編輯靜態庫源文件test.cpp

gedit test.cpp

輸入下面內容 :

#include <stdio.h>
int func()
{
	return 888;
}

如下圖操作:

 保存test.cpp並編譯 爲目標文件

gcc -c test.cpp

如下圖示,生成目標文件test.o

 使用ar將test.o生成libtest.a靜態庫 libtest.a

ar rcs libtest.a test.o

如下圖所示 :

 下面編寫一個簡單的可執行程序來調用靜態庫libtest.a靜態庫

gedit app.cpp

 在打開的app.cpp中輸入下面內容:

#include <stdio.h>
#include <iostream>
extern int func();
using namespace std;
int main(int argc,char* argv[])
{
	int x = func();//調用靜態庫函數 func
	cout<<x<<endl;
	return 0;
}

如下圖所示 :

 保存app.cpp並生成可執行程序

g++ -o app app.cpp -L. -ltest

-o app 表示生成的可執行文件名

app.cpp 表示參與編譯的源碼文件

-L. 表示鏈接庫的目錄爲當前目錄

-ltest 表示鏈接庫名,完整庫名會自動在前面添加lib及添加後綴名.a或者.so 

最後完整的庫名會是 libtest.a 或者 libtest.so

編譯器鏈接程序 時會先搜索libtest.so如果找不到會再去搜索libtest.a

編譯成功後會在當前目錄生成 app可執行程序

 運行程序 :

./app

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自由软件开发者

有你的鼓励,我会更加努力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值