Back to academic signature homepage

Building on the Raspberry Pi/Raspbian(stretchy)     

Unfortunately as of today (Mar 19, 2019) in the current Raspbian(stretchy) the wxWidgets binary that ships with the distribution appears to be subtly broken. The situation is very similar to the situation in Ubuntu cosmic cuttlefish. 
Firstly, academic signature compiles and builds without error. But as a result of the subtle error, during execution the execution is progressively slowed down to the unusable. 
(It looks like there has something gone wrong with wxWidgets's wxThread functions, since with this subtly broken binary of wxWidgets, academic signature apparently runs only monothreaded despite the multithreaded code and resource consumption grows successively during execution.)
Downloading, compiling and installing the current stable Update of wxWidgets 3.0.4 produces defect binaries and doesn't improve the situation. However using the legacy version 3.0.2, compiled from the wxwidgets source on the raspbiasn using the defaults worked perfectly (the shipped binary did not).
But instead of downgrading I recommend to use the development version wxWidgets 3.1.2 which works flawlessly.

The procedure to install Academic Signature on the current Raspbian is shown below:
-> 1.) Open a terminal and type "sudo apt-get update"

-> 2.) Install the developer libraries of GTK with:
  "sudo apt get install libgtk2.0-dev"
and install automake with "sudo apt-get install automake"

-> 3.) Download the source of wxWidgets 3.1.2 and expand it into a dedicated folder of your choice, e.g. to "~/Downloads/wxWidgets"

-> 4.) Enter the directory of wxWidgets in a terminal and create a directory e.g. with name "built_gtk" 

-> 5.) Enter this directory in the terminal and type: 
../configure" or optionally 
../configure --disable-debug --enable-unicode --disable-shared --with-gtk"  instead.
-> 6.) type  
"make release"   (this will take a while) 

-> 7.) type  
"sudo make install"  and then "sudo ldconfig"  

this should have fixed wxWidgets by now. It is time then to build Academic-Signature
-> 8.) Download the tar.gz archive of Academic Signature source code version 56 or higher. 

-> 9.) Download my digital singature of the tar archive and verify my signature. 

-> 10.) Expand the tar-archive into a dedicated folder of your choice. 

-> 11.) Same procedure as usual: Open a terminal and cd to the directory, then type "./configure". In case configure complains about a missing package (it shouldn't), supply it. Then type in the terminal "make -release". This should take some minutes on the raspberri pi, produce the binary and finish without errors. I recommend to use the resulting local copy for production use. If you prefer a systemwide installation, you might type "sudo make install" and put an icon on the desktop to call the binary, which had been copied into the directory /usr/local/bin/ by this command. In this case make sure that the working directory you specify contains the needed image files "unterschrift.png" and "elliptic_m5_p4_360e_a.png", otherwise aca_sig will complain about missing images on being called. You may pick an icon of your choice from aca_sig's root directory(e.g. aca_sig_icon.png) to decorate the launcher.

This source archive will use restricted optimization -o1 only because -o2 and -o3 fall victim to a bug in g++ on a Linux 64bit. On the ARM system of the raspberry pi the bug is absent and you could hike up optimization to -o3. But this is unneccesarry: You wouldn't notice any change in execution times.