Code: Select all
/home/william/git/vlc/contrib/x86_64-w64-mingw32/lib/libx265.a(param.cpp.obj): In function `x265::parseCpuName(char const*, bool&)':
/home/buildslave/vlc-contrib-win64-x86_64/build/contrib/win/x265/source/common/param.cpp:775: undefined reference to `strtok_r'
/home/william/git/vlc/contrib/x86_64-w64-mingw32/lib/libx265.a(param.cpp.obj): In function `x265::parseLambdaFile(x265_param*)':
/home/buildslave/vlc-contrib-win64-x86_64/build/contrib/win/x265/source/common/param.cpp:1332: undefined reference to `strtok_r'
collect2: error: ld returned 1 exit status
make[4]: *** [libx265_plugin.la] Error 1
make[4]: Leaving directory `/home/william/git/vlc/win32/modules'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/william/git/vlc/win32/modules'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/william/git/vlc/win32/modules'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/william/git/vlc/win32'
make: *** [all] Error 2
Code: Select all
Host triplet
A number of example commands below include the identifier of the toolchain. This value is essential: it instructs the build system to use the correct toolchain and compile the program for Windows. Without the value, the build system will perform a native compilation for Linux (or whatever your computer runs). With an incorrect value, the build will fail.
This is known as the host triplet, although it's more of a pair than a triplet in the case of Mingw. The exact value depends on your installation of the toolchain. Notably on Debian/Ubuntu, these values must be used:
i686-w64-mingw32 for Windows 32-bits, using the Mingw-w64 toolchain
x86_64-w64-mingw32 for Windows 64-bits, using the Mingw-w64 toolchain
i586-mingw32msvc for Windows 32-bits, using the Mingw32 toolchain
Anyway that is the value I used for:
Code: Select all
Before compiling VLC, you need lots of other libraries. Here is how to get them:
$ mkdir -p contrib/win32
$ cd contrib/win32
$ ../bootstrap --host=i686-w64-mingw32
$ make prebuilt
Code: Select all
$ rm -f ../i686-w64-mingw32/bin/moc ../i686-w64-mingw32/bin/uic ../i686-w64-mingw32/bin/rcc
Code: Select all
$ export PKG_CONFIG_LIBDIR={your_root_path}/vlc/contrib/i686-w64-mingw32/lib/pkgconfig
Code: Select all
Use the standard configuration:
$ ../extras/package/win32/configure.sh --host=i686-w64-mingw32
Code: Select all
NB: use YOUR Xcompiling prefix here, like i486-mingw32
How do I know what MY Xcompiling prefix here is?
How do I find that out?
Was I mistaken with x86_64-etc?
If not, then why do I keep running into this stupid error?
Please help