cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

This forum is about all development around libVLC.
mangup
Blank Cone
Blank Cone
Posts: 71
Joined: 12 Apr 2019 20:23

cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby mangup » 16 Apr 2019 13:03

Hi,

I've tried to build vlc (2.2) for windows according to https://wiki.videolan.org/Win32Compile/ instruction.
And on "$ ../extras/package/win32/configure.sh --host=HOST-TRIPLET --build=x86_64-pc-linux-gnu" step
I've faced with "configure: error: Cannot find libfaad library..."
The symptoms are the same as described at https://forum.videolan.org/viewtopic.php?t=144321 post.

Does the problem has better solution, than described there?

unidan
Developer
Developer
Posts: 1493
Joined: 25 Mar 2018 01:00

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby unidan » 16 Apr 2019 16:47

Hi, why are you trying to build the 2.2 version ?

mangup
Blank Cone
Blank Cone
Posts: 71
Joined: 12 Apr 2019 20:23

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby mangup » 16 Apr 2019 17:19

Because of "At the time of writing (late 2016), the prebuilt libraries work with VLC 2.2.x only." phrase on https://wiki.videolan.org/Win32Compile/ page.
Now I'm manually building 3rd party libraries for VLC master. But also with troubles:

meson.build:25:0: ERROR: Meson version is 0.45.1 but project requires >= 0.47.0.

chubinou
Developer
Developer
Posts: 521
Joined: 23 Jul 2015 15:19

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby chubinou » 16 Apr 2019 17:56

Hi,

you can build required build tool by:

cd extras/tools
./bootstrap
make

mangup
Blank Cone
Blank Cone
Posts: 71
Joined: 12 Apr 2019 20:23

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby mangup » 16 Apr 2019 19:45

yep. thanks.
And what about Qt? :

Code: Select all

configure: error: Requested 'Qt5Core >= 5.11.0' but version of Qt5 Core is 5.6.2. If you want to build VLC without GUI, pass --disable-qt.
I need somehow upgrade tool-chain's Qt ?
How to do it?

chubinou
Developer
Developer
Posts: 521
Joined: 23 Jul 2015 15:19

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby chubinou » 17 Apr 2019 09:49

I think the Qt recipe from the contrib doesn't compile for linux. What I personally do is download and install Qt from their installer (https://www.qt.io/download-qt-installer), and configure vlc with

../configure PKG_CONFIG_PATH=/home/pierre/Qt/5.11.3/gcc_64/lib/pkgconfig

mangup
Blank Cone
Blank Cone
Posts: 71
Joined: 12 Apr 2019 20:23

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby mangup » 17 Apr 2019 12:16

I need windows Qt binaries - am I right? How to install windows qt installer on linux? :)
Because I still have "configure: error: Requested 'Qt5Core >= 5.11.0' but version of Qt5 Core is 5.6.2. If you want to build VLC without GUI, pass --disable-qt." answer for command "../extras/package/win32/configure.sh PKG_CONFIG_PATH=/home/<path-to>/Qt/5.12.2/gcc_64/lib/pkgconfig --host=i686-w64-mingw32 --build=x86_64-pc-linux-gnu"
with my hand made installed Qt5.12.2

chubinou
Developer
Developer
Posts: 521
Joined: 23 Jul 2015 15:19

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby chubinou » 17 Apr 2019 12:34

I forgot you were compiling for windows, in that case you should use the qt version provided in the contribs. You just have to manually build the contribs as explained in wiki page you mentioned.

chubinou
Developer
Developer
Posts: 521
Joined: 23 Jul 2015 15:19

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby chubinou » 17 Apr 2019 12:39

Now it looks like your (mingw?) environment has a Qt version installed in it. This may interferes with the ones provided by the contribs.

To ease the setup of compilation environment you can use the docker build environment provided by videolan

https://code.videolan.org/videolan/docker-images
- vlc-debian-win32 for gcc 32bit
- vlc-debian-win64 for gcc 64bit
- vlc-debian-llvm-mingw for clang 32/64 bits

mangup
Blank Cone
Blank Cone
Posts: 71
Joined: 12 Apr 2019 20:23

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby mangup » 17 Apr 2019 12:48

I'm already in progress of docker instruction. But faced with known "dvdread error" on step 20: "../extras/package/win32/configure.sh --host=x86_64-w64-mingw32 –build=x86_64-pc-linux-gnu"
Now it is building by Jean-Baptiste Kempf's advise "just use extras/package/win32/build.sh -a i686".
UPD: failed:
make[2]: Entering directory '/win64/vlc/contrib/contrib-win32/vncclient'
/bin/mkdir -p '/win64/vlc/contrib/i686-w64-mingw32/include/rfb'
/bin/mkdir -p '/win64/vlc/contrib/i686-w64-mingw32/lib/pkgconfig'
/usr/bin/install -c -m 644 rfb/rfb.h rfb/rfbconfig.h rfb/rfbint.h rfb/rfbproto.h rfb/keysym.h rfb/rfbregion.h rfb/rfbclient.h '/win64/vlc/contrib/i686-w64-mingw32/include/rfb'
/usr/bin/install -c -m 644 libvncserver.pc libvncclient.pc '/win64/vlc/contrib/i686-w64-mingw32/lib/pkgconfig'
make[2]: Leaving directory '/win64/vlc/contrib/contrib-win32/vncclient'
make[1]: Leaving directory '/win64/vlc/contrib/contrib-win32/vncclient'
rm /win64/vlc/contrib/i686-w64-mingw32/lib/pkgconfig/libvncserver.pc
touch .vncclient
make: Target 'all' not remade because of errors.
+ make -j1
GEN d3d11.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN d3d11_1.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN d3d11_2.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN d3d11_3.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgicommon.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgitype.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgiformat.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgidebug.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgi.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgi1_2.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgi1_3.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgi1_4.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgi1_5.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
GEN dxgi1_6.h
/bin/sh: 2: i686-w64-mingw32-widl: not found
../../contrib/src/wine-headers/rules.mak:43: recipe for target '.wine-headers' failed
make: *** [.wine-headers] Error 127

mangup
Blank Cone
Blank Cone
Posts: 71
Joined: 12 Apr 2019 20:23

Re: cross-compiling for win32: libfaad, undefined reference to `_imp____acrt_iob_func

Postby mangup » 17 Apr 2019 13:13

Returning to dvdread error:
Also, if you have a problem here (such as an error about Library dvdread), see the Talk page
- I do not see the solution on this page. Who knows it?


Return to “Development around libVLC”

Who is online

Users browsing this forum: No registered users and 21 guests