Stimmt, hab jetzt auch gesehen, daß x265 cmake verwendet.
Da ich mich zur Zeit für meinen neuen stromspar-PC wieder mal mit Linux beschäftige hat mich das jetzt auch mal interressiert.
Die Prozedur ist sogar im x265 Wiki beschrieben.
Also entweder die cross-Parameter per Konfigurationsdatei übergeben oder in der Kommandozeile.
Dummerweise führt die beschriebene Vorgehensweise bei mir immer zu folgender Fehlermeldung:
-- cmake version 2.8.12.2-- The C compiler identification is GNU 4.8.2-- The CXX compiler identification is GNU 4.8.2-- Check for working C compiler: /usr/bin/i686-w64-mingw32-gcc-- Check for working C compiler: /usr/bin/i686-w64-mingw32-gcc -- brokenCMake Error at /usr/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:61 (message): The C compiler "/usr/bin/i686-w64-mingw32-gcc" is not able to compile a simple test program. It fails with the following output: /usr/bin/i686-w64-mingw32-gcc CMakeFiles/cmTryCompileExec1890825961.dir/testCCompiler.c.obj -o cmTryCompileExec1890825961 -rdynamic i686-w64-mingw32-gcc: Fehler: nicht erkannte Kommandozeilenoption »-rdynamic«
Keine Ahnung ob es an der 32bit mingw Version liegt...
Ich hab dann einfach die "toolchain-x86_64-w64-mingw32.cmake" aus "x265/build/msys" nach "x265/build/linux"
kopiert und dann hats so funktioniert:
cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain-x86_64-w64-mingw32.cmake ../../source
wenn man die dll nicht braucht dann geht auch:
cmake -G "Unix Makefiles" -DENABLE_SHARED:BOOLEAN=OFF -DCMAKE_CXX_FLAGS="$CXXFLAGS -static-libgcc" -DCMAKE_C_FLAGS="$CFLAGS -static-libgcc" -DCMAKE_TOOLCHAIN_FILE=toolchain-x86_64-w64-mingw32.cmake ../../source
Ein kurzer Versuch die .exe unter Windows zu starten scheiterte aber kläglich mit "unable to load libgcc-1.dll" oder so ähnlich.
Wahrscheinlich stimmt da noch was nicht mit den cmake Parametern.