I am trying to cross compile for the 'aarch64' architecture from my ubuntu 12.04 desktop which is 64 bit (x86_64).

So i installed the crosscompiler-toolchain for 'aarch64' with the 'synaptic package manager'.

Now i am trying to build one linux package from source, but the error i am getting while building this package is:

can not find -lpopt ..

So, how do i get 'libpopt.a/.so' for the named aarch64 - architecture ? Is there any source for 'libpopt' available which i should cross compile for aarch64 and then use this library for building my package ..

Any input is highly appreciated.

2 Answers 2


As far as i can see, there is no libpopt package for aarch64. So you may simply compile it, using your cross-compiler toolchain, and add the resulting library to the already introduced linker path (or vice versa).

The sources are at:

  • ok any list of steps to compile this package..i can't see any makefile in there .. Feb 27, 2016 at 19:30

The build system of popt-1.16 (latest version AFAICT) is not quite compatible with AArch64 cross-target. But the incompatibility is simply at the stage of trying to fixup the platform triplet to some standard form, so you can trivially fix it. Here's how I managed to cross-compile it (similarly to CLFS, I'm assuming you've extracted the tarball and cd'ed into the directory):

sed -i 's@^\(.* | armv\[.*\) \\@\1 | aarch64 \\@' config.sub
./configure --build=i686-cross-linux-gnu \
            --host=aarch64-linux-gnu \

After that you can do make DESTDIR=/your/destination/dir install to install.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .