在官方视频局域网wiki上的the程序之后,我做了几次尝试
使用主机: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'
我似乎无法解决这个错误。已经尝试禁用相关组件,例如
在配置脚本中。但是在另一个地方也会 pop 相同的错误。真的很感谢任何指针。
更新: VLC论坛指示qt4需要重新编译,而我成功地做到了。还尝试了win64和win32目标。但是结果与上面的编译错误相同。我已经尝试了vlc源2.0.4和2.0.5版本。尝试使用git 2.1.0和qt 4.8.3
最佳答案
我终于发现主要问题是需要mingw-x64版本3(在撰写本文时是实验软件包)。它在debian或ubuntu资源上不可用,因此package需要直接从源代码下载或安装。
following指令在ubuntu 12.04和mint 12上都对我有用,不同之处在于,如果希望将最终的Windows软件包作为安装程序生成,则需要git repo中的vlc代码(至少是版本2.1.0)。在撰写本文时,vlc 2.0.4和2.0.5 tar球在生成安装程序时都存在一些问题。
请参阅以下来自vlc dev邮件列表的thread
关于compiler-errors - 错误交叉编译vlc Linux(Ubuntu 12.04)64以赢得64,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13849083/