Archive libraries (.a) are statically linked i.e when you compile your program with -c option in gcc. So, if there’s any change in library, you need to compile and build your code again.
The advantage of .so (shared object) over .a library is that they are linked during the runtime i.e. after creation of your .o file -o option in gcc. So, if there’s any change in .so file, you don’t need to recompile your main program. But make sure that your main program is linked to the new .so file with ln command.
This will help you to build the .so files. http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html
Hope this helps.
Related Posts:
- What is newline character — ‘\n’
- Why does ENOENT mean “No such file or directory”?
- Connect: Socket operation on non-socket
- Connect: Socket operation on non-socket
- What is the difference between read and pread in unix?
- What is a bus error? Is it different from a segmentation fault?
- What does WEXITSTATUS(status) return?
- What is a file with extension .a?
- What is a bus error? Is it different from a segmentation fault?
- What can cause a “Resource temporarily unavailable” on sock send() command
- (.text+0x20): undefined reference to `main’ and undefined reference to function
- Which of sprintf/snprintf is more secure?
- What is `S_ISREG()`, and what does it do?
- Reaching EOF with fgets
- How big can a 64 bit unsigned integer be?
- How to use execvp()
- How to use execvp() to execute a command
- How does strtok() split the string into tokens in C?
- What is *(uint32_t*)?
- what is Segmentation fault (core dumped)? [duplicate]
- How to convert an int to string in C?
- How to print in C
- Why should we typedef a struct so often in C?
- What is a string of hexadecimal digits?
- What does the question mark character (‘?’) mean?
- makefile:4: *** missing separator. Stop
- Undefined reference to pthread_create
- Difference between malloc and calloc?
- What is Bit Masking?
- segmentation fault : 11
- So what does “return 0” actually mean?
- “Expected expression before ‘ { ‘ token”
- How to generate a random int in C?
- C pointers and arrays: [Warning] assignment makes pointer from integer without a cast
- warning: assignment makes integer from pointer without a cast
- How to print the array?
- How to solve the error: assignment to expression with array type
- segmentation fault : 11
- Why use bzero over memset?
- What does “1e” mean?
- how to use uint64_t in C [duplicate]
- How do I solve the following errors: “Undefined reference to WinMain”, “[Error] Id returned 1 exit status”?
- Warning comparison between pointer and integer
- How do I properly compare strings in C?
- what is the meaning of == sign?
- How do I calculate MB/s & MiB/s?
- ARM Assembler – How do I use CMP, BLT and BGT?
- In C programming, what is `undefined reference`error, when compiling?
- Invalid read of size 8 – Valgrind + C
- warning: incompatible implicit declaration of built-in function ‘xyz’
- strcpy vs strdup
- double free or corruption (fasttop)
- Warning comparison between pointer and integer in C language
- error: expected declaration or statement at end of input in c
- Why do I get clang: error: linker command failed with exit code 1?
- Difference between scanf() and fgets()
- Return char[]/string from a function [duplicate]
- How to convert integer to char in C?
- Is there a printf converter to print in binary format?
- Difference between char* and const char*?
- Output single character in C
- Does connect() block for TCP socket?
- Converting a C program to MIPS
- Why am I getting “array initializer must be an initializer list or string literal”?
- C: linker command failed with exit code 1
- #31 expression must have integral type
- How do you pass a function as a parameter in C?
- What’s the equivalent of new/delete of C++ in C?
- sizeof float (3.0) vs (3.0f)
- How to trigger SIGUSR1 and SIGUSR2?
- What does “%.*s” mean in printf?
- Display value found at given address gdb
- Does C have a “foreach” loop construct?
- Array definition – Expression must have a constant value
- Constant pointer vs Pointer to constant
- What is the cause of flexible array member not at end of struct error?
- Variable warning set but not used
- Expected declaration specifier error in function
- How can I get argv[] as int?
- Why I do get “Cannot find bound of current function” when I overwrite the ret address of a vulnerable program?
- valgrind – Address —- is 0 bytes after a block of size 8 alloc’d
- strcmp not working
- error: aggregate value used where an integer was expected
- char pointers: invalid conversion from ‘char*’ to ‘char’?
- How does one represent the empty char?
- Is there any simple way to benchmark Python script?
- Removing trailing newline character from fgets() input
- “Multiple definition”, “first defined here” errors
- Does C have a string type?
- how use EOF stdin in C
- Execution of printf() and Segmentation Fault
- error: function returns address of local variable
- Return a `struct` from a function in C
- C: scanf to array
- What are “prototypes” in a C program?
- What’s the difference between “mod” and “remainder”?
- undefined reference to `std::ios_base::Init::Init()’
- previous declaration of ‘function’ was here in C [duplicate]
- How to Compare 2 Character Arrays [duplicate]
- error: `itoa` was not declared in this scope