Le blog de Jean David TECHER, un Réunionnais à Saint-Priest/Lyon

Aller au contenu | Aller au menu | Aller à la recherche


1 2 >

dimanche 23 septembre 2018

[MinGW32 Linux Distro] Toolchain to cross-compil Mpv for Windows 32 Bits - Major updates + Download

The documentation is still available at http://www.davidgis.fr/documentation/Cross-Compil_MPV_on_Linux-32Bits_For_Windows-32Bits_Using_MinGW-w64_5.0.4_GCC-7.2.0/.

Here are some news

  • FFmpeg and Mpv are now linked to libtesseract
  • Documentation is now up-to-date
    • Added new sections/subsections for new readers
  • Core Packages: refreshed packages
    • OpenAL-Soft: Replaced version 1.18.2. by version 1.19.0
    • Core Packages: Shaderc: Removed packages SPIRV-Tools and SPIRV-Headers and Glslans. Now All are built directly
  • About the compressed file to download: only 3 dlls are now required (provided in the compressed file to download)
    • libgcc_s_sjlj-1.dll
    • libstdc++-6.dll
    • libwinpthread-1.dll
Latest build to download: mpv-0.29.0.r30.g6eb59fe_win32_20180923-201236.7z

samedi 22 septembre 2018

Build Wine-Staging-3.16 + PBA + Gallium Nine on Linux 32 Bits

AFAIR I didn't write a ticket like this one for a while now . It's time to write a new one !!!

Listed below are my own instructions to build Wine-Staging 3.16 + PBA + Gallium-Nine + Some other patches on my PC Linux 32 Bits

  • Download sources
    wget https://github.com/sarnex/wine-d3d9-patches/archive/wine-d3d9-3.16.tar.gz -O - | tar xvzf -
    wget https://github.com/Firerat/wine-staging/archive/wine-staging-pba-v3.16.tar.gz -O - | tar xvzf -
    wget https://dl.winehq.org/wine/source/3.x/wine-3.16.tar.xz -O - | tar xvJf -
    
    git clone https://aur.archlinux.org/wine-gaming-nine.git
    cd wine-gaming-nine && cd git checkout baaddca018c4fd2808ef32dc2fa05c6116c79012 && cd ..
    
  • Apply patches from Wine-Gaming-Nine
    for file in $(ls wine-gaming-nine/*patch|grep -v keybinding);do patch -d wine-3.16 -Np1 -i ../$file;done
    patch -d wine-3.16 -R -Np1 -i ../wine-gaming-nine/keybindings.patch
    
  • Apply patches from Wine-Staging-PBA
    ./wine-staging-wine-staging-pba-v3.16/patches/patchinstall.sh DESTDIR="${PWD}/wine-3.16" --all
  • Apply patches from Gallium Nine
    patch -d wine-3.16 -Np1 -i ../wine-d3d9-patches-wine-d3d9-3.16/wine-d3d9.patch
    patch -d wine-3.16 -Np1 -i ../wine-d3d9-patches-wine-d3d9-3.16/staging-helper.patch
    
After that, get into wine-3.16 sources folder.
# Update files inside the folder
cd wine-3.16
autoreconf -fiv
Some packages are built outside my base system but are required to build Wine
# PKG_CONFIG_PATH should point to 
# * Mpg123
# * Vulkan-SDK
# * Gstreamer 1.10.4
export PKG_CONFIG_PATH=/opt/mpg123/1.25.8/lib/pkgconfig/:/opt/vulkan-sdk/lib/pkgconfig/:/opt/gstreamer/1.10.4/lib/pkgconfig/:/opt/ffmpeg/4.0.2/lib/pkgconfig/
#
# PATH should point to 
# *  MinGW Toolchain, support for 
#    - Posix, required by DXVK
#    - d3d11, required by DXVk
#    - d3dcompiler_47, required by DXVk
export PATH=/opt/MinGW32/bin:${PATH}

export LDFLAGS="-O2 -L/opt/vulkan-sdk/lib/ -L/opt/wine/apps/koku-xinput/lib/ -L/opt/ffmpeg/4.0.2/lib/"
export COMMON_FLAGS="-std=gnu99 -march=native -pipe -O2"
export CFLAGS="${COMMON_FLAGS}"
export CXXFLAGS="${COMMON_FLAGS}"
./configure --prefix=/opt/wine/apps/mpv/ --with-alsa --with-capi --with-cms --with-coreaudio --with-cups --with-curses \
 --with-d3d9-nine --with-d3d9-nine-module=auto --with-d3d9-nine-headers-path=auto --with-dbus --with-ffmpeg --with-float-abi=abi\
  --with-fontconfig --with-freetype --with-gettext --with-gettextpo --with-glu --with-gnutls --with-gphoto --with-gsm --with-gssapi --with-gstreamer\
  --with-gtk3 --with-jpeg --with-krb5 --with-ldap --with-mpg123 --with-netapi --with-openal --with-opencl --with-opengl --with-osmesa --with-oss \
 --without-hal --with-pcap --with-png --with-pthread --with-pulse --with-sane --with-sdl --with-tiff --with-udev --with-v4l --with-va --without-vkd3d \
 --with-vulkan --with-x --with-xattr --with-xcomposite --with-xcursor --with-xfixes --with-xinerama --with-xinput --with-xinput2 --with-xml \
 --with-xrandr --with-xrender --with-xshape --with-xshm --with-xslt --with-xxf86vm --with-zlib

make -j$(nproc)

make install

jeudi 20 septembre 2018

[MinGW32 Linux Distro] mpv-0.29.0-30-g6eb59fe for win32 to Download

I've recently used my own MinGW32 Linux Toolchain to generate a quick build for MPV Player for win32 Notice: This time we added only 11 DLLs files since we built a new toolchain. Dlls and exe files were compressed using UPX. Be careful that your antivirus returns a false-positive point

mpv was linked to FFmpeg 4.1.dev.r1300.ge0ca679

[MinGW32 Linux Distro] A new toolchain to build mpv for Windows 32 Bits with less dynamic librairies

After using my first toolchain I was not very satisfied that there were so many DLLs in my own downloadable files to build mpv.

During the past days, I took decision to rebuild it from scratch using less dynamic librairies.

And here it is http://www.davidgis.fr/documentation/Cross-Compil_MPV_on_Linux-32Bits_For_Windows-32Bits_Using_MinGW-w64_5.0.4_GCC-7.2.0/

Doing so, now we have only

  • 11 DLLs in the zipped files now
  • 90% of the packages are built/linked statically