[vlc-devel] cross compile 2.2.0 for Windows

David R. Robison david.robison at openroadsconsulting.com
Fri Mar 27 19:22:43 CET 2015


Here are my instructions for compiling against VLC trunk.  David

1) Create a 64-but Ubuntu 14.04 LTS VM and load all the system updates

2) Install the needed tools for the build. There may be some extra stuff 
here but it won't hurt ya.

sudo apt-get install \
     texinfo pax g++ cvs yasm subversion git flex m4 bison \
     lua5.2 \
     libtool automake autoconf autopoint make gettext \
     pkg-config \
     qt4-dev-tools \
     git \
     subversion \
     wine-dev \
     zip p7zip nsis bzip2 \
     ragel ant default-jdk cmake \
     protobuf-compiler \
     libogg-dev \
     libgcrypt-dev

Note: during the wine install a popup will be displayed. You will need 
to tab to the answer and use the space bar to select it as part of 
accepting the license agreement.

3) We use the ffmpeg mingw-w64 package. Create a directory for the 
mingw-w64 Tool, copy the install script into that directory, and build 
mingw-w64:

mkdir mingw-w64
cd mingw-w64
wget http://zeranoe.com/scripts/mingw_w64_build/mingw-w64-build-3.6.4
chmod +x mingw-w64-build-3.6.4

3a) Modify the file mingw-w64-build-3.6.4 where it creates the headers 
and specify --enable-secure-api
"$mingw_w64_source_dir/mingw-w64-$mingw_w64_ver/mingw-w64-headers/configure" 
--enable-secure-api --enable-sdk=all --build="$system_type" 
--host="$mingw_w64_target" --prefix="$mingw_w64_prefix" > >

3b) Run this command to build the tool
./mingw-w64-build-3.6.4 --build-type=win64 --default-configure 
--enable-gendef --enable-nls --disable-shared

Note: After the wget command make sure to modify the file's permisisons 
to allow it to be executed.

4) In your user's directory, create the file .bash_aliases and add the 
following lines

export 
PATH="/home/david/mingw-w64/mingw-w64-x86_64/bin:/home/vlc/extras/tools/build/bin:$PATH"
export PKG_CONFIG_LIBDIR=/home/david/vlc/contrib

where /home/david/vlc is where you will checkout VLC to. This last line 
is what I was missing and what I believe was causing all my trouble.

5) Log out and log back in to let the exports take affect.

6) Clone the VLC code

git clone git://git.videolan.org/vlc.git vlc

7) From the VLC root directory, build the needed tools

cd extras/tools/
./bootstrap
make

8) From the VLC root directory, build the contribs. You may get away 
with the prebuilts but this works for me.

mkdir -p contrib/win32
cd contrib/win32
../bootstrap --host=x86_64-w64-mingw32 --disable-protobuf 
--disable-schroedinger --disable-upnp
make fetch
make

9) From the VLC root directory, bootstrap and configure the build

./bootstrap
mkdir win32
cd win32
../extras/package/win32/configure.sh --host=x86_64-w64-mingw32 
--enable-debug --enable-static --disable-schroedinger

10) from the VLC/win32 directory, build VLC

make
make package-win32-zip


----------------------------------------------------------------------------

David R Robison

*Principal Systems Engineer*

+1 757 546 3401 (o)

+1 757 286 0022 (m)

david.robison at openroadsconsulting.com 
<mailto:david.robison at openroadsconsulting.com>

www.openroadsconsulting.com

----------------------------------------------------------------------------

Open Roads Consulting

A Q-Free Company

103 Watson Rd. Chesapeake VA 23320

On 3/27/2015 2:06 PM, Jeff J wrote:
> Hi all, can anyone detail what their setup is for cross-compiling for
> Windows 32-bit? I'm just curious what OS people are using as well as
> any deviations from the instructions at
> wiki.videolan.org/Win32Compile. I'm running into problems trying to
> compile on Ubuntu 14.04. Thanks.
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel



This email communication (including any attachments) may contain confidential and/or privileged material intended solely for the individual or entity to which it is addressed.
If you are not the intended recipient, please delete this email immediately.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20150327/50c69158/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: orci-qfree.png
Type: image/png
Size: 8284 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20150327/50c69158/attachment.png>


More information about the vlc-devel mailing list