Berkeley CSUA MOTD:Entry 15662
Berkeley CSUA MOTD
 
WIKI | FAQ | Tech FAQ
http://csua.com/feed/
2024/11/23 [General] UID:1000 Activity:popular
11/23   

1999/3/30-31 [Computer/SW/Security, Computer/SW/OS/Windows] UID:15662 Activity:nil
3/30    In a /lib /usr/lib directory what's the diff between a lib*.a and
        a lib*.so file?
        \_ .a is "archive" and produces static (compile-time) linking, while
           .so is "shared object" and produces dynamic (run-time) linking.
           \_ so what the heck is "linking"?
                \_ man ld
              \_ well, if you're a DOS weenie, a .so file is like a .DLL file
                 in short: .a files are things that get added to your program
                 when you compile it; people don't need them to run the
                 executable, but it's huge.  .so files get "added" (linked)
                 when a person runs the program, so they need to have copies
                 of them, but the executable is smaller.  generally .so
                 (shared libraries) are better because then 100 programs on
                 your machine can use one library without (essentially) having
                 100 copies of the library present in every executable -dbushong