-
Notifications
You must be signed in to change notification settings - Fork 183
Build From Source (Linux)
This is a quick guide on how to successfully build GLideN64 on "Linux". As long as you have an understanding of basic terminal commands and you are familiar with your distros package manager you should be all set!
I can only list the Fedora and Ubuntu packages names, but a quick search on the net or the package manager should be able to point out the equivalent packages in your distro. Take names as approximations, not literal names.
git
gcc
gcc-c++
cmake
libstdc++-static
libX11-devel
mesa-libGL-devel
freetype-devel
git
gcc
g++
cmake
build-essential
libpthread-stubs0-dev
libgl1-mesa-dev
libx11-dev
libfreetype6-dev
zlib1g-dev
libpng16-dev
Search examples for APT
apt-cache search libfreetype | grep -i dev
apt-cache search libpng | grep -i dev
apt list -a libx11-dev
apt show -a libgl1-mesa-dev
git clone https://github.com/gonetz/GLideN64.git
cd GLideN64/src
./getRevision.sh
cd ../projects/cmake
cmake -DMUPENPLUSAPI=On ../../src/
make
cd plugin/Release
chmod 644 *.so
cp *.so "your/emu/libs"
cp ../../../../ini/GLideN64.custom.ini "your/emu/libs"
cd ../projects/cmake
rm -rf ../../src/GLideNHQ/inc
export CC=clang-8
export CXX=clang++-8
cmake -DUSE_SYSTEM_LIBS=On -DVEC4_OPT=On -DCRC_OPT=On -DMUPENPLUSAPI=On ../../src/
make -j4
cd plugin/Release
cat Readme.txt
grep -i option ../../src/CMakeLists.txt
find ../../* | grep CMake
cd plugin/Release
chmod 644 *.so
cp mupen64plus-video-GLideN64.so /usr/local/lib/mupen64plus
cp ../../../../ini/GLideN64.custom.ini /usr/local/share/mupen64plus
Note: You will need root privileges to copy to a system path. Use su or sudo to write with root privileges. Some distros will also need to manually run ldconfig
to load the new installed libraries into the system cache without using the package managers.
mupen64plus --gfx mupen64plus-video-GLideN64.so ../rute/rom.bin
echo "#!/bin/bash" > m64p_script
echo "set -e" >> m64p_script
echo "mupen64plus --gfx mupen64plus-video-GLideN64.so \"\${@}\"" >> m64p_script
chmod 755 m64p_script
./m64p_script ../rute/rom.bin
export FTW="--set Video-GLideN64"
./m64p_script --windowed --resolution 960x720 $FTW[bilinearMode]=False $FTW[EnableClipping]=False $FTW[EnableNativeResTexrects]=1 $FTW[EnableCopyColorToRDRAM]=1 $FTW[EnableCopyColorFromRDRAM]=False ../rute/rom.bin
export MYUSERSPACE=$(pwd)
export PATH="$MYUSERSPACE:$PATH"
export MYCROP="$FTW[EnableOverscan]=True $FTW[OverscanNtscLeft]=15 $FTW[OverscanNtscRight]=15 $FTW[OverscanNtscTop]=9 $FTW[OverscanNtscBottom]=11"
export MYDITHER="$FTW[UseNativeResolutionFactor]=4 $FTW[EnableDitheringPattern]=True $FTW[EnableHiresNoiseDithering]=True $FTW[DitheringQuantization]=True $FTW[RDRAMImageDitheringMode]=1 $FTW[EnableCopyColorFromRDRAM]=True"
m64p_script $MYDITHER $MYCROP ../rute/rom.bin
Text editors (doubtful), frontends and multi-system emulators