Latest LQ Deal: Complete CCNA, CCNP & Red Hat Certification Training Bundle
Go Back > Forums > Linux Forums > Linux - Newbie
User Name
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!


  Search this Thread
Old 07-11-2009, 11:17 AM   #1
LQ Newbie
Registered: Jul 2009
Posts: 7

Rep: Reputation: 0
How to get *.a files for different versions of linux?

I'm trying to get all *.a files from different versions of linux. It's for a pattern matching project I'm doing and I can't quite seem to find an easy way other than downloading VMWare images of each version of linux and extracting the *.a files from there. I was wondering if there might be some convenient place where different versions of *.a are stored? Thanks.
Old 07-12-2009, 07:41 AM   #2
Registered: Jan 2009
Location: /dev/ph
Distribution: Fedora, Ubuntu, Redhat, Centos
Posts: 299

Rep: Reputation: 62
I was wondering if there might be some convenient place where different versions of *.a are stored?
Old 07-12-2009, 08:13 AM   #3
LQ Veteran
Registered: Nov 2005
Location: Annapolis, MD
Distribution: Arch/XFCE
Posts: 17,802

Rep: Reputation: 738Reputation: 738Reputation: 738Reputation: 738Reputation: 738Reputation: 738Reputation: 738
I have probably installed 30 different versions of Linux and I have NEVER seen a file ending in ".a"----OK, I just did a search and found some.....

What is the signficance of the ".a", and why do you need to do this?
Old 07-12-2009, 12:01 PM   #4
LQ Newbie
Registered: Jul 2009
Posts: 7

Original Poster
Rep: Reputation: 0
It's because I need the *.a library files(libc.a and the like) to make binary pattern signatures to aid in reverse engineering statically linked binaries. They're usually located in /usr/lib. Really, is there no good way other than installing each and every version of linux and extracting the files from there? That would be my last resort but I hope someone knows a more easier way.

Last edited by wringer; 07-12-2009 at 12:04 PM.
Old 07-12-2009, 12:49 PM   #5
Registered: Jun 2006
Location: Belarus
Distribution: Debian GNU/Linux testing/unstable
Posts: 471

Rep: Reputation: 40
Every file in binary linux distributions belongs to some package, and all packages are freely available from the internet. You should find out the package you need, download it and unpack.
e.g. for debian you can visit official web-site.
Old 07-12-2009, 01:51 PM   #6
Gentoo support team
Registered: May 2008
Location: Lucena, Córdoba (Spain)
Distribution: Gentoo
Posts: 4,074

Rep: Reputation: 386Reputation: 386Reputation: 386Reputation: 386
Just download the packages for the distros you want and compare them.

That will not help with source based distros or metadistros, like Gentoo or LFS, though.
Old 07-12-2009, 02:05 PM   #7
LQ Newbie
Registered: May 2006
Location: Sweden
Distribution: Custom
Posts: 12

Rep: Reputation: 1
These days static linking is strongly discouraged - for reasons related to security and space saving - but some distributions still ship static libraries (.a files), usually you'll find these in dev packages (Debian-family of distributions) and Slackware also keeps these around in some cases. You can convert packages to tar.gz archives with tools like rpm2tgz (for .rpm's) and deb2targz (for .deb's) which would allow you to get your hands on the libraries without the need to install each and every distribution. Once converted simply extract these with "tar xzvf <packagename>.tgz". Slackware's tgz files can easily be extracted with the same tar command without any conversion (same goes for CRUX, I believe). If you want to go deeper and extract the object code from the static library then the command "ar x libc.a" will do the trick.

Last edited by overlook; 07-12-2009 at 02:23 PM. Reason: Typo
Old 07-13-2009, 03:52 AM   #8
LQ Newbie
Registered: Jul 2009
Posts: 7

Original Poster
Rep: Reputation: 0
Hey thanks for the replies. I think I should've elaborated more. My intention was to get the libcs contained for different version 'numbers' of a certain linux distro. i.e. libc.a for ubuntu 7.04, 7.10, 8.04, 8.10 etc... I've followed your advice and was able to find different versions of *.a files for some distros, but other distros only contained the packages of the latest release. So I decided to download VMware images of different versions of all the distros on a site where they provide VMware images. Thanks for all the advice!


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] Ubuntu versions and Repositorie files NewbieMark Ubuntu 6 10-18-2007 03:27 AM
gcc versions compatibility with kernel versions.. mahesh_manthapuri SUSE / openSUSE 1 03-22-2006 12:28 AM
versions of linux? tnelson42345 Linux - Software 3 12-01-2005 09:56 AM
linux versions dataport Linux - Software 10 01-26-2004 09:04 AM
are vanilla versions of configuration files available benanne12 Red Hat 6 09-18-2003 06:06 PM > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 12:07 AM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration