protonscr

Proton compilation fails with font error

protonclosed
ValveSoftware/Proton#4715 · opened 2021-04-01 by Patola · updated 2021-04-01 · 6 comments · github
PPatola 2021-04-01 github

-- Erased all vagrant configuration, vagrant remove all boxes, vagrant destroy, ~/.vagrant.d, proton/.vagrant, ~/"VirtualBox VMs" and proton/vagrant_shares.
-- cloned proton with recurse-submodules, ensured I was on HEAD
-- Tried to make proton. It correctly installed and downloaded the debian 10 VM, set up everything, then failed in compilation with the a font error, see log (this log was copied from the output of make proton afterwards, since the error message is the same as the full version from scratch).

make-proton-output.log

PPatola 2021-04-01 github

Got past that part by:

  • updating debian metadata and packages:
    # sudo apt update && sudo apt -y full-upgrade && sudo apt clean
  • changing the default python of the VM to python3:
    # cd /usr/bin && sudo rm python && sudo ln -s python3 python
  • installing python3-pip:
    # sudo apt -y install python3-pip && sudo apt clean
  • pip-installing afdko:
    # sudo pip3 install afdko

But then again, just looked at the Vagrantfile and it has the python-pip (which is an alias for python3-pip) and the pip install afdko, not sure why it failed and used python2 instead. This VM was installed today from scratch.

PPatola 2021-04-01 github

...and now it is stopping there:

make: Entering directory '/home/vagrant/build-proton_5.13-local/obj-lsteamclient64'
make: Nothing to be done for 'all'.
make: Leaving directory '/home/vagrant/build-proton_5.13-local/obj-lsteamclient64'
[ x"strip" = x ] || strip ./obj-lsteamclient64/lsteamclient.dll.so
mkdir -pv ./dist/dist/lib64/wine/
cp -af ./obj-lsteamclient64/lsteamclient.dll.so ./dist/dist/lib64/wine/
make[1]: *** No rule to make target '../proton/OpenXR-SDK/CMakeLists.txt', needed by 'obj-openxr64/Makefile'.  Stop.
make[1]: Leaving directory '/home/vagrant/build-proton_5.13-local'
make: *** [../proton/build/makefile_base.mak:17: nested_make] Error 2
make: Leaving directory '/home/vagrant/build-proton_5.13-local'
Connection to 127.0.0.1 closed.
make: *** [Makefile:132: redist] Error 2

Using a docker container inside a debian 10 virtual machine managed by Vagrant should ensure consistency. Why are these errors happening? Notice that I am currently doing these operations in a RedHat 8.3 EL installation, but the same happened in Ubuntu 20.04 in other machine.

PPatola 2021-04-01 github

OpenXR-SDK wasn't getting cloned even with --recurse-submodules. git-cloned it to the directory.

Aaeikum 2021-04-01 github

The initial bug you found is an issue with afdko. One of its dependencies updated, and afdko haven't updated their package to fix it yet. You can fix it by running this within the Vagrant VM:

sudo pip install singledispatch==3.4.0.4

which will downgrade that dependency, and allow afdko to work again. I've been meaning to report that to afdko, but haven't yet.

git submodule update --init --recursive should fix all submodule problems.

Aaeikum 2021-04-01 github

Also there is a much improved build system coming... very shortly... which should hopefully make this whole process a lot smoother.

PPatola 2021-04-01 github

Thank you. I will close the bug report, since the new build system will improve things. After adding OpenXR-SDK the proton compilation finished successfully.

Proton versions

DLLs