Linux下动态库的创建与使用

原创 2007年09月30日 22:26:00
1  动态库的创建
动态库的创建很容易也有一定的技巧
如:
dynamic,h文件
class zyx
{
private:
        int a;
        int b;
public:
        zyx(int a,int b);
        int sum();
};
dynamic.cpp文件
#include"dynamic.h"
zyx::zyx(int a,int b)
{
        this->a = a;
        this->b = b;
}

int zyx::sum(int a,int b)
{
        return a+b;
}
编写完成以后我们可以编译了
 gcc -fpic -shared -o libdynamic.so dynamic.cpp
-fpic指的是生成与位置无关的文件
-shared指连接成共享库
这样我们的共享库就建立起来了不过我们最好把dynamic.h放到usr/include目录下把dynamic.cpp放到usr/lib下。这样有一个好处。就是我们可以让系统自动寻找他们。

2 共享库的使用
我们同样首先些一段测试的代码
#include<iostream>
#include<dynamic.h>
using namespace std;
int main()
{
        zyx z(1,2);
        cout<<z.sum()<<endl;
        return 0;
}
这样我们就可以编译了
g++ dynamictest.cpp -o dynamictest -ldynamic
如果没有将dynamic.h放到usr/include目录下把dynamic.cpp放到usr/lib下要手动指定include lib文件在哪里
g++ dynamictest.cpp -o dynamictest -I./ -L./ -ldynamic
其实,调用共享库有两种方法这只是其中一种比较简单的隐式调用,还有一种显示调用要生命一个外部的类的实例化函数,然后通过这个函数取得类的构造函数,相对来讲比较麻烦,这里就不说了。




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Linux下静态、动态库(隐式、显式调用)的创建和使用及区别

Linux下静态、动态库(隐式、显式调用)的创建和使用及区别 一、静态链接库的创建与使用: 1、编写add.c 及main.c代码: /*******************************...

Linux下静态库、动态库的创建和使用

静态库、动态库的创建和使用 1.按照如下目录,建立如下文件 2.创建静态库 创建lib文件夹,用来存放库文件 编译连接,生成可执行程序: 显示目录和文件: 静态库:ap...

linux下创建,使用动态库

1. 现在要生成libmydll.so的库文件,头文件如下 #ifndef  _MYDLL_H #define  _MYDLL_H #include "stdio.h" #ifdef WIN32   ...

linux下静态库和动态库的创建和使用

1.首先

Linux下创建和使用静态和动态库

一.创建静态库与使用:     (创建静态库):     1.编写源代码。这个可以想像成是一种服务或一种函数,它可以为别的程序提供服务。     2.生成目标文件:gcc -c xxxx.c -...

linux下静态库和动态库的创建和使用

一》静态库的创建和使用:  静态库的制作 1>. 命名规则 1). lib + 库的名字 + .a 2). libmytest.a 2>. 制作步骤: 1). 生成对应的.o文件 -- ....
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)