1 Introduction
This page gathers information on how to build On-Screen Mesa on openSUSE. Please keep in mind that:
- These instructions might go out of date, in case a particular Ubuntu version upgrades their default Mesa source code version that is provided via apt.
- These instructions are designed to integrate directly in OpenFOAM's custom builds of ParaView.
Contents
2 openSUSE Leap 15.1
Note: It's advisable to run these commands only after compiling ParaView and OpenFOAM.
Steps:
- Switch to root mode (administrator), to install the necessary packages:
sudo -s
- If the 'sudo' command tells you're not in the sudoers list, then run:
su -
- If the 'sudo' command tells you're not in the sudoers list, then run:
- Install the necessary packages:
zypper install scons python2-pip libyaml-devel llvm-devel pip2 install prettytable Mako pyaml dateutils --upgrade
In addition, we need to turn on the sources list and install the additional dependencies needed for building Mesa from source code:
zypper modifyrepo -e repo-source zypper source-install Mesa # finally turn off the source repository zypper modifyrepo -d repo-source
- Now exit from the root mode:
exit
- Now for the process of building Mesa for the OpenGL software renderer, we need to run the following commands:
cd $WM_THIRD_PARTY_DIR
However, we have two possible alternatives here:
- We can either build with a more recent Mesa version:
wget -P downloads https://gitlab.freedesktop.org/mesa/mesa/-/archive/mesa-19.0.8/mesa-mesa-19.0.8.tar.bz2 tar -xf downloads/mesa-mesa-19.0.8.tar.bz2 cd mesa-mesa-19.0.8
- Or use the version that comes with openSUSE:
tar -xf /usr/src/packages/SOURCES/mesa-18.3.2.tar.xz cd mesa-18.3.2
- We can either build with a more recent Mesa version:
- Finally, we can build the chosen Mesa version with the following command:
python2 $(which scons) build=release texture_float=yes libgl-xlib > log.makeMesa 2>&1 && cp -vr build/linux-x86_64/gallium/targets/libgl-xlib/* $ParaView_DIR/lib/
Hopefully everything works as intended and ends with something like the following output:
'build/linux-x86_64/gallium/targets/libgl-xlib/libGL.so' -> '/home/ofuser/OpenFOAM/ThirdParty-7/platforms/linux64Gcc/ParaView-5.6.0/lib/libGL.so' 'build/linux-x86_64/gallium/targets/libgl-xlib/libGL.so.1' -> '/home/ofuser/OpenFOAM/ThirdParty-7/platforms/linux64Gcc/ParaView-5.6.0/lib/libGL.so.1' 'build/linux-x86_64/gallium/targets/libgl-xlib/libGL.so.1.5' -> '/home/ofuser/OpenFOAM/ThirdParty-7/platforms/linux64Gcc/ParaView-5.6.0/lib/libGL.so.1.5' 'build/linux-x86_64/gallium/targets/libgl-xlib/xlib.os' -> '/home/ofuser/OpenFOAM/ThirdParty-7/platforms/linux64Gcc/ParaView-5.6.0/lib/xlib.os'
But if not, check the contents of the file log.makeMesa, specifically the end of the file.
- And ParaView should now be ready to be used, even though it will sometimes feel a bit sluggish...