在windows上使用cgo需要gcc或g++的編譯器,需要安裝MinGW來實現編譯cgo的程序。
go只支持64位,所以需要下載64為的MinGW,下載好mingw-w64-install后,雙擊啟動安裝,安裝選項的架構一定要選擇64位,缺省是32位的。
安裝好了以后將 xxx/x86_64-.1.0-posix-seh-rt_v6-rev0/mingw64/bin添加到系統path中,至此gcc,g++編譯環境就裝好了。
在需要調用c庫的go文件中添加如下內容:
/*
#include "mycipher.h"
#cgo windows CFLAGS: -I./include
#cgo windows LDFLAGS: -L. mycipher.dll
*/
import "C"
附件的壓縮包里內容如下:
Include目錄,這是我們的加解密庫需要的頭文件
在go程序的這一行
#cgo windows CFLAGS: -I./include
指定訪問include文件夾的路徑
libcrypto-1_1-x64.dll 加解密庫需要的openssl基礎庫
mycipher.dll 加解密動態庫
mycipher.h 加解密庫調用的頭文件,里面有庫里調用的方法以及方法需要的參數
以上文件放到你的go工程目錄下即可。