Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post about your mods, learn about OpenMW mod compatibility, check for problematic mods, discuss issues, and give us feedback about your experience with modded OpenMW.
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Body and Face replacer compatibility issues

Post by psi29a »

I can't really help you as I don't use Arch, but I'm sure someone here does.
You should talk to the OSG package maintainer for Arch and see if they can start packages OSG by version, not all applications are ready to migrate away from 3.2 or 3.4 to new versions. Talk with the OpenMW maintainer to peg it to OSG 3.4 for now.
User avatar
Cambionn
Posts: 13
Joined: 15 Nov 2018, 16:51

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by Cambionn »

I've overriden the files from 3.6 with 3.4, only keeping 3.6 where there are no 3.4 files (just for testing what it did since I only use OSG for this atm and I was curious). I get a bit more out of it. More in the sense of I now get an error log and fatal error pop-up instead of simply getting a CTD without any logs or anything.

The issue right now comes in the next part:
Loading cell Seyda Neen, Census and Excise Office
Warning: detected OpenGL error 'invalid operation' at after RenderBin::draw(..)


*** Fatal Error ***
Address not mapped to object (signal 11)
Address: 0x129ac1a48

Generating /home/cambionn/.config/openmw/crash.log and killing process 30488, please wait... sh: gdb: command not found
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by psi29a »

I believe that is because OpenMW is compiled against OSG3.6, just swapping out libs isn't going to do much there sadly.
User avatar
Cambionn
Posts: 13
Joined: 15 Nov 2018, 16:51

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by Cambionn »

Too bad. Ah well, there seems to be a bug report on the AUR page of it as well, I added to that. Hopefully it'll get fixed some day soon. Ever after booting OpenMW normal one looks so much more ugly switching back :P
User avatar
psi29a
Posts: 5361
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by psi29a »

You can always download and run the generic Linux build
User avatar
Cambionn
Posts: 13
Joined: 15 Nov 2018, 16:51

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by Cambionn »

I know I can, and probably, I will. But then I still hope they fix it as it's more easy to use those packages ;) .
JDGBOLT
Posts: 21
Joined: 05 Apr 2018, 19:52

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by JDGBOLT »

I'm an Arch user and I've done a lot of tweaking around with OpenMW on this, so I should be able to help you out.

What you need basically is to install the older OSG, then recompile OpenMW against it. There are various ways of doing so, so I'll try to give out the options:

As far as we know, the regression in OSG 3.6 was added in 3.6.3, so running 3.6.2 should be fine, or you can install the OpenMW fork of OSG.

For building you are going to need the compilers and everything else. You can get this by installing the devel package group within pacman, so you will need to run pacman -S devel. Next, you will probably want to modify your /etc/makepkg.conf file to support multithreaded building, as otherwise building will take a while, within that file uncomment the MAKEFLAGS="-j1" or whatever file, and change the number to roughly however many CPU cores you have.

All right, so that's the setup, now the actual options are as follows:

If you want to build OpenMW 0.44 with OSG 3.6.2, first install the asp package, which allows you to get the PKGBUILD files used to build packages built into the Archlinux repositories. Then do: asp update, then asp export openmw openscenegraph, then within those two directories will be PKGBUILD files, these are what is used for building. Then go into the openscenegraph directory and edit the PKGBUILD file, and change the package version from 3.6.3 to 3.6.2, then run makepkg -s --skipinteg, which will compile openscenegraph 3.6.2, and will not check the checksums of the files, as they won't match what is in the PKGBUILD. This will take a while, so get a coffee or something, it's made better by the change to the MAKEFLAGS above, otherwise it would take even longer. After this is done, you should have a openscenegraph-3.6.2.pkg.tar.xz or something to that effect, use pacman -U openscenegraph-3.6.2.pkg.tar.xz, to install it. Then to compile OpenMW, change into the directory and run makepkg -s, this will download and build OpenMW against that OSG you just installed. If all went well you now have a hopefully crashless OpenMW.

If you want to build the absolute latest OpenMW, it's a bit more involved but not too bad, either build OSG above, or you can install the OpenMW fork of OSG, though this is a bit more complicated as we have to edit the PKGBUILD file as the default branch of the fork is broken. First run wget https://aur.archlinux.org/cgit/aur.git/ ... git.tar.gz, which will get you the openscenegraph-openmw-git aur package, extract it with tar xaf openscenegraph-openmw-git.tar.gz , which should get you an openscenegraph-openmw-git directory, then you need to edit the PKGBUILD file and change the line that says:

source=(git://github.com/OpenMW/osg.git)

and change it to:

source=("git://github.com/OpenMW/osg.git#branch=3.4")

Then you just need to run makepkg -s, and it will build the OpenMW fork of OSG version 3.4, which is what OpenMW is mostly tested against.

From here you can either build OpenMW 0.44 like above, or if you want to build what is essentially the nightly version of OpenMW, you can download "https://aur.archlinux.org/cgit/aur.git/ ... git.tar.gz" using wget, and like above, just do makepkg -s, and it will build the absolute latest OpenMW code.

The choice is all yours, just thought I would give advice on how to build OpenMW under archlinux to hopefully fix some issues. Happy Gaming! :)
User avatar
Cambionn
Posts: 13
Joined: 15 Nov 2018, 16:51

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by Cambionn »

JDGBOLT wrote: 16 Nov 2018, 21:29 If you want to build OpenMW 0.44 with OSG 3.6.2, first install the asp package, which allows you to get the PKGBUILD files used to build packages built into the Archlinux repositories. Then do: asp update, then asp export openmw openscenegraph, then within those two directories will be PKGBUILD files, these are what is used for building. Then go into the openscenegraph directory and edit the PKGBUILD file, and change the package version from 3.6.3 to 3.6.2, then run makepkg -s --skipinteg, which will compile openscenegraph 3.6.2, and will not check the checksums of the files, as they won't match what is in the PKGBUILD. This will take a while, so get a coffee or something, it's made better by the change to the MAKEFLAGS above, otherwise it would take even longer. After this is done, you should have a openscenegraph-3.6.2.pkg.tar.xz or something to that effect, use pacman -U openscenegraph-3.6.2.pkg.tar.xz, to install it. Then to compile OpenMW, change into the directory and run makepkg -s, this will download and build OpenMW against that OSG you just installed. If all went well you now have a hopefully crashless OpenMW.
Somehow this way gives me the same error as when downgrading the OSG version after install:
openmw: error while loading shared libraries: libosg.so.158: cannot open shared object file: No such file or directory
I can find that the correct version is installed now, but somehow it seems that each time I'm below 3.6.3 I get this error.
JDGBOLT
Posts: 21
Joined: 05 Apr 2018, 19:52

Re: Body and Face replacer compatibility issues (Arch OSG-3.6 compatibility issues)

Post by JDGBOLT »

Cambionn wrote: 18 Nov 2018, 17:32
JDGBOLT wrote: 16 Nov 2018, 21:29 If you want to build OpenMW 0.44 with OSG 3.6.2, first install the asp package, which allows you to get the PKGBUILD files used to build packages built into the Archlinux repositories. Then do: asp update, then asp export openmw openscenegraph, then within those two directories will be PKGBUILD files, these are what is used for building. Then go into the openscenegraph directory and edit the PKGBUILD file, and change the package version from 3.6.3 to 3.6.2, then run makepkg -s --skipinteg, which will compile openscenegraph 3.6.2, and will not check the checksums of the files, as they won't match what is in the PKGBUILD. This will take a while, so get a coffee or something, it's made better by the change to the MAKEFLAGS above, otherwise it would take even longer. After this is done, you should have a openscenegraph-3.6.2.pkg.tar.xz or something to that effect, use pacman -U openscenegraph-3.6.2.pkg.tar.xz, to install it. Then to compile OpenMW, change into the directory and run makepkg -s, this will download and build OpenMW against that OSG you just installed. If all went well you now have a hopefully crashless OpenMW.
Somehow this way gives me the same error as when downgrading the OSG version after install:
openmw: error while loading shared libraries: libosg.so.158: cannot open shared object file: No such file or directory
I can find that the correct version is installed now, but somehow it seems that each time I'm below 3.6.3 I get this error.
Did you also remember to recompile OpenMW after installing the new OSG? As you need to do that any time you replace OSG, otherwise there could be various problems, from minor little quirks to major ones, such as not working at all. Also if you did any symlinking or copying or whatever of the so files, you'll need to remove those, as they could break things too.
Post Reply