Linux下g++编译以及使用静态库和动态库的方法详解


本文摘自PHP中文网,作者黄舟,侵删。

下面小编就为大家带来一篇php.cn/wiki/1497.html" target="_blank">Linux下g++编译与使用静态库和动态库的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

在windows环境下,我们通常在IDE如VS的工程中开发C++项目,对于生成和使用静态库(*.lib)与动态库(*.dll)可能都已经比较熟悉,但是,在linux环境下,则是另一套模式,对应的静态库(*.a)与动态库(*.so)的生成与使用方式是不同的。刚开始可能会不适应,但是用多了应该会习惯这种使用,因为步骤上并没有VS下配置那么繁琐。

下面就分别总结下linux下生成并使用静态库与动态库的方法:(由于是C++项目,所以编译器用的g++,但是与gcc的使用是相通的)

首先是准备工作,把我们需要封装成库文件的函数的头文件与源文件写好,如下:

1

2

3

//myAPI.h

int ADD(int a, int b);

int MINUS(int a, int b);

1

2

3

4

5

6

7

8

9

10

//myAPI.cpp

#include "myAPI.h"

  

int ADD(int a, int b){

  return a + b;

}

  

int MINUS(int a, int b){

  return a - b;

}

接下来准备一个测试用的主函数源文件:

1

2

3

4

5

6

7

8

9

//main.cpp

#include "myAPI.h"

#include <iostream>

  

int main(){

  std::cout << "1 + 1 = " << ADD(1, 1) << std::endl;

  std::cout << "1 - 1 = " << MINUS(1, 1) << std::endl;

  return 0;

}

最后,先编译我们的 myAPI.cpp 文件生成 myAPI.o 目标文件

1

g++ -c myAPI.cpp

1.生成静态库并使用

阅读剩余部分

相关阅读 >>

Linux如何安装ssh服务

Linux怎么查看防火墙状态

Linux中如何查看mysql的安装位置

Linux什么开发的

Linux find15个常用命令

如何通过 url 发送 get 请求调用云服务器 ecs api

Linux如何格式化硬盘

Linux下分区容量不足了如何进行扩容

Linux系统网卡设图文详解

保护Linux系统安全的方法介绍

更多相关阅读请进入《Linux》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...