Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Questions about *.a files on windows

  1. Nov 12, 2014 #1


    User Avatar

    I downloaded strawberry pearl and I was looking through the library files, they are in .a files which according to google is a unix archive file type?

    I have seen them in use in other places as well and I want to learn more about them, but I don't have unix running

    How can I go about opening this types of files? To look at their contents

    Thank you
  2. jcsd
  3. Nov 13, 2014 #2

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    unix archive files can have any suffix, but the usual one is ".ar"
    the .a files are likely "static libraries", sort of program fragments made from .o (object code) files.

    To learn more about how UNIX does things, but without the expense, you could consider solaris or some form of linux.
  4. Nov 13, 2014 #3


    User Avatar

    Thank you for the reply. There are other files I am interested in - they have a different header when I open them in a hex editor. For example the lib files
    have "!<arch>./ ", and these particular files have variations on "ARCH000..1..ý..á", all beginning ARCH000, is this some kind of custom archive?
  5. Nov 13, 2014 #4


    User Avatar

    Staff: Mentor

    The .lib files may be "dynamic libraries" as opposed to the "static libraries" that Simon mentioned.
  6. Nov 13, 2014 #5


    User Avatar

    Oh okay but my interests are the differences between these two files that have the same extension but seem to be different

    The extension is .a
  7. Nov 14, 2014 #6
    Well...I just googled "strawberry perl" is a Perl environment for Windows (downloaded and installed for the heck of it).

    But (wikipedia) Perl was invented for Unix back in 1987...so, for they to provide you with as UNIX experience as possible on Windows, they have packaged a few things in your download package, including a minimalistic "unix-like" envrionment called MinGW (refer to installation directory C:\perl\c\i686-w64-mingw32\bin) and a bunch of unix utilities including the command "ar".

    So, if you launch your perl command line, you actually have access to the "ar" command (you may need to specify full path to it) and you should be able to inspect one of those *.a file with command "ar tv filename.a" ...I did

    If looks like the contents inside some of those *.a files is nothing else but *.dll files.

    Anyway, read up on UNIX command "ar" to learn about *.a files.

    Alternately, I seems that winzip-like Windows utility IZArc can handl *.a files, if that is easier...did not try this.
  8. Nov 14, 2014 #7


    User Avatar

    Yes this works for the first type of *.a files which seems to be the standard but these other *.a files the format is not recognized. The files I mentioned earlier with the same extension but different headers

    Basically I'm trying to figure out if anyone has any knowledge of these different types of *.a files
  9. Nov 15, 2014 #8
    Maybe you should attach the files so people can inspect them by themselves
  10. Nov 19, 2014 #9


    User Avatar

    Here you go buddy

    Attached Files:

  11. Nov 19, 2014 #10
    Hhhhmmm...the heading sure does not match the specified " !<arch> " for the "ar" format.

    Another google search seems to reveal that somebody is doing something on purpose that is not supported by any official tool...like packing certain things into games, obfuscating, compressing, etc., and making difficult to retrieve...I am not a gamer, so, I don't know these things...but read up on these two links:

    zenhax thread

    QuickBMS script shows the "ARCH000" that your file has.
  12. Nov 20, 2014 #11


    User Avatar

    Yes, you're exactly right! This is from the resource folder of The Binding of Isaac: Rebirth. Thank you for the information
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook