发布时间:2014-09-05 16:53:43作者:知识屋
前面的博客中讲了在window下C工程中封装dll和lib,在linux下同样需要封装动态链接库,linux下的动态链接库名称以lib开头,扩展名为.so。下面记录在linux下用Eclipse进行C编程时封装动态链接库的方法和向工程中添加动态链接库的方法。
一、创建动态链接库
1、创建工程
new->project->c++ project
选择Shared Library->Empty Project.输入工程名a,点击finish,完成工程的创建。
2、编写代码
在windows下封装动态链接库时对要封的函数要用__declspec(dllexport)来标明,在linux下不用,在linux下只需要直接把要封的函数的声明放到一个.h文件中,要用这个库时将相应的.h文件加载到工程中。
3、生成动态链接库
编译代码,成功后在Debug目录下会生成liba.so文件。
二、动态链接库的使用
1、创建工程
new->c++ project->Executable->Empty Project.工程名为libr
2、编写所需代码,并将相应的.h文件放到工程目录下并加载到工程中。
3、加入动态链接库liba.so
右键工程Properites->C/C++ Build->Settings,然后如下图
注意最右边,库的名称liba.so变为a,库的路径就写这个库所在的路径。
4、修改环境变量。
以上均做正确的话编译链接是能通过的,但是在运行时会报错error while loading shared libraries: libShared.so: cannot open shared object file: No such file or directory ,这时需要修改环境变量。在工程处右键,Run As->Run Configurations,选择Environment,如下图:
新加一个环境变量,名称必需是 LD_LIBRARY_PATH,值为动态链接库所在的路径。
以上就完成了linux下生成动态链接库和使用动态链接库。
作者“菜鸟变身记”
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能