Building Looking Glass

Hey, as per our conversation, @HikariKnight , I'm creating a help topic regarding passthrough and using looking glass and tagging you so when you get time, you can help me out (hopefully). I believe I have pretty much everything set up as far as virtual machine, IOMMU, passthrough, drivers installed for second GPU and second GPU running on Virtual Machine (Windows 10), but I'm stuck at the Looking Glass part of it. I'm in the middle of building it, and every single time I try to build it, I get this error: CMake Error: The current CMakeCache.txt directory /home/alienone/client/CMakeCache.txt is different than the directory /var/home/alienone/Downloads/looking-glass-B7-64-f15d72cd/client/build where CMakeCache.txt was created. This may result in binaries being created in the wrong place. If you are not sure, reedit the CMakeCache.txt What can I do to fix it, and how can I properly build it for use? Thanks for your time.
15 Replies
AlienOne
AlienOneOP5mo ago
Ok, update.....I re-did everything again (for like the 10th time), and this time it went through the compiling, but there was another error said "CMake Error at renderers/EGL/CMakeLists.txt:17 (message): FATAL: some known version of awk couldn't be found (AWK-NOTFOUND). -- Configuring incomplete, errors occurred!" Is that bad? ok, got a bit further..... got past "cmake ../" and "make", but now when I run "sudo make install" I get this error: CMake Error at cmake_install.cmake:66 (file): file INSTALL cannot copy file "/home/alienone/Downloads/looking-glass-B7/resources/lg-logo.svg" to "/usr/local/share/icons/hicolor/scalable/apps/looking-glass.svg": Read-only file system.
HikariKnight
HikariKnight5mo ago
are you following our guide?
HikariKnight
HikariKnight5mo ago
Using Looking-Glass - Bazzite Documentation
Bazzite is a custom image built upon Fedora Atomic Desktops that brings the best of Linux gaming to all of your devices.
HikariKnight
HikariKnight5mo ago
i see the other distributions build deps are missing so i will copy them here from the web archive backup Installing Dependencies for Client Build
dnf install cmake gcc gcc-c++ libglvnd-devel fontconfig-devel spice-protocol make nettle-devel \
pkgconf-pkg-config binutils-devel libXi-devel libXinerama-devel libXcursor-devel \
libXpresent-devel libxkbcommon-x11-devel wayland-devel wayland-protocols-devel \
libXScrnSaver-devel libXrandr-devel dejavu-sans-mono-fonts
dnf install cmake gcc gcc-c++ libglvnd-devel fontconfig-devel spice-protocol make nettle-devel \
pkgconf-pkg-config binutils-devel libXi-devel libXinerama-devel libXcursor-devel \
libXpresent-devel libxkbcommon-x11-devel wayland-devel wayland-protocols-devel \
libXScrnSaver-devel libXrandr-devel dejavu-sans-mono-fonts
For wayland support you will also need the following packages
dnf install libdecor-devel
dnf install libdecor-devel
For Pipewire users (some applications might not be able to record sound from looking glass then, like discord screen share)
dnf install pipewire-devel libsamplerate-devel
dnf install pipewire-devel libsamplerate-devel
For PulseAudio users (better compatibility for audio in screensharing applications)
dnf install pulseaudio-libs-devel libsamplerate-devel
dnf install pulseaudio-libs-devel libsamplerate-devel
AlienOne
AlienOneOP5mo ago
Ok so I believe I've got everything built, looking glass is activatable, virtual machine starts, recognizes the secondary GPU, and if I switch inputs on my monitor, I can experience the full resolution accelerated experience. However, although I've installed the host .exe on the virtual machine, and I see it running in the system tray, Looking Glass does not see it when it starts up. Now, I'm seeing that I have 2 options within the virtual machine.... It sees 2 displays, but I have "Duplicate these displays," "extend these displays," "Show only on 1," and "show only on 2." If I select "Show only on 1," then I can see the virtual machine within virt-manager (but not on my monitor's other input). If I select "Show only on 2," then I can no longer see anything on the virtual machine and can only see it on my monitor's other input. Also, when I'm seeing it on my virtual machine (show only on 1), the Looking Glass host app will not run no matter how many times I try to start it. When I'm seeing the display on my monitor's other input (show only on 2), the Looking Glass host app shows as running in the system tray However, on both occasions, the client Looking Glass on Linux does not see it.
AlienOne
AlienOneOP5mo ago
No description
HikariKnight
HikariKnight5mo ago
Looking glass is meant to be used with a dummy plug in the GPU. If you use it with a monitor you switch inputs with then looking glass serves no use as it will only display what's shown on the monitor input windows is connected to (on a lot of monitors only when that is the monitors selected input) If you are switching monitor inputs to use the VM then I suggest a software kvm switch. There is a how-to on how to make one in my GitHub (vfio-setup-docs wiki) I personally prefer the dummy plug method as it is a lot more convenient.
AlienOne
AlienOneOP5mo ago
Ok, I'll get a dummy plug and try it that way I'd rather use it the intended way (from within Linux) than have to switch monitor inputs...the only reason I was doing that (switching inputs) was it was the only way I could see what was being shown for troubleshooting purposes. I have a dummy plug being overnighted to me and I'll try that out by tomorrow and report back. I have a feeling that maybe there's a dependency missing or that perhaps it's configured incorrectly because I would think that Looking Glass would be grabbing the frames anyway regardless of if the card is plugged into a monitor or has a dummy plug...but, I am admittedly a super noob at all this, so I'm sure it's user error somewhere in the setup process
HikariKnight
HikariKnight5mo ago
I recommend displayport dummy plugs Actually doesn't really matter but I personally prefer displayport
AlienOne
AlienOneOP5mo ago
The secondary card I'm using with this setup is a GEForce GT 1030, and I believe it only has a DVI and a HDMI port. I'm using my primary card (4070ti Super) for Linux, as I do 99% of my gaming on there. I hope that isn't a problem. The VM Windows does see and utilize the 1030 card, so I know that much of the setup is good to go.
HikariKnight
HikariKnight5mo ago
Yeah then get a HDMI dummy DVI dummy is a waste of money, so few use cases in comparison and take more space
AlienOne
AlienOneOP5mo ago
I sincerely appreciate your time...I made the decision to switch to Linux from Windows about 2 months ago because I really didn't like the direction Windows was going with 11, and with 10 reaching end of life this year, I figured I needed to find other options. With Linux finally becoming a legit gaming machine (and Bazzite doing a great job facilitating that), I figured now was as good a time as any to jump ship. I still feel pretty overwhelmed at how much I need to learn, but I'm enjoying it. I do have a tiny bit of experience messing with Steam Deck's Arch over the past year or so, but not that much experience. I'll report back once I get the dummy plug.
HikariKnight
HikariKnight5mo ago
Well you already confirmed you have working passthrough since the windows monitor works, so you have learned how to do something very advanced with passthrough
AlienOne
AlienOneOP5mo ago
It probably helped that my PC build is with a SuperMicro x10dax server motherboard, so the amount of built-in support for virtualization there was probably way better than the average pc setup
HikariKnight
HikariKnight5mo ago
Most likely You tend to need expensive motherboards for vfio on consumer stuff if you want a good experience I have no idea how the pcie lanes are on your motherboard though

Did you find this page helpful?