程序员茄子
全部
编程
代码
资讯
案例
综合
联系我们
C 库 相关技术文章
php
mysql
shell
go
vue
css
api接口对接
支付接口对接
Go 1.28 提案 #81450:只调预编译 C 库时,cgo 不再需要 C 工具链
编程
Go 1.28 提案 #81450:只调预编译 C 库时,cgo 不再需要 C 工具链
2026-09-30 20:01:02
Go 提案 #81450 想解决一个具体痛点:包只调用已编译好的 .so/.a,却仍被迫装整套 C 工具链。方案是用 Go 语法的 binding 文件替代构建期解析 C 头文件,Go ABI 与 C ABI 之间由 Go+汇编 trampoline 转换,runtime/cgo 也改为 Go+汇编。本文梳理两阶段流程、四块硬骨头、与 Go 1.20/1.21 的路线关系,以及 binding 生态这个最大风险。
Go
cgo
C
ABI
交叉编译
1.28
IBM
C 库
Debian Code Search 用纯 Go SIMD 重写 TurboPFor:删掉最后一行 cgo,性能反超 C 库
编程
Debian Code Search 用纯 Go SIMD 重写 TurboPFor:删掉最后一行 cgo,性能反超 C 库
2026-09-19 20:03:33
Debian Code Search 作者用 Go 1.26/1.27 实验性 simd/archsimd 包重写服役 7 年的 C 版 TurboPFor 整数压缩库,删掉最后一行 cgo:先靠减少分配、泛型位宽特化把纯标量性能拉到 C 的 76% 以上,再用 AVX2 垂直布局取得 3 倍加速,最后靠位置汇编计数再翻一倍,反超原 cgo 版本。
Go
SIMD
性能优化
cgo
AVX512
avx
C 库
Go 提案 #81450:cgo 调用预编译 C 库时不再需要 C 工具链
编程
Go 提案 #81450:cgo 调用预编译 C 库时不再需要 C 工具链
2026-09-18 21:01:06
Go 核心开发者 Matloob 提交提案 golang/go#81450,拟让 cgo 在调用预编译 C 库时彻底摆脱 gcc/clang:用 Go 语法 binding 文件描述 C ABI,由 Go 工具链自行生成 Go+汇编胶水代码。本文梳理提案动机、与 Go 1.20/1.21 剥离 C 工具链的路线关系,以及它覆盖不到的传统 cgo 场景。
Go
cgo
AI-GPU
交叉编译
C 库
Babashka 1.13.220 新增 FFI:Clojure 脚本直接调用 C 库
编程
Babashka 1.13.220 新增 FFI:Clojure 脚本直接调用 C 库
2026-09-06 07:16:18
Babashka 1.13.220发布,引入babashka.ffi命名空间,允许从Babashka脚本直接调用C库,同时可作为独立库用于JVM Clojure。核心API包括load-system-library(加载系统库如zlib/libc)、load-library(加载指定路径库)、defcfn(定义C函数,指定返回类型和参数类型)。支持String、Integer、Double、Boolean、Pointer、ByteBuffer等类型。文章提供了调用libc(getpid/getenv/system)、zlib压缩、SQLite等示例,讨论了API实验性、类型安全、内存管理、线程安全、平台差异等注意事项,以及系统管理、数据处理、科学计算等应用场景。
Babashka
Clojure
FFI
C库
GraalVM
native-image
开源
脚本
C 库
大家都在搜索什么?
devops
易支付
一个官网+多少钱
统一接受回调
统一回调
python
sub
node
宝塔日志
mysql
shell
ElasticSearch
css
vue
api接口对接
2025
支付接口对接
go
php
php回调