簡體   English   中英

錯誤交叉編譯vlc Linux(Ubuntu 12.04)64以贏得64

[英]Error cross compiling vlc Linux (Ubuntu 12.04) 64 to win 64

我已經按照官方視頻lan Wiki上步驟進行了幾次嘗試

使用主機:x86_64-w64-mingw32

之前,配置腳本為libgcrypt給出了錯誤,但是將其禁用則可以成功進行配置。

編譯失敗,因為找不到“ __ms_vsnprintf”。

以下是示例編譯錯誤日志。

../vlc-2.0.4cross/contrib/x86_64-w64-mingw32/lib/libvpx.a(onyx_if.c.o):(.text+0x36): undefined reference to `__ms_vsnprintf'
../vlc-2.0.4cross/contrib/x86_64-w64-mingw32/lib/libvpx.a(bitstream.c.o):(.text+0x36): undefined reference to `__ms_vsnprintf'
../vlc-2.0.4cross/contrib/x86_64-w64-mingw32/lib/libvpx.a(ethreading.c.o):(.text+0x36): undefined reference to `__ms_vsnprintf'
../vlc-2.0.4cross/contrib/x86_64-w64-mingw32/lib/libvpx.a(boolhuff.c.o):(.text+0x36): undefined reference to `__ms_vsnprintf'
../vlc-2.0.4cross/contrib/x86_64-w64-mingw32/lib/libvpx.a(encodemv.c.o):(.text+0x336): undefined reference to `__ms_vsnprintf'

我似乎無法解決這個錯誤。 已經嘗試禁用相關組件,例如

--disable-libcddb --disable-cdda

在配置腳本中。 但是在另一個地方也會彈出相同的錯誤。 真的很感謝任何指針。

更新: VLC論壇指示qt4需要重新編譯,而我做到了。 還嘗試了win64和win32目標。 但是結果與上面的編譯錯誤相同。 我已經嘗試了vlc源版本2.0.4和2.0.5。 嘗試使用git 2.1.0和qt 4.8.3

我最終發現主要問題是需要mingw-x64版本3(在撰寫本文時是實驗性軟件包)。 它在debian或ubuntu資源上不可用,因此需要直接從源代碼下載或安裝軟件包

以下說明對我適用於ubuntu 12.04和mint 12,但如果要生成最終的Windows軟件包作為安裝程序,則需要git repo中的vlc代碼(至少是版本2.1.0)。 在撰寫本文時,vlc 2.0.4和2.0.5 tar球在生成安裝程序時都存在一些問題。

請參閱vlc dev郵件列表中的以下主題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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