Making ACE2 to work on Ubuntu 20.04 LTS
ACE2 is (or was) a software package for contrast transfer function (CTF) estimation and correction. It was written in an early version of objective-c and linked to several libraries of very old versions. As such, on a modern Linux system, such as Ubuntu, you have to do some extra work to get it working after downloading and extracting the ACE2 package.
- ACE2 directly calls for
libobjc.so.2
in the user lib. There are a number of ways to perhaps link a newer version of thelibobjc
shared lib, but an rpm package is available to provide the exact file. As such, download the rpm and extract the files usingrpm2cpio
. Copy the two fileslibobjc.so.2
andlibobjc.so.2.0.0
into/usr/lib/x86_64-linux-gnu
will satisfy the need. - Install
libfftw3-3
andlibgsl23
using apt. Note that the version number may vary depending on which version of Ubuntu you are running. - Install
libgsl-dev
. However, ACE2 directly callslibgsl.so.0
and we have to manually make a symbolic link. Go to/usr/lib/x86_64-linux-gnu
and run the following:
sudo ln -s libgsl.so libgsl.so.0
- Now you should be able to run ace2.exe and ace2correct.exe!
Updated 11/13/2024 to clarify a few libs and make steps version independent whenever possible.