[英]How statically link ffmpeg with cgo correctly
我正在用 cgo 制作一個 ffmpeg 程序。 我想將 ffmpeg 靜態鏈接到程序中。
我在cgo中寫了這些
/*
#cgo CFLAGS: -g -Wall -I./include
#cgo LDFLAGS: -L${SRCDIR}/lib -llibavformat -llibavcodec -llibavutil -llibavdevice -llibavfilter -llibswresample -llibswscale
#include "ffmpeg.h"
*/
import "C"
它構建成功。 但它會在運行時報告“mssing avxxx.dll”。 我猜它是通過動態鏈接編譯的。
我相信對這個先前問題的第一條評論有你的答案:如何使用 mingw 靜態鏈接 ffmpeg?
本質上,您必須在 CFLAGS 中擁有 libffmpeg 和-static
的 static 版本。 壞消息是,libffmpeg 似乎不附帶 static 庫,因此您可能必須自己構建它(閱讀該答案中較低的評論)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.