LinuxQuestions.org
Latest LQ Deal: Linux Power User Bundle
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
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!

Notices


Reply
  Search this Thread
Old 07-11-2009, 12:17 PM   #1
wringer
LQ Newbie
 
Registered: Jul 2009
Posts: 7

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


Hi,
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, 08:41 AM   #2
fpmurphy
Member
 
Registered: Jan 2009
Location: /dev/ph
Distribution: Fedora, Ubuntu, Redhat, Centos
Posts: 297

Rep: Reputation: 62
Quote:
I was wondering if there might be some convenient place where different versions of *.a are stored?
Nope
 
Old 07-12-2009, 09:13 AM   #3
pixellany
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, 01:01 PM   #4
wringer
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 01:04 PM.
 
Old 07-12-2009, 01:49 PM   #5
Samotnik
Member
 
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 http://debian.org/distrib/packages official web-site.
 
Old 07-12-2009, 02:51 PM   #6
i92guboj
Gentoo support team
 
Registered: May 2008
Location: Lucena, Córdoba (Spain)
Distribution: Gentoo
Posts: 4,063

Rep: Reputation: 381Reputation: 381Reputation: 381Reputation: 381
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, 03:05 PM   #7
overlook
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 03:23 PM. Reason: Typo
 
Old 07-13-2009, 04:52 AM   #8
wringer
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!
 
  


Reply


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 04:27 AM
gcc versions compatibility with kernel versions.. mahesh_manthapuri SUSE / openSUSE 1 03-22-2006 01:28 AM
versions of linux? tnelson42345 Linux - Software 3 12-01-2005 10:56 AM
linux versions dataport Linux - Software 10 01-26-2004 10:04 AM
are vanilla versions of configuration files available benanne12 Red Hat 6 09-18-2003 07:06 PM


All times are GMT -5. The time now is 01:14 AM.

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