我想在构建时在cgo中定义一个字符串变量。以下方法均无效。

  • #cgo CFLAGS: -DLOG="common"
    

    未声明“common”(此功能中的首次使用)
  • #cgo CFLAGS: -DLOG=common
    

    未声明“common”(此功能中的首次使用)
  • #cgo CFLAGS: -DLOG=\"common\"
    

    格式错误的#cgo参数:-DLOG =“common”
  • 最佳答案

    似乎这是不可能的,因为cgo会进行一些处理/解析-您可以只使用普通的#define LOG "common"来逃脱(即不使用CGO特殊标志)。

    否则,您可以像这样调用go run / go build:CGO_CFLAGS='-DLOG="common"' go run so.go

    关于go - 在CGO中定义变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35719394/

    10-13 04:23