14 July 2017

I've been doing some compiling

I've done compiling now and then for quite a few years. Compiling is converting source code into a usable program. In the Linux world that means producing a 'package' as the end product.
Recently, I made some Gimp plugins for the current long term Ubuntu (16.04) that were not available. I had some success with Gimp-gap (Gimp Animation Package) and it was seriously difficult. I wrote about it here.
The problem is that gimp-gap is 'multimedia' software with many different codecs and dependencies. In the Linux world this is called 'dependency hell'.

Compiling really gives the brain a workout because mostly the source code fails to build and ends with an arcane error message in the terminal. Your main tools are a command terminal and a text editor. You must also refer to the net to search for similar error messages. RedHat Linux uses a different packaging system called 'RPM' and in some cases I look at the RPM 'spec file' to see what they did to compile the program.

I have not fully compiled MathMap under Ubuntu yet but I did convert a RedHat RPM of Mathmap into an Ubuntu 'Deb' pack using Alien. Alien is a brilliant piece of work and I also added some extra filters using the 'repack' method.

It's good when it finally compiles and you have software that can be used around the world on similar systems.
Compiling also makes you aware of the strengths and weaknesses of computer operating systems. For example Ubuntu/Mint/Debian has it's own library naming system which can be frustrating. No wonder Linus Torvalds doesn't use Debian-based systems? On the plus side Ubuntu/Debian system are relatively fast with excellent security. At some point I may go back to using RedHat. I used Mandrake until it morphed into Mandriva. Teaching myself Unix was one of the best things I ever did because it future-proofed my tech skills. Check-out http://distrowatch.com/

Recently I gave-up on a compiling a project called 'FFMultiConverter'. Although a small program, it needed a huge number of support files when installed. It's written in Python and is not available for later versions of Ubuntu. I settled on using WinFF to do my video converting tasks. I may go back to compiling FMultiConverter when I get my head around loading Python libraries on Ubuntu.

I actually want to upload more animations but I also don't want to slow down my blog page with all the graphics so I achieved both with this post.

No comments: