g++编译使用静态程序库以及如何生成静态程序库
1个回答
展开全部
最近学习了一下静态程序库的创建与使用。
using namespace std;
void bill(char *arg){cou << "arg" << arg << endl;}//fred.cpp#include <iostream>
using namespace std;
void fred(int arg){cout << arg << endl;}//lib.h
void bill(char *);
void fred(int);//main.cpp
#include "lib.h"int main(){bill("Hello, lib using test!
");return 0;}用g++命令编译bill.cpp fred.cpp
$ g++ -c bill.cpp fred.cpp
生成静态库文件
$ ar -crv libfoo.a bill.o fred.o
然后编译main.cpp调用libfoo.a进行链接注意main.cpp和libfoo.a的位置:
$ g++ -o test main.cpp libfoo.a 最后,执行可执行文件test
using namespace std;
void bill(char *arg){cou << "arg" << arg << endl;}//fred.cpp#include <iostream>
using namespace std;
void fred(int arg){cout << arg << endl;}//lib.h
void bill(char *);
void fred(int);//main.cpp
#include "lib.h"int main(){bill("Hello, lib using test!
");return 0;}用g++命令编译bill.cpp fred.cpp
$ g++ -c bill.cpp fred.cpp
生成静态库文件
$ ar -crv libfoo.a bill.o fred.o
然后编译main.cpp调用libfoo.a进行链接注意main.cpp和libfoo.a的位置:
$ g++ -o test main.cpp libfoo.a 最后,执行可执行文件test
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询