我正在关注此document来构建Go Imagick库。
当我运行以下命令时
go build -tags no_pkgconfig imagick
抛出以下异常:
# imagick
src/imagick/affine_matrix.go:8:29: fatal error: wand/MagickWand.h: No such file or directory
compilation terminated
现在解决我已经安装了以下软件包,因为许多人建议解决该错误。但它也没有用。
sudo apt-get install libmagickwand-dev libmagickcore-dev imagemagick
此外,当我运行go build imagick
时
它会引发以下错误:
# imagick
could not determine kind of name for C.FlattenAlphaChannel
could not determine kind of name for C.RemoveAlphaChannel
pkg-config --cflags --libs MagickWand
的输出提供正确的输出
-fopenmp -I/usr/include/ImageMagick -lMagickWand -lMagickCore
ImageMagick仅安装在此路径(/ usr / include / ImageMagick)上。
答案 0 :(得分:1)
他们的文档mention no_pkgconfig
必须与手动设置GCO_CFLAGS
和CGO_LDFLAGS
一起使用。所以这样的事情应该有效:
export CGO_CFLAGS="$(pkg-config --cflags MagickWand)"
export CGO_LDFLAGS="$(pkg-config --libs MagickWand)"
go build -tags no_pkgconfig
答案 1 :(得分:1)
如问题跟踪器的#68所述,您使用的ImageMagick版本太旧了,它早于为主分支测试的版本。您的Linux发行版早于当前可用的稳定版本。
您应手动安装较新的ImageMagick,并从apt中删除一个。或者使用一些允许您管理多个版本的解决方案。