**THE GEAR:**

* Midtower running Ubuntu 14.04 for the host
* An HP t610 Thin Client running a stripped-down embedded copy of Windows 7 and VMWare. Note that the client factory resets with every boot.
* DAC is a Behringer U-Control UCA202 which outputs the host's audio via USB on the client to my hi-fi.

**CURRENTLY USING:**

I tried NoMachine but it has a few key problems:

NoMachine fails to detect any display devices half the time I connect, so I'm stuck with 320 x 240 default resolution. 

It [lacks support for client USB devices when connecting to Ubuntu 14.04](https://www.nomachine.com/TR11L04682). As I use a USB DAC for this music workstation it rules the service out as an option. 

**SO FAR I'VE EXPLORED:**

NoMachine - (see above)

TightVNC - miserable performance; best for remote viewing only with no input devices

RealVNC - sluggish refresh rate at all quality settings. No USB sound support

VMWare - not avail. for Windows

Vinagre - not avail. for Windows

Remmina - not avail. for Windows

KRDC - not avail. for Windows

Are there any viable solutions to pair an Ubuntu host with a Windows 7 client with remote USB support?
['https://askubuntu.com/questions/700963', 'https://askubuntu.com', 'https://askubuntu.com/users/474069/']
There are only executable versions of Concorde and Linkern, not less, not more.

Compile your own version:

```
mkdir -p ~/src
cd ~/src
wget http://www.math.uwaterloo.ca/tsp/concorde/downloads/codes/src/co031219.tgz
tar xf co031219.tgz
cd co031219
./configure
make

```

There is no rule to install (`make install`). All needed binaries are in subfolders of the source folder:

> 
> This builds the concorde library (concorde.a), header file
>  (concorde.h), and several executable programs, including:
> 
> 
> 
> ```
> TSP/concorde the TSP solver
> LINKERN/linkern the Lin-Kernighan TSP heuristic
> EDGEGEN/edgegen generates edge sets
> FMATCH/fmatch solves fractional 2-matching problems
> 
> ```
> 
> NOTE that to build the concorde TSP solver (for the exact solution of
>  TSPs), you must specify an LP solver in the configure step (either
>  QSopt for CPLEX).
> 
> 
> A short help menu for each of the executable codes can be obtained by
>  executing the code without any option, for example "concorde". A
>  typical way to run the concorde solver is to use: "concorde
>  myprob.tsp" where myprob.tsp is a TSP instance in TSPLIB format. To
>  test the concorde solver run "concorde -s 99 -k 100" (this should
>  generate and solve a random geometric TSP on 100 points).#
> 
> 
> 

[Source](http://www.math.uwaterloo.ca/tsp/concorde/DOC/README.html)
The instructions by @A.B. above are correct, but they do not include a description of how to install an LP solver. An LP solver is necessary to solve the TSP exactly using concorde.

To install an LP solver on Ubuntu, download the BETA version of qsopt from here: <http://www.math.uwaterloo.ca/~bico/qsopt/beta/index.html> (all the files listed under **Red Hat Linux, gcc 3.4.3 (AMD 64-bit)**) and put them in a directory on your machine. Then go to the unzipped concorde folder and run `./configure --with-qsopt=<full path to qsopt files>` making sure NOT to include a trailing / after the full path.

Next just run `make`. After that, cd into TSP and try running `./concorde -s 99 -k 100`

Good luck!