2019-04-10 12:08:14 +00:00
# General Questions
## What is this?
2019-02-28 05:35:30 +00:00
2019-12-13 10:55:34 +00:00
The Looking Glass Host application for the Guest Virtual Machine.
2019-02-28 05:35:30 +00:00
2019-12-13 10:55:34 +00:00
## What platforms does this support?
2019-02-28 05:35:30 +00:00
2019-12-13 10:55:34 +00:00
Currently only Windows is supported however there is some initial support for Linux at this time.
2019-02-28 05:35:30 +00:00
2019-04-10 12:08:14 +00:00
## How do I build it?
2019-02-28 05:35:30 +00:00
2019-05-22 08:33:04 +00:00
#### For Windows on Windows
2019-05-22 04:59:19 +00:00
2019-12-13 10:55:34 +00:00
1. download and install msys2 x86_64 from http://www.msys2.org/ following the setup instructions provided
3. execute `pacman -Fy` and then `pacman -Sy git make mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake`
4. run "C:\msys64\mingw64.exe"
5. checkout the project
`git clone https://github.com/gnif/LookingGlass.git`
6. configure the project and build it
2019-12-13 10:13:17 +00:00
2019-04-09 06:28:11 +00:00
```
2019-12-13 10:55:34 +00:00
mkdir LookingGlass/c-host/build
cd LookingGlass/c-host/build
2019-04-09 06:28:11 +00:00
cmake -G "MSYS Makefiles" ..
make
```
2019-05-22 08:33:04 +00:00
#### For Linux on Linux
2019-05-22 04:59:19 +00:00
```
mkdir build
cd build
cmake ..
make
```
2019-05-22 08:33:04 +00:00
#### For Windows cross compiling on Linux
2019-05-22 04:59:19 +00:00
```
mkdir build
cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain-mingw64.cmake ..
make
```
2020-05-23 19:06:40 +00:00
## Building the installer
Install NSIS compiler
Build the host program, see above sections.
Build installer with `makensis c-host/installer/installer.nsi`
2019-04-10 12:08:14 +00:00
## Where is the log?
2019-04-10 12:04:36 +00:00
It is in your user's temp directory:
%TEMP%\looking-glass-host.txt
For example:
C:\Users\YourUser\AppData\Local\Temp\looking-glass-host.txt
2019-05-22 08:33:04 +00:00
You can also open it by simply right clicking the tray icon and selecting "Open Log File"
2019-04-10 12:08:14 +00:00
## Why does this version require Administrator privileges
2019-04-10 12:04:36 +00:00
This is intentional for several reasons.
1. NvFBC requires a system wide hook to correctly obtain the cursor position as NVIDIA decided to not provide this as part of the cursor updates.
2. NvFBC requires administrator level access to enable the interface in the first place. (WIP)
3. DXGI performance can be improved if we have this. (WIP)
2019-05-23 04:31:05 +00:00
## NvFBC (NVIDIA Frame Buffer Capture)
2019-04-10 12:08:14 +00:00
2019-05-23 04:31:05 +00:00
### Why isn't there a build with NvFBC support available.
2019-04-10 12:04:36 +00:00
2019-05-23 04:31:05 +00:00
~~Because NVIDIA have decided to put restrictions on the NvFBC API that simply make it incompatible with the GPL/2 licence. Providing a pre-built binary with NvFBC support would violate the EULA I have agreed to in order to access the NVidia Capture SDK.~~
2019-04-10 12:04:36 +00:00
2019-05-23 04:31:05 +00:00
Either I miss-read the License Agreement or it has been updated, it is now viable to produce a "derived work" from the capture SDK.
2019-04-10 12:04:36 +00:00
2019-05-23 04:31:05 +00:00
> 1.1 License Grant. Subject to the terms of this Agreement, NVIDIA hereby grants you a nonexclusive, non-transferable, worldwide,
revocable, limited, royalty-free, fully paid-up license during the term of this Agreement to:
> (i) install, use and reproduce the Licensed Software delivered by NVIDIA plus make modifications and create derivative
works of the source code and header files delivered by NVIDIA, provided that the software is executed only in hardware products as
specified by NVIDIA in the accompanying documentation (such as release notes) as supported, to develop, test and service your
products (each, a “Customer Product”) that are interoperable with supported hardware products. If the NVIDIA documentation is
silent, the supported hardware consists of certain NVIDIA GPUs; and
2019-04-10 12:04:36 +00:00
2019-05-23 04:31:05 +00:00
To be safe we are still not including the NVIDIA headers in the repository, but I am now providing pre-built binaries with NvFBC support included.
2019-04-10 12:04:36 +00:00
2019-05-23 04:31:05 +00:00
See: https://looking-glass.hostfission.com/downloads
2019-04-10 12:04:36 +00:00
2019-05-23 04:31:05 +00:00
### Why can't I compile NvFBC support into the host
You must download and install the NVidia Capture SDK. Please note that by doing so you will be agreeing to NVIDIA's SDK License agreement.
2019-04-10 12:04:36 +00:00
2019-02-28 05:35:30 +00:00
_-Geoff_