Friday, March 9, 2018

Topspin 3.5PL6 and my Fedora 27 box

AU programs and Compilation


Since the AU compilation issues have been vexing me for a while, I moved in the direction of creating couple of CentOS 7 virtual machines to run Topspin, hopefully with no issues.  My previous posts in relation to Topspin3.5 on CentOS 7 were driven by this workaround.

The bad news is that, even within the CentOS 7 (both 32 bit and 64 bit), I have been running into AU compilation errors.  This pointed to a common source of the pain and so I decided to take a stab at making TS3.5PL6 play nicely with my Fedora 27, once again.

The good news is that, it works !

The take home message is that :

  • Bruker did make progress to keep up with the current advances in the Linux world, by providing a systemd unit file to start the bruker license manager script at boot time. 
  • But, not all the components of the Topspin software (upto 3.5, that is) have been ported to play well with 64 bit libraries.
Example Case :

If you get an error message similar to the following, when you compile a stock AU program, this means that, you are still missing the 32 bit libraries.

 cplbruk : Compilation of angle failed with exit(1)
09-13:42:33.098   external cmd from "/usr/bin/ld: cannot find crt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: cannot find -ldl
/usr/bin/ld: cannot find -lm
/usr/bin/ld: cannot find -lc
/usr/bin/ld: cannot find crtn.o: No such file or directory


It turns out that the linker is missing some of the libraries such as crti.o from /usr/lib tree, even though they do exist in /usr/lib64. 

Solution

 Fedora 27 :

dnf install glibc-devel.i686 

did it for me.  You can now check that indeed the object libraries crt1.o and crti.o are found in /usr/lib.

 
 
 

No comments:

Post a Comment