WSJT-X: Hmm…upgrades.

From The Matrix: Reloaded

I recently figured out how to use JT65 and JT9. As you may know, I run my shack from a Raspberry Pi 3. Initially, I installed the WSJT-X program from the Raspbian repositories using apt-get install. It’s an older version (1.1) but I was new and just wanted to try it out. It’s a great mode for when band conditions aren’t great, or when you want to operate, but also have other things to thing about.

Anyway, news arrived recently that a new, major upgrade to the software was available which not only improves the JT modes, but adds a couple of new things. Naturally, I wanted to try it out. There is a .deb package available, but sadly, it will not install on the Pi’s ARM architecture. Building from source it is…

Download the source code

You can get the source code archive here. Or go visit the WSJT-X home page to see if there is a newer release. In any case, put the .tgz file wherever you want it and unpack it with
tar xvzf wsjtx-1.7.0.tgz
cd wsjtx-1.7.0

Install Dependencies

Open up the INSTALL text file and read the dependency requirements. You’ll need all of the listed packages, and fortunately, they can be installed with apt. However, I found the Qt requirement was easier to set up with the Raspbian Add Software utility. Go to the Raspberry menu, select Preferences > Add / Remove Programs. I found this part to be an exercise of trial and error, getting all dependencies satisfied. The INSTALL file in the source folder is pretty good for getting you sorted out.

Add software
Add programs with the software utility

Build the application

You’ll want to make a subdirectory within the source directory for the files generated during the build process:
mkdir wsjtx-build
cd wsjtx-build

Now you’re inside the build directory (which you can call whatever you want…I chose wsjtx-build), so you can set up configuration for the build process with

cmake ..

The two dots tell the cmake compiler to look one directory level up for the actual source code. Change this to the actual path to the code if you are using a different file structure. If you have any remaining dependency issues, this is when you’ll find out. If the configuration process chokes, look up a few lines in the output for information about what it is missing. If it seems like you installed whatever it’s complaining about, try installing the development files for that package (i.e. package_name-dev).

Once the configuration finishes successfully, you’re ready to actually build the application. Assuming you’re still in the wsjtx-build directory, you can kick off the compiler with
cmake --build .

The dot at the end tells the compiler to build in the current directory. If you run the compiler from a directory other than where your configuration files are located, use that path instead of the dot. This will take a few minutes, but you’re almost done.

Install the application

Once the application is compiled, all that’s left is to install all the pieces in the right places on your system. Do that with
sudo cmake --build . --target install

You’ll need to use sudo here, because the installation needs to move files to system directories for which the normal pi user probably doesn’t have write permissions. Again, if you’re in a directory other than the wsjtx-build directory, substitute the build path for the dot in the above line.

Test it out!

WSJT-X on Pi 3
WSJT-X 1.7.0 up and running on my Raspberry Pi 3

If all went well, you should be able to start the program from the command line by simply typing wsjtx. Id found out that the current version seems to be happier after I removed version 1.1 that I had installed from the apt repositories. Also, the hamlib libraries that WSJT-X uses for CAT control seems to work best when it’s only responding to one program at a time. I have the excellent CQRLog installed, which uses hamlib as well, so I have to disable CAT control in CQRLog if I am going to run WSJT-X.

I hope that works for you. If you get it going, look for me on the bands well below the noise!



3 thoughts on “WSJT-X: Hmm…upgrades.

  1. I have WSJT-X running on my Raspberry Pi 3 and it works beautifully. The only downside is integration with other apps and getting the QSO’s to my QRZ and HRDLog account.

    It really works great on the Pi though.


    Rich, K0PIR

  2. hi Scott thanks for the super-easy howto. I’m not newbie about compiling but I didn’t been using linux for almost 10 years. Now returning because the Raspberry fever. I’ having some trouble to finish the binary. Can you help me with this?
    Makefile:453: recipe for target ‘/home/pi/Downloads/wsjtx-1.7.0/wsjtx-build/hamlib-prefix/src/hamlib/doc/’ failed
    make[4]: *** [/home/pi/Downloads/wsjtx-1.7.0/wsjtx-build/hamlib-prefix/src/hamlib/doc/] Error 127
    Makefile:567: recipe for target ‘all-recursive’ failed
    make[3]: *** [all-recursive] Error 1
    CMakeFiles/hamlib-install.dir/build.make:65: recipe for target ‘hamlib-prefix/src/hamlib-stamp/hamlib-build’ failed
    make[2]: *** [hamlib-prefix/src/hamlib-stamp/hamlib-build] Error 2
    CMakeFiles/Makefile2:227: recipe for target ‘CMakeFiles/hamlib-install.dir/all’ failed
    make[1]: *** [CMakeFiles/hamlib-install.dir/all] Error 2
    Makefile:83: recipe for target ‘all’ failed
    make: *** [all] Error 2


    1. Hi Gaston,
      I’m not sure I’ll be much help with this. Do you have hamlib installed? It looks like maybe the compiler is looking hamlib in the wrong directory, or possibly that you need the hamlib-dev packages?

      73, and I hope you get it sorted out!

Leave a Reply

Your email address will not be published. Required fields are marked *