简体   繁体   English

错误交叉编译vlc Linux(Ubuntu 12.04)64以赢得64

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

I have had several attempts following the procedure at official video lan wiki 我已经按照官方视频lan Wiki上步骤进行了几次尝试

using the host: x86_64-w64-mingw32 使用主机:x86_64-w64-mingw32

Earlier, configure script was giving errors for libgcrypt, but disabling it proceeded to successful config. 之前,配置脚本为libgcrypt给出了错误,但是将其禁用则可以成功进行配置。

Compilation fails because it does not find `__ms_vsnprintf'. 编译失败,因为找不到“ __ms_vsnprintf”。

Following is a sample compilation error log. 以下是示例编译错误日志。

../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'

I can't seem to get around with this error. 我似乎无法解决这个错误。 Have already tried disabling relevant component such as 已经尝试禁用相关组件,例如

--disable-libcddb --disable-cdda --disable-libcddb --disable-cdda

in the configure script. 在配置脚本中。 But the same error pops up in another place. 但是在另一个地方也会弹出相同的错误。 Would really appreciate any pointers. 真的很感谢任何指针。

Update: VLC forums indicated that qt4 needs to be recompiled and i did that successfully. 更新: VLC论坛指示qt4需要重新编译,而我做到了。 Have also tried both win64 and win32 targets. 还尝试了win64和win32目标。 But the result is same above compilation error. 但是结果与上面的编译错误相同。 I have tried vlc source version 2.0.4 and 2.0.5. 我已经尝试了vlc源版本2.0.4和2.0.5。 Going to try from git 2.1.0 with qt 4.8.3 尝试使用git 2.1.0和qt 4.8.3

I finally found several issues primary of which was that mingw-x64 version 3 (which at the time of this writing is experimental package) is required. 我最终发现主要问题是需要mingw-x64版本3(在撰写本文时是实验性软件包)。 It is not available on debian or ubuntu resources so package needs to be downloaded or install directly from source. 它在debian或ubuntu资源上不可用,因此需要直接从源代码下载或安装软件包

The following instructions worked for me on both ubuntu 12.04 as well as mint 12, with the exception that if you want the final windows package to be generated as an installer, you need vlc code from git repo (version 2.1.0 at least). 以下说明对我适用于ubuntu 12.04和mint 12,但如果要生成最终的Windows软件包作为安装程序,则需要git repo中的vlc代码(至少是版本2.1.0)。 As of this writing both vlc 2.0.4 and 2.0.5 tar balls had some issue with generating the installer. 在撰写本文时,vlc 2.0.4和2.0.5 tar球在生成安装程序时都存在一些问题。

See the following thread from vlc dev mailing list 请参阅vlc dev邮件列表中的以下主题

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM