我试图在Windows上编译goav,而且我已经走得很远了 我已经在MSYS2中编译了ffmpeg库,并将这些包链接到:
set PKG_CONFIG_PATH=%~dp0FFmpeg\libavformat;%~dp0FFmpeg\libavcodec;%~dp0FFmpeg\libavutil;%~dp0FFmpeg\libswresample;
哪个有效!
然而,现在问题在于:
# github.com/giorgisio/goav/avcodec
source\src\github.com\giorgisio\goav\avcodec\avcodec.go:14:34: fatal error: libavformat/avformat.h: No such file or directory
//#include <libavformat/avformat.h>
编译时,Golang无法找到avformat.h(我假设其他ffmpeg头文件,但编译终止)。
如何判断这些文件的位置?我已经检查了它们,它们位于PKG_CONFIG_PATH中描述的文件夹中,但我想它并没有在那里找到它们。
旁注:我看到在基于linux-debian的系统上我只需要做apt-get install libavformat-dev
但我想在windows上编译。
答案 0 :(得分:0)
我的问题的解决方案是在构建之前设置CGO_CFLAGS环境变量,以告诉编译器ffmpeg包含文件的位置:
@set CGO_CFLAGS=-IC:\path\to\FFmpeg\
......我的项目仍未构建,但该错误已不再显示