温馨提示×

centos中如何用golang打包静态库

小樊
46
2025-09-26 16:33:10
栏目: 编程语言

在CentOS系统中使用Go语言(Golang)打包静态库,可以按照以下步骤进行:

  1. 安装Go环境: 确保你的CentOS系统上已经安装了Go。如果没有安装,可以通过以下命令安装:

    sudo yum install golang 
  2. 创建Go项目: 创建一个新的Go项目目录,并在该目录下初始化Go模块:

    mkdir mylib cd mylib go mod init mylib 
  3. 编写Go代码: 在项目目录中创建一个或多个.go文件,并编写你的Go代码。例如,创建一个名为lib.go的文件:

    // lib.go package mylib import "C" //export Add func Add(a, b int) int { return a + b } func main() {} 
  4. 编译为静态库: 使用go build命令编译Go代码为静态库。你需要指定-buildmode=c-archive参数来生成静态库和C头文件:

    go build -o libmylib.a -buildmode=c-archive lib.go 

    这将会生成两个文件:

    • libmylib.a:静态库文件
    • libmylib.h:C头文件
  5. 使用静态库: 现在你可以在其他C或C++项目中使用这个静态库。创建一个新的C或C++项目,并将生成的libmylib.alibmylib.h文件复制到该项目目录中。

    例如,创建一个名为main.c的文件:

    #include <stdio.h> #include "libmylib.h" int main() { int result = Add(3, 4); printf("Result: %d\n", result); return 0; } 

    然后编译并链接静态库:

    gcc -o main main.c -L. -lmylib 

    运行生成的可执行文件:

    ./main 

    你应该会看到输出:

    Result: 7 

通过以上步骤,你就可以在CentOS系统中使用Go语言打包静态库,并在其他C或C++项目中使用这个静态库。

0