gcc -s This will be used to link .o files into an executable. use -shared -Wl,-soname, to generate dynamic library you may need to use -Wl,export-dynamic for reverse dependencies use -Wl,-rpath,PATH for library client program during developement