export GOOS="linux" CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
go build -buildmode=c-archive -o number.a
gcc -o a.out _test_main.c number.a
./a.out
在linux中进行动态链接库文件生成,在main目录下执行
go build -buildmode=c-shared -o ntisdk.so
注意go调用要生成plugin
go build -buildmode=plugin -o ntisdk-plugin.so main.go
生成可执行文件
gcc -o a.out main.c ntisdk.a
将.so .h文件拷贝至指定目录 在main.c中调用相关方法之后设置下查找动态库路径的环境变量
用于指定查找共享库(动态链接库)时除了默认路径(./lib和./usr/lib)之外的其他路径。
export LD_LIBRARY_PATH="/root/goProject/src/NTI-SDK/c"
./a.out
go build -buildmode=plugin -o ntisdk1.so ntisdk-plugin.go