首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >M1芯片上卡夫卡动态链接的Golang测试

M1芯片上卡夫卡动态链接的Golang测试
EN

Stack Overflow用户
提问于 2022-05-10 14:05:15
回答 1查看 1.2K关注 0票数 0

我正在用Golang / Kafka在一台新的M1 Mac上为poc编写一些单元测试。我用的是来自汇合式的官方的Golang Kafka语言:

代码语言:javascript
复制
"github.com/confluentinc/confluent-kafka-go/kafka"

显然,这个包依赖于不是为librdkafka构建的M1 (尚未?)。对于构建,有一项关于这里的工作,其内容如下:

代码语言:javascript
复制
% brew install librdkafka openssl zstd
% PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@3/lib/pkgconfig"
% go build -tags dynamic *yadda yadda yadda*

这对于构建/运行是很好的。不幸的是,它似乎不适用于测试。在描述解决方案的链接中,使用go test -tags dynamic ./...似乎有效,但在我的示例中,测试运行似乎没有读取导出的PKG_CONFIG_PATH:

代码语言:javascript
复制
% go test -tags dynamic ./... -v
# pkg-config --cflags  -- rdkafka
Package libcrypto was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcrypto.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libcrypto', required by 'rdkafka', not found
pkg-config: exit status 1
FAIL    smartAC/shared [build failed]

即使设置了env var,至少在我的shell中是这样的:

代码语言:javascript
复制
% echo $PKG_CONFIG_PATH
/opt/homebrew/opt/openssl@3/lib/pkgconfig

有什么技巧可以让go测试工具看到env var吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-10 14:10:17

好吧,算了。我解决了这个..。在我的~/..zshrc中,我没有导出PKG_CONFIG_PATH,所以我更改了以下内容:

代码语言:javascript
复制
PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@3/lib/pkgconfig"

对此:

代码语言:javascript
复制
export PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@3/lib/pkgconfig"

这似乎很管用。撇开这个问题,以防万一会对其他像我这样的菜鸟有所帮助:-)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72187850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档