Prefer dynamic or require static library linking.
SPARC: 77/90 x86:77
No space is allowed between -B and dynamic or static. The default, without -B specified, is -Bdynamic.
-Bdynamic: Prefer dynamic linking (try for shared libraries).
-Bstatic: Require static linking (no shared libraries).
Also note:
If you specify static, but the linker finds only a dynamic library, then the library is not linked with a warning that the "library was not found."
If you specify dynamic, but the linker finds only a static version, then that library is linked, with no warning.
You can toggle -Bstatic and -Bdynamic on the command line. That is, you can link some libraries statically and some dynamically by specifying -Bstatic and -Bdynamic any number of times on the command line, as follows:
f77 prog.f -Bdynamic -lwells -Bstatic -lsurface
These are loader and linker options. Compiling and linking in separate steps with -Bx on the compile command will require it in the link step as well.
You cannot specify both -Bdynamic and -dn on the command line because -dn disables linking of dynamic libraries.
In a 64-bit Solaris environment, many system libraries are available only as shared dynamic libraries. These include libm.so and libc.so (libm.a and libc.a are not provided). This means that -Bstatic and -dn may cause linking errors in 64-bit Solaris environments. Applications must link with the dynamic libraries in these cases.
See the Fortran Programming Guide for more information on static and dynamic libraries.