1
0
mirror of https://github.com/chai2010/advanced-go-programming-book.git synced 2025-05-24 04:22:22 +00:00

cgo: 更新完成状态

This commit is contained in:
chai2010 2018-04-23 13:31:46 +08:00
parent 90d0693e73
commit 82b23bedd3
2 changed files with 6 additions and 6 deletions

View File

@ -11,16 +11,16 @@
* [1.8. 配置开发环境](ch1-basic/ch1-08-ide.md)
* [第二章 CGO编程](ch2-cgo/readme.md)
* [2.1. 快速入门](ch2-cgo/ch2-01-hello-cgo.md)
* [2.2. CGO编程基础](ch2-cgo/ch2-02-basic.md)
* [2.2. CGO基础](ch2-cgo/ch2-02-basic.md)
* [2.3. 类型转换](ch2-cgo/ch2-03-cgo-types.md)
* [2.4. 函数调用](ch2-cgo/ch2-04-func.md)
* [2.5. 内部机制](ch2-cgo/ch2-05-internal.md)
* [2.6. 实战: 封装qsort](ch2-cgo/ch2-06-qsort.md)
* [2.4. 函数调用(TODO)](ch2-cgo/ch2-04-func.md)
* [2.5. 内部机制(TODO)](ch2-cgo/ch2-05-internal.md)
* [2.6. 实战: 封装qsort(TODO)](ch2-cgo/ch2-06-qsort.md)
* [2.7. CGO内存模型](ch2-cgo/ch2-07-memory.md)
* [2.8. C++类包装](ch2-cgo/ch2-08-class.md)
* [2.9. 静态库和动态库](ch2-cgo/ch2-09-static-shared-lib.md)
* [2.10. Go实现Python模块](ch2-cgo/ch2-10-py-module.md)
* [2.11. 编译和链接参数](ch2-cgo/ch2-11-link.md)
* [2.11. 编译和链接参数(TODO)](ch2-cgo/ch2-11-link.md)
* [2.12. 补充说明](ch2-cgo/ch2-12-faq.md)
* [第三章 汇编语言(TODO)](ch3-asm/readme.md)
* [3.1. 汇编基础(TODO)](ch3-asm/ch3-01-basic.md)

View File

@ -1,4 +1,4 @@
# 2.2. CGO编程基础
# 2.2. CGO基础
Go是一门以实用为主要目的的编程语言我们可以通过cgo来直接调用C语言代码也可以在C语言代码中直接调用Go函数。要使用CGO特性需要安装CC++构建工具链在macOS和Linux下是要安装和GCC在windows下是需要安装MinGW工具。同时需要保证环境变量`CGO_ENABLED`被设置为1这表示CGO是被启用的状态。在本地构建时`CGO_ENABLED`默认是启用的当交叉构建时CGO默认是禁止的。比如要交叉构建ARM环境运行的Go程序需要手工设置好C/C++交叉构建的工具链,同时开启`CGO_ENABLED`环境变量。