Editing WindowsInstall

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
 
= Windows Installation =
 
= Windows Installation =
  
== Binary Installers ==
+
== Current Windows Status ==
 
 
There are a few different unofficial GNU Radio binary installers that are maintained by the community:
 
 
 
1) [http://www.gcndevelopment.com/gnuradio/index.htm Geof Nieboer's installer hosted at gcndevelopment.com]. This is a binary installer for 64-bit Windows 7/8/10 that includes all dependencies for Windows, a custom python distro, commonly used SDR drivers, and several OOT blocks.
 
 
 
2) [https://github.com/ryanvolz/radioconda Radioconda installer]. This binary installer tends to be the most up-to-date but currently includes fewer SDR drivers and OOT modules. It utilizes the <code>conda</code> package/environment manager and provides easy access to thousands of Python and other packages that are not strictly related to GNU Radio. This also lets you stay up-to-date without having to re-install. Since this provides the same [https://conda-forge.org conda-forge] packages available without the installer, the [[CondaInstall|conda install guide]] might be useful for additional instructions, including how to build OOT modules from source.
 
  
3) [https://github.com/pothosware/PothosSDR/wiki/Tutorial Pothos SDR development environment installer]. This binary installer includes GNU Radio, Pothos, CubicSDK, and other tools. It has historically been updated about once or twice per year.
+
Binary installers for 64-bit Windows 7/8/10 are now available [http://www.gcndevelopment.com/gnuradio/downloads.htm here]. These include all dependencies for Windows, a custom python distro, commonly used SDR drivers, and several OOT blocks.
  
== Current Windows Status ==
+
There is also a build available at [https://github.com/pothosware/PothosSDR/wiki/Tutorial] that includes GnuRadio, Pothos, CubicSDK and other tools.
  
Installing core GNU Radio and USRP on Windows is becoming more routine. Many OoT modules may still require compiling locally.  Please report any success or failures. Patches and enhancements are especially welcome!
+
Installing GNU Radio and USRP on Windows is becoming more routine. Please report any success or failures. Patches and enhancements are especially welcome!
  
 
== Windows Porting Issues ==
 
== Windows Porting Issues ==
Line 19: Line 13:
 
Considerable effort has been put into making the GNU Radio code portable among various operating systems, but there are several reasons why it cannot be &quot;simply&quot; compiled and run under Windows:
 
Considerable effort has been put into making the GNU Radio code portable among various operating systems, but there are several reasons why it cannot be &quot;simply&quot; compiled and run under Windows:
  
* The build and install procedures are based on Linux scripts and tools
+
* The build and install procecures are based on Linux scripts and tools
 
* Several third-party libraries are used, each with its own, often system-dependent, installation procedure
 
* Several third-party libraries are used, each with its own, often system-dependent, installation procedure
 
* Most GNU Radio applications must interface to hardware (e.g., a sound card or USRP) which require system-dependent drivers and installation procedures
 
* Most GNU Radio applications must interface to hardware (e.g., a sound card or USRP) which require system-dependent drivers and installation procedures
Line 76: Line 70:
 
=== Chocolatey ===
 
=== Chocolatey ===
  
To quote from the [|https://chocolatey.org/ Chocolatey homepage]: ''Chocolatey NuGet is a Machine Package Manager, somewhat like apt-get, but built with Windows in mind.''.
+
To quote from the [|https://chocolatey.org/ Chocolately homepage]: ''Chocolatey NuGet is a Machine Package Manager, somewhat like apt-get, but built with Windows in mind.''.
  
There are packages for gnuradio (and its dependencies) available in a separate repository (currently the best known source is: https://github.com/ariovistus/chocolatey-packages)
+
There are packages for gnuradio (and it's dependencies) available in a separate repository (currently the best known source is: https://github.com/ariovistus/chocolatey-packages)
  
 
To install, open an '''Administrative''' command line session and run:
 
To install, open an '''Administrative''' command line session and run:
Line 84: Line 78:
 
  iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
 
  iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
  
Now you need to install a ''source'' which has the recipes for gnuradio and dependents. The easiest method is to clone the chocolatey-packages from the github repository listed above (https://github.com/ariovistus/chocolatey-packages), then add the local source from within an Administrative command line session:
+
Now you need to install a ''source'' which has the recipes for gnuradio and dependants. The easiest method is to clone the chocolately-packages from the github repository listed above (https://github.com/ariovistus/chocolatey-packages), then add the local source from within an Administrative command line session:
  
 
  choco source add -name gnuradio -source C:\&lt;path-to&gt;\chocolatey-packages
 
  choco source add -name gnuradio -source C:\&lt;path-to&gt;\chocolatey-packages
Line 103: Line 97:
  
 
Follow the command prompts.
 
Follow the command prompts.
 
=== WSL | Ubuntu === 
 
 
Enable WSL from windows features.
 
 
 
Install Ubuntu 20.04 (or newer) from Microsoft Store.   
 
 
 
Using the Ubuntu terminal, install gnuradio as you would on linux [https://wiki.gnuradio.org/index.php/InstallingGR#Ubuntu_PPA_Installation]. If you want to develop GNU Radio's core you will need to build GNU Radio from source.
 
 
==== WSL 1/2 (before WSLg) ====
 
 
Install additional package "libgtk-3-dev" 
 
 
 
  sudo apt install libgtk-3-dev
 
 
 
WSL 1 and 2 (before WSLg) do not have an X server for displaying graphical applications. Install an X server, either VcXsrv [https://sourceforge.net/projects/vcxsrv/] or Xming [https://sourceforge.net/projects/xming/] as WSL does not come with an X server. VcXsrv is recommended as it is open source and self-contained instead of being tied to Cygwin, whereas Xming "asks for donations" to the developer as a dubious "sale" for non-existent support.
 
 
Launch VcXsrv, making sure to select "Disable access control" option in the Extra settings so that any application can export to X11.
 
 
 
Edit '''bashrc''' to set up the display by adding the following lines at the bottom of the file. 
 
 
'''WSL1:'''
 
 
  # X11 forwarding for Windows
 
  export DISPLAY=:0.0
 
  export LIBGL_ALWAYS_INDIRECT=1
 
 
'''WSL2:'''
 
 
  # X11 forwarding for Windows
 
  export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0
 
  export LIBGL_ALWAYS_INDIRECT=1
 
 
Restart the Ubuntu terminal and run 
 
  gnuradio-companion
 
 
==== WSLg ====
 
 
Currently in early testing stages, the WSLg update contains a Wayland graphics server and X interface layer allowing graphical applications to run without extra setup.
 
 
From the Ubuntu terminal run 
 
  gnuradio-companion
 
 
=== Using an Azure VM ===
 
 
Another way to generate a GNU Radio environment if you're using Windows, is to create an Azure Virtual Machine running Ubuntu Server 18.04 LTS.
 
 
If you already have an existing Azure account you can follow the instructions here[https://docs.microsoft.com/en-us/azure/virtual-machines/linux/quick-create-portal] to create an Ubuntu VM using the Azure portal.  Otherwise, you can sign up for an account here[https://signup.azure.com]. Azure provides free accounts for students[https://azure.microsoft.com/en-us/free/students/] with a limited set of credits.
 
 
Once your VM is created you should be able to SSH into it, to install a desktop environment. Full instructions can be found here, but in summary:
 
Install xfce
 
  sudo apt-get update
 
  sudo apt-get -y install xfce4
 
Install xrdp as a remote desktop server
 
  sudo apt-get -y install xrdp
 
  sudo systemctl enable xrdp
 
Configure xrdp to use xfce
 
  echo xfce4-session >~/.xsession
 
Restart the xrdp service
 
  sudo service xrdp restart
 
 
You will need to create a local password for your Linux VM (on top of your existing SSH key), and open port 3389[https://docs.microsoft.com/en-us/azure/virtual-machines/windows/nsg-quickstart-portal] on the VM.
 
 
Finally you can use a remote desktop client, such as Remote Desktop Connection to connect to your VM and follow the instructions for GNU Radio on Ubuntu found here[https://wiki.gnuradio.org/index.php/InstallingGR#Ubuntu_PPA_Installation].
 
  
 
== Known Windows Build Issues ==
 
== Known Windows Build Issues ==
  
 
So far, we have workarounds for all reported problems:
 
So far, we have workarounds for all reported problems:
 
+
- I got the following error after a clean install "This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.". I fixed this by finding qwindows.dll on my PC (for me it was in C:\Program Files\GNURadio-3.8\bin\platforms\), creating a new directory C:\Program Files\GNURadio-3.8\bin\plugins\platforms, and copying the 4 DLLs to C:\Program Files\GNURadio-3.8\bin\plugins\platforms (I had to create the "....plugins\platforms\" sub-directory). I'm sure there's a more elegant fix, but this seems to work.
* I got the following error after a clean install "This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.". I fixed this by finding qwindows.dll on my PC (for me it was in C:\Program Files\GNURadio-3.8\bin\platforms\), creating a new directory C:\Program Files\GNURadio-3.8\bin\plugins\platforms, and copying the 4 DLLs to C:\Program Files\GNURadio-3.8\bin\plugins\platforms (I had to create the "....plugins\platforms\" sub-directory). I'm sure there's a more elegant fix, but this seems to work.
 
  
 
[[Category:Installation]]
 
[[Category:Installation]]

Please note that all contributions to GNU Radio are considered to be released under the Creative Commons Attribution-ShareAlike (see GNU Radio:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)