Looking Glass - Triage

i will try this, thank you
and thank you for your work its amazing

1 Like

after some work i got it installed “[100%] Built target looking-glass-client”
I do however want to note some of the issues i had when installing.
i made myself a crappy bash script to install it and it looks like this

sudo dnf install -y cmake git SDL2-devel SDL2_ttf-devel spice-protocol fontconfig-devel nettle* libX11-devel gnu-free-mono-fonts ivshmem-tools libgle-devel.x86_64 libconfig* wayland-devel

then

sudo dnf groupinstall -y "Development Tools" "Development Libraries"

  • you can run this or
    put it in a bash script like i did

next

cd /home/user
git clone https://github.com/gnif/LookingGlass.git
cd ./LookingGlass/client
cmake ./
make

change “user” to your user.

gnif i noticed that in your tutorial you said cmake ../
im not sure why but in fedora i just got this error

“CMake Error: The source directory “/LookingGlass” does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
make: *** No targets specified and no makefile found. Stop.”

  • but using cmake ./ works fine and thats what i used

Because you skipped a step to build LG outside the source tree

mkdir client/build
cd client/build

This keeps your source tree clean

openssl-devel is not used by LG.

ok, will change this

when i run the windows exe this happends
An error occurred, re-run in forground mode (-f) for more information

i installed the red hat drivers for the pcie and such
and configured qemu and libvirt, but i also get this in fedora

[I] main.c:961 | run | Looking Glass (a12-109-gd1c0d2b5f8)
[I] main.c:962 | run | Locking Method: Atomic
[I] main.c:955 | try_renderer | Using Renderer: EGL
[I] main.c:1115 | run | Using Clipboard: X11
[E] main.c:919 | map_memory | Failed to map the shared memory file: /dev/shm/looking-glass
[E] main.c:1145 | run | Failed to map memory

After Rebooting :

[I] main.c:961 | run | Looking Glass (a12-109-gd1c0d2b5f8)
[I] main.c:962 | run | Locking Method: Atomic
[I] main.c:955 | try_renderer | Using Renderer: EGL
[I] main.c:1115 | run | Using Clipboard: X11
[E] main.c:904 | map_memory | Failed to stat the shared memory file: /dev/shm/looking-glass
[E] main.c:1145 | run | Failed to map memory

  1. That log is from the client, not the windows exe. Please do as the instructions state and run the host exe with the -f switch to get the log.

    Please be sure you have installed the IVSHMEM driver by following the instructions @ https://looking-glass.hostfission.com/quickstart/win/ivshmem.

    I really don’t know why I have to keep pointing people to the guide, it is all there and clear as day.

  2. Does /dev/shm/looking-glass even exist? Do you have permission to access it?

i used touch to create a directory like the tutorial

touch /dev/shm/looking-glass

when i try to cd to it

[imre@localhost shm]$ ls
looking-glass
[imre@localhost shm]$ cd looking-glass
bash: cd: looking-glass: Not a directory

im not sure if this is my mistake, after this i removed the file and used mkdir

[imre@localhost shm]$ sudo rm -r looking-glass 
[imre@localhost shm]$ sudo mkdir looking-glass
[imre@localhost shm]$ cd looking-glass/
[imre@localhost looking-glass]$ 

i changed the permissions aswell

screen shots :

After mkdir

Touch does not create directories, mkdir does. Touch creates a file. You are supposed to create a file, so touch is the command to use.

2 Likes

touch doesn’t create a directory, it creates an empty file.

You need to do this before starting QEMU, not the client. Qemu’s ivshemem virtual device needs access to this file and will create it. The touch and chmod are simply to set it’s initial permissions so that you can access it.

1 Like

Looking at your screenshots, you have NOT added the IVSHMEM device to the virtual machine, go back and follow the guide from the start.

1 Like

ok i will

do i at least have the red hat drivers installed?

How can you when you don’t even have the IVSHMEM device added to the VM configuration.

https://looking-glass.hostfission.com/quickstart/linux/libvirt


i had installed a red hat driver before but i was thinking of the wrong one.
i think it was called balloon

Is the host able to access the shared file if the vm is off?

The baloon driver has nothing to do with IVSHMEM. Like I said, follow the official guide, get rid of the custom qemu command arguments you have added. Then follow the guide and MANUALLY install the driver for the device.

i have tried everything, its just not showing up in windows at all under system devices
i created and changed the permissions for the file but nothing
the only odd device thats showing up is QEMU FwCfg Device

The file has nothing to do with the device showing up. Until you get the device into the VM nothing will function, period. What version of libvirt are you using? What distro are you using?, please provide more information.

fedora 29
QEMU emulator version 3.0.0 (qemu-3.0.0-3.fc29)
threadripper 1950x
16 gb ram 3200 mgh
240 gb ssd for windows
125 gb ssd for linux
msi gaming carbon pro motherboard
gtx 1080 ti for windows
r9 270x for linux

  1. Qemu is too old
  2. What version of libvirt?
  3. What kernel?

4.20.16-200.fc29.x86_64
libvirt-4.7.0-1.fc29.x86_64