Linux学习笔记-生成动态库(补充说明)
生活随笔
收集整理的這篇文章主要介紹了
Linux学习笔记-生成动态库(补充说明)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.在Makefile中創(chuàng)建動態(tài)庫。
2.在動態(tài)庫中共享class類型。
?
Makefile文件如下:
EXE=libexample.so SUBDIR=srcCXX_SOURCES=$(foreach dir,$(SUBDIR),$(wildcard $(dir)/*.cpp)) CXX_OBJECTS=$(patsubst %.cpp, %.o, $(CXX_SOURCES)) DEP_FILES=$(patsubst %.o,%d, $(CXX_OBJECTS))$(EXE): $(CXX_OBJECTS)g++ -shared $(CXX_OBJECTS) -o $(EXE)%.o: %.cppg++ -c -fPIC -MMD $< -o $@-include $(DEP_FILES)clean:rm -rf $(CXX_OBJECTS) $(DEP_FILES) $(EXE)test:echo $(CXX_OBJECTS)文件目錄結(jié)構(gòu)如下:
src文件內(nèi)部如下:
源碼:
example.h
class Object{public:void test();int id; };int example(int a,int b);example.cpp
#include <stdio.h> #include "example.h"int example(int a, int b) {printf("example library: a=%d, b=%d \n", a, b);return 0; }void Object::Test() {printf("id=%d \n", id); }main.cpp
#include "src/example.h"int main(){example(10,20);Object obj;obj.id=100;obj.test();return 0; }?
運行截圖如下:
總結(jié)
以上是生活随笔為你收集整理的Linux学习笔记-生成动态库(补充说明)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java获取成员变量构造函数信息
- 下一篇: Java笔记-Java通过JNI调用Li