# goloader **Repository Path**: RuiCat/goloader ## Basic Information - **Project Name**: goloader - **Description**: 这个库是GitHub上的goloader库的全部依赖合并版,goloader是Go语言动态加载静态库的一个第三方实现. - **Primary Language**: Go - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2019-12-04 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # goloader #### 介绍 这个库是GitHub上的goloader库的全部依赖合并版,goloader是Go语言动态加载静态库的一个第三方实现. #### 软件架构 库使用的第三方包均在vender/src目录下. #### 安装教程 1. 设置目录下isntall文件 makePATH 变量为isntall文件所在目录. 2. 运行install文件即可将src目录下的测试代码全部编译到bin目录下 #### 编译注意 编译需要使用指令: go build -gcflags "-N -l" -o 生成文件 源码文件 如果不添加 -gcflags "-N -l" 选项的话会导致无法获得自身导入表,导致插件依赖加载失败. #### 使用说明 1. 如果是要使用包需要注意,编译好的静态库有依赖性,而且无法直接传递结构体,需要一个公用的接口来进行互相转换,测试代码就是动态加载包并调用包内结构体的测试代码. 2. 测试目录(src/Load)为主函数,会加载目录下port.a(公用接口/依赖)与modules.a(功能实现)两个包,对应源码分别是同级目录port与与modules