g++ 动态库的编译及使用】的更多相关文章

#ifndef __HELLO_H_ #define __HELLO_H_ void print(); #endif #include "hello.h" #include <iostream> using namespace std; void print() { cout << "hello world" << endl; } 将上面的 cpp 文件编译为动态库: g++ hello.cpp -fPIC ishared -o…
http://hi.baidu.com/linuxlife/blog/item/0d3e302ae2384d3a5343c1b1.html Linux下的动态库以.so为后缀,我也是初次在Linux下使用动态库,写一点入门步骤,以便以后能方便使用. 第一步:编写Linux程序库 文件1.动态库接口文件 //动态库接口文件getmaxlen.h #ifndef _GETMAXLEN_H_ #define _GETMAXLEN_H_ int getMaxLen(int *sel,int N); #e…
转载: http://hi.baidu.com/linuxlife/blog/item/0d3e302ae2384d3a5343c1b1.html Linux下的动态库以.so为后缀,我也是初次在Linux下使用动态库,写一点入门步骤,以便以后能方便使用. 第一步:编写Linux程序库 文件1.动态库接口文件 //动态库接口文件getmaxlen.h #ifndef _GETMAXLEN_H_ #define _GETMAXLEN_H_ int getMaxLen(int *sel,int N)…
linux上静态库和动态库的编译和使用(附外部符号错误浅谈) 这就是静态库和动态库的显著区别,静态库是编译期间由链接器通过include目录找到并链接到到可执行文件中,而动态库则是运行期间动态调用,只有运行时找不到对应动态库才会报错 gcc创建和使用静态库.动态库 gcc动态链接库*.so文件的生成与使用方法…
今天编译一个程序时报错: g++ -static -o echo.fcgi echo_adaptor.o echo.o -L/usr/local/lib/ -lfastcgipp -L/usr/lib/ -lboost_thread -pthread -lboost_system -lboost_date_time -L/home/chu/lib/ -lwebframework -L/usr/local/lib/ -lctemplate_nothreads -L/usr/lib64/mysql/…
1. 动态链接库简介 动态库又叫动态链接库,是程序运行的时候加载的库,当动态链接库正确安装后,所有的程序都可以使用动态库来运行程序.动态库是目标文件的集合,目标文件在动态库中的组织方式是按特殊的方式组织形成的.在动态库中函数和变量的地址是相对地址而不是绝对地址,其真实地址在调用动态库的程序加载时形成的. 动态库的名字有别名(soname), 真名(realname)和链接名(linkername).别名是由一个lib前缀,然后是库的名字,最后以".so"结尾来构成.真名是动态链接库的真…
1.下载sqlite3源码:http://www.sqlite.org/download.html 主要是sqlite-amalgamation-XXXXXXX.zip.sqlite-dll-win32-x86-XXXXXXX.zip.sqlite-dll-win32-x64-XXXXXXX.zip 动态库编译: ps:如果没有特殊要求,可直接使用下载的sqlite-dll-*********.zip内的dll,那如果不放心就自己编译. 1.使用vs2010创建win32工程,然后选择DLL和空…
1.MFC下生成动态库 1>显式调用 在.cpp文件里添加接口函数 int sum(int a,int b) { return a + b; } int sub(int a,int b) { return a - b; } 在.def文件里标示导出接口  sum @ sub @; 编译即可生成动态库 在.exe里调用 在头文件里添加 #pragma comment(lib,"TestDLL") int sum(int a,int b); int sub(int a,int b);…
转自:http://www.cnblogs.com/leaven/archive/2010/06/11/1756294.html http://hi.baidu.com/linuxlife/blog/item/0d3e302ae2384d3a5343c1b1.html Linux下的动态库以.so为后缀,我也是初次在Linux下使用动态库,写一点入门步骤,以便以后能方便使用. 第一步:编写Linux程序库 文件1.动态库接口文件 //动态库接口文件getmaxlen.h #ifndef _GET…
主要参考博客gcc创建和使用静态库和动态库 对于熟悉windows的同学,linux上的静态库.a相当于win的.lib,动态库.so相当于win的.dll. 首先简要地解释下这两种函数库的区别,参考<Linux程序设计> 1. 静态库也被称为归档文件(archive,因此创建命令是ar),编译器和链接器负责将程序代码和静态库结合在一起组成单独的可执行文件: 但是缺点是许多应用程序同时运行并使用来自同一个静态库的函数时,内存中就会有一个函数的多份副本,而且程序文件自身也有多份同样的副本,这将消…