Closed canalocaradoti closed 4 years ago
Was there any errors when you tried to build mangohud? What command did you use to test mangohud with?
For basic testing I usually recommend downloading the vulkan-tools package and running MANGOHUD=1 vkcube
I ran both the .sh script and tried to compile it and it was not.
Failed to compile? What was the error message?
So, I followed the recommended procedures. There was no error when I ran install.sh or when I ran ./build.sh install. I also tried the Vulkan test and nothing, so much so that I have the vulkan-tools package installed.
Does $HOME/.local/MangoHud/libMangoHud.so
exist? Same with $HOME/.local/share/villain/implicit_layer.d/mangohud64.json
@telans here in my ZorinOS, there are these paths : /home/ricardo/.local/share/vulkan/implicit_layer.d/ with the mangohud64.json and /home/ricardo/.local/share/MangoHud/ with the libs libMangoHud.so and libMangoHud32.so. I'm sending a print of when I run sh with and without the sudo command.
Then it's strange that it doesn't load. Do you have vulkan-icd loader installed? Or in other words, does DXVK work on your system?
@telans yes, dxvk and vulkan-icd loader are working perfectly, so much so that I play Overwatch through Lutris. I also tested it on Steam and it wasn't, with the latest version of Proton. If you can do tests on ZorinOS Core and Lite 15.1, it would be very interesting, as there are people migrating to this OS.
Before I advise you to delete everything and try again, please try running the following command:
$ VK_LOADER_DEBUG=debug MANGOHUD=1 vkcube
Then, put the output of that command here in a gist and post it here.
Thanks!
That's an odd output. I'm not seeing ~/.local/share/vulkan/implicit_layer.d
in the manifest search path. The output appears to be truncated to me.
Just to be 100% sure, can you run the command again but redirecting the output directly to a file? Like so:
$ VK_LOADER_DEBUG=debug MANGOHUD=1 vkcube 2>log.txt
Then put the contents of log.txt in a gist as well.
Done man @guihkx log.txt
LOL. Please try this next:
$ VK_LAYER_PATH=~/.local/share/vulkan/implicit_layers.d VK_LOADER_DEBUG=debug MANGOHUD=1 vkcube
Look man (saved it in the same file lol) log.txt
Thanks again.
As I don't want to flood this issue with me asking you to run commands and post them here, I want to ask if you're okay to continue this discussion using MangoHud's Discord? Here's the invitation link: https://discordapp.com/invite/Gj5YmBb
The fact that we both speak Portuguese will also help, I guess. Let me know if you can or cannot talk via Discord. If you can, just look for Guilherme in the members list and message me.
Found out what the problem is.
ZorinOS is a distro based on Ubuntu LTS, and both of them are still using an older version of glibc (2.28 and 2.27, respectively). But the pre-compiled binaries of MangoHud 0.1.0 require glibc 2.29.
Here's the info I get on Ubuntu LTS 18.04.3:
$ ldd libMangoHud*
libMangoHud32.so:
./libMangoHud32.so: /lib/i386-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ./libMangoHud32.so)
./libMangoHud32.so: /lib/i386-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by ./libMangoHud32.so)
linux-gate.so.1 (0xf7f09000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xf7c85000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7c80000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7c61000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf7adb000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf79d9000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf79bb000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf77df000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xf77b3000)
/lib/ld-linux.so.2 (0xf7f0a000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xf77af000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xf77a8000)
libbsd.so.0 => /lib/i386-linux-gnu/libbsd.so.0 (0xf778b000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xf7781000)
libMangoHud.so:
./libMangoHud.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ./libMangoHud.so)
./libMangoHud.so: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by ./libMangoHud.so)
linux-vdso.so.1 (0x00007ffebfb89000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f48f19cc000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f48f17c8000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f48f15a9000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f48f1220000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f48f0e82000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f48f0c6a000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f48f0879000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f48f0651000)
/lib64/ld-linux-x86-64.so.2 (0x00007f48f1d04000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f48f044d000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f48f0247000)
libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f48f0032000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f48efe2a000)
So, right now, a solution for users of these distros, would be compiling MangoHud yourself. It's really easy, just take a look at the README.
Nonetheless, I don't see why the next release of MangoHud couldn't be compiled using a LTS distro, such as Ubuntu LTS.
Nonetheless, I don't see why the next release of MangoHud couldn't be compiled using a LTS distro, such as Ubuntu LTS.
I have tried to solve that problem like that before, but to no avail. But it has been some time since last. Also shouldn't it have worked when he compiled it without errors?
In this case, I believe @canalocaradoti didn't compile MangoHud, he just tried the pre-compiled release.
Though I can't confirm this with him right now because he's not on Discord atm.
Okay, so I got the confirmation that @canalocaradoti did try compiling MangoHud using build.sh
.
But since he's on Zorin OS, the script currently doesn't detect it to install the dependencies. And even after manually adding Zorin OS here, some dependencies still couldn't be installed because the script relies on the return code of dpkg -l <package>
to determine if a package is installed or not.
I don't know much about Ubuntu, but this guy on Ask Ubuntu said:
Do not depend on the exit code of
dpkg -l packagename
, as it might return with a 0 exit code even if the package is not fully installed - see: github.com/bitrise-io/bitrise/issues/433
So after he manually installed the dependencies, the compilation part went just fine.
However, I believe we could add to the README more generic instructions on how to manually compile and install MangoHud, since it'd be virtually impossible to add every single Ubuntu-based distro to the script.
Of course, I also understand that end-users should be preferably using the pre-compiled release, so hopefully the next version can be compiled on Ubuntu LTS, for greater compatibility? Thanks.
Anyway, I think we can close this one now.
Hello, how are you? First of all I would like to congratulate you for the work and I hope it will evolve even more and thus be a reference in the Linux world.
Well, I'm an editor on the Brazilian blog Diolinux and through the GamingOnLinux blog, I saw your tool and found it interesting and went to test it. But unfortunately on ZorinOS 15.1 Core (Gnome) and Lite (XFCE), MangoHUD is not working, I ran both the .sh script and tried to compile it and it was not. In theory ZorinOS uses the Ubuntu 18.04 base, and in some packages it can use the 18.04.1 base or the 18.04.3 base. I also saw that the meson is in version 0.47. I have a hybrid laptop from Dell (Intel + Nvidia), with a GTX 960M and using the 440.44 drivers. I wonder if you have any procedure to do or something like that. I am available to help.
Att Ricardo