Alright, the problem is just what I kinda thought. It isn't corrupt, it was compiled for the x86 instruction set and I'm trying to get it to run on a DEC Alpha processor. Oh, well, time to find the source (if it exists) and go from there. Thanks Kevin and Rusty, I just learned a little more. > > Ok, with some help (thanks Patrick) I was able to get past a few > > problems in trying to get a program to compile. I was able to > > connect to the CVS server for this packet sniffing program. For the > > past two days I've tried to figure this out to no avail. I tried > > searching Altavista and Google for similar errors to see what fixes > > were tried. No go, so ... > > > > libEQ.a: could not read symbols: File format not recognized > > collect2: ld returned 1 exit status > > make[2]: *** [showeq] Error 1 > > make[2]: Leaving directory `/tmp/showeq-2.1.2/src' > > make[1]: *** [all-recursive] Error 1 > > make[1]: Leaving directory `/tmp/showeq-2.1.2' > > make: *** [all-recursive-am] Error 2 > > > > I tried redownloading both the tar.gz file (since one of the > > developers noticed a problem if Winzip was used) and the cvs version > > (to different directories) and both end with this error. The file > > is present, it is not in source format, just the archive format (I > > think that is what .a files are). So..., Any clue. > > Here are my guesses: > > 1) libEQ.a is an archive library for a different architecture than > what you are building on. > > 2) libEQ.a is corrupt. > > You might try listing the archive library with the ar program to see > what's in it. That'll give you some indication if it's corrupt or not. > Use the following command: > > ar t libEQ.a > > If the above command produces a list of .o files, then try the following: > > ar x libEQ.a foo.o > > where foo.o is one of the object files from the above list. > > Now run ``file'' on the extracted file: > > file foo.o > > It should produce output something like this... > > foo.o: ELF 32-bit LSB relocatable, Intel 80386, version 1, not stripped > > If it says it's stripped, that's no good since you need symbols to do the > linking. > > If the architecture doesn't match the one you're building on, that won't > work either since you need to link object files together which've been > compiled for the same architecture. -- "Intel giveth and Microsoft Taketh Away" - Gordon Moore