簡體   English   中英

如何正確地將 ffmpeg 與 cgo 靜態鏈接

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM