Installing, and building on Lubuntu
- Installing the OS
- Build environment
- Build dependencies
- Preparing the home directory to build the fldigi family of applications.
- Getting the source
- Compiling fldigi
- Installing the binaries
- Building and installing the other programs
- Desktop keyboard behavior
- Pulse Audio Volume Control
- Making things spiffy :>)
- Last step
Installing the OS
- Download the current ISO image from http://lubuntu.net/. Unless you are ready to rebuild various drivers I would recommend using the 32 bit image even if your computer is capable of 64 bit operation.
- Create the CDROM as a bootable image of the ISO.
- Test drive the CD by booting from it (do not install yet).
- Reboot the computer to your original OS.
- If you are going to install Lubuntu as a dual boot with Windows on a single hard disk then you should compact the drive using the appropriate Windows program. Note the amount of free space on the hard drive. The Lubuntu installation can get by with a 20 GByte partition.
- Reboot the computer from the Lubuntu CD and select install. The CD has installation software which will re-partition your hard drive if this is a single hard drive installation.
- It will also create a new boot sector with a grub2 loader. The installation of the boot sector program should find you current Windows OS and make it selectable when your boot the computer. The new Lubuntu will be the default, but you can change that after the installation is complete. Refer to the Lubuntu / Ubuntu web sites for help on the OS installation.
Lubuntu does not install the GNU compilation tools needed to build the fldigi family of applications.
- Open a command line terminal and enter the following sequence of commands
cd /etc/apt sudo nano sources.list
- Insert the following at the end of the file
deb-src http://us.archive.ubuntu.com/ubuntu precise main deb-src http://us.archive.ubuntu.com/ubuntu precise restricted deb-src http://us.archive.ubuntu.com/ubuntu precise universe deb-src http://us.archive.ubuntu.com/ubuntu precise multiverse deb-src http://us.archive.ubuntu.com/ubuntu precise-updates main deb-src http://us.archive.ubuntu.com/ubuntu precise-updates restricted deb-src http://us.archive.ubuntu.com/ubuntu precise-updates universe deb-src http://us.archive.ubuntu.com/ubuntu precise-updates multiverse
- Close and save with keyboard combinations, ctrl-O ctrl-X
- Enter the following sequence of commands
sudo apt-get update sudo apt-get install build-essential sudo apt-get install geany sudo apt-get install libjpeg-dev sudo apt-get install libxft-dev
The first command will install the GNU c/c++ compiler-linker. The second will install a very nice programmer's editor named "Geany." You can use Geany to examine various source code files with the code syntax highlighted in color. The last two will insure that required libraries needed by fltk are available. These libraries are essential for fldigi and the other flxxx programs User Interface to employ clear crisp fonts.
Install the build dependencies for the version of fldigi in the Lubuntu repositories:
sudo apt-get build-dep fldigi
The above command will install the packages that are needed to build the repository version of fldigi and all of the other fl_xxx applications you can download from the w1hkj.com web site. Those packages will also enable you to build a full-featured binary of the latest version.
However. If your distribution already has a reasonably up to date fldigi (i.e., any 3.x version), then you can just perform the above command without needing to go and check things in Synaptic first.
Preparing the home directory to build the fldigi family of applications.
I recommend maintaining a set of directories directly in your home directory.
cd mkdir tarballs mkdir app-src
The tarballs directory will be used to contain all of the compressed source code files (tarballs).
The app-src directory will be used to contain the decompressed source code directories.
Getting the source
Download the latest source tarball.
- If you use a browser to obtain the files be sure to save the file to the
- You can obtain the latest source code without leaving the command line terminal:
cd cd tarballs wget http://www.w1hkj.com/downloads/fldigi/fldigi-3.21.70.tar.gz
The current version of fldigi is 3.21.70. You may need to change the version number in the future.
The source tarball contains all the files needed to compile fldigi.
cd ../app-src tar xzf ../tarballs/fldigi-3.21.70.tar.gz
You should now have a source directory for fldigi-3.21.670 in your app-src directory.
At this point you will have a source tree extracted from the tarball containing a configure script. The following command will prepare the source for compilation:
cd ~/app-src/fldigi-3.21.70 ./configure
The configure command generates the Makefiles that make uses to run the compiler and linker. configure has various options to fine-tune the build; you can see a list by running:
For more information about configure, required library versions, etc., refer to the INSTALL file contained in the source tree.
Some often-used configure switches for fldigi are listed below:
- Enables some compiler flags that can increase performance on modern x86 CPUs. If you have a recent gcc, use --enable-optimizations=native. Otherwise, use the highest SSE version supported by your CPU (you can check by running cat /proc/cpuinfo). SSE2 should give a nice speedup on all recent processors.
Check the configuration summary printed by configure to ensure that fldigi will be built with the required features. If a feature that you want is disabled, you are probably just missing a library development package that can be found in your distribution's repositories.
When you are happy with the build configuration run this command to compile the binaries:
Installing the binaries
When the compilation is finished, run this command to install fldigi.
sudo make install
This command will install the fldigi and flarq binaries, manual pages, icons and desktop launchers. If you install to the default /usr/local (or other appropriate directory on your system), you should see icons for fldigi and flarq in your Lubuntu "Internet" menu.
Remember too: To add yourself to the dialout group Serial Port Setup Or, you won't get any rig or PTT control to work!
Do not remove the source tree directory. You will be able to remove all files installed by make install with:
sudo make uninstall
Building and installing the other programs
flrig, flmsg, flwrap and fllog are just as easy to build and install
cd ~/tarballs wget http://www.w1hkj.com/downloads/flrig/flrig-1.3.11.tar.gz wget http://www.w1hkj.com/downloads/flmsg/flmsg-1.1.29.tar.gz wget http://www.w1hkj.com/downloads/flwrap/flwrap-1.3.4.tar.gz wget http://www.w1hkj.com/downloads/fllog/fllog-1.1.6.tar.gz wget http://www.w1hkj.com/downloads/flamp/flamp-1.0.01.tar.gz
Be aware that version #'s may change. Use your browser to look at any one of the downloads directories on the w1hkj.com web site. Simply enter the pathname of the url in your browser url line:
Build and install the application:
cd ~/app-src tar xzf ../tarballs/flrig-1.3.11.tar.gz cd flrig-1.3.11 ./configure make sudo make install
- Note: If you only have a single fldigi or single flrig etc source directory you can simplify moving to the source code top level directory. If you are currently in the app-src directory
pwd cd flrig*will put you in the correct directory. The "pwd" command simply echos the current directory to your terminal.
Repeat the above for flmsg, flwrap and fllog.
All of the applications are then available on your system "Internet" menu.
Desktop keyboard behavior
Lubuntu uses the F11 key as a quick method to change an application dialog to full screen mode. That's OK, but it prevents fldigi from using all of the function keys for macros. The fix is easy.
cd cd .config/openbox ls
You should see a file named something like "lubuntu-rc.xml". This is the file that the desktop manager reads and uses to configure it's operation. Open the file using the previously installed programmer's editor, Geany.
geany lubuntu-rc.xml (or the named xml file in your directory)
Search for the string "F11". It should read <keybind key="F11"> Change that to read <keybind key="A-F11"> which will then allow you to use the alternate-F11 combination for the full screen short cut. The desktop manager will pass the F11 key on to the application (fldigi).
Pulse Audio Volume Control
The Ubuntu derived distributions do not seem to install the Pulse Audio Volume Control by default. You will need the volume control to elegantly complete the interface between the audio stream and fldigi. Pulse Audio Volume Control remembers the mixer settings and the audio codec associated with an application; very important for fldigi.
sudo apt-get install pavucontrol
Making things spiffy :>)
System Hamradio Menu
So ... everything is up and running but you want to streamline the desktop and launching the applications. The first to do is to add a new system menu "Hamradio"
sudo apt-get install extra-xdg-menus
It takes a few seconds to download and install and you now have a new system menu "Hamradio" fully populated by the fl_xxx apps that you have installed.
Desktop Launch Icons
Adding a launch icon to the desktop is sublimely simple. Open that new Hamradio menu and right click on the application you want to put on the desktop. Select "Add to desktop" ... done!
Panel launch icons
Adding one of the fl_xxx application launchers to the panel bar at the bottom of the screen is equally simple.
- right click on the area just to the right of the "Swallow" button.
- select "Add / remove panel items"
- select the upper-most "Application Launch Bar"
- click on the "Edit" button
- A new dialog opens ... expand the "Hamradio" item in the right hand scroll box
- Select the desired application, ie: Fldigi
- Press "Add" ... the icon is added to the left hand box and also appears on the system panel at the bottom of the screen.
- Move the location of items on the panel by clicking on the item to be moved and then pressing the "Up" or "Down" button as appropriate.
- Close the dialog
You can now launch fldigi with a single click on the panel icon.
Your last step should be to add yourself to the dialout group Serial Port Setup