l

ld(1)

ld(1)

_HP_DLDOPTS environment variable to the value -symtab_sizeprime number. You can set the value using chatr +gstsize size ®le.

+h internal_name

When building a shared library, record internal_name as the name of the library. When the library is used to link another executable ®le (program or shared library), this internal_name is recorded in the library list of the resulting output ®le instead of the ®le system pathname of the input shared library.

 

That is, if +h is not used, the shared library does not have an internal name and when

 

an executable is built with the shared library, the linker records the library name that

 

it looks at.

 

If internal_name is a fully-quali®ed pathname, it is recorded as is in the library list

 

of any executable ®le it is subsequently linked against. internal_name is a relative

 

pathname or no directory component was speci®ed, internal_name is appended to

 

the ®le system directory component of the input shared library in the library list of

 

any executable ®le it is subsequently linked against.

 

If more than one +h option is seen on the link line, the ®rst one is used and a warning

 

message is emitted.

+help

Starts the help window utility HP-UX Linker and Libraries Online User Guide which

 

comes with some HP compilers. (You must be running the X window system and your

 

DISPLAY environment variable must be set to the name of your workstation or X ter-

 

minal.) For more information, refer to the HP-UX Linker and Libraries User's Guide

 

manual. See manuals(5) for ordering information.

+k

Direct the linker to only create an executable if there were no errors encountered dur-

 

ing the link. If there were errors found (system errors or unresolved references), the

 

output ®le will be removed.

+n

Causes the linker to load all object modules before searching any archive or shared

 

libraries. Then it searches the archive and shared libraries speci®ed on the command

 

line in left to right order. Repeats the left to right search of the libraries on the com-

 

mand line until there are no more unsatis®ed symbols, or the last search added no

 

new de®nitions. This option is useful if two libraries are speci®ed that have symbol

 

dependencies on each other.

+nocopyobjdebug

Do not copy objdebug space. Use this option (with -robject ®les on the link line) to suppress the default behavior of copying LINKMAP space to the executable ®le .

+noobjdebug

Override the +objdebug compiler option, and copy all debug information to the executable ®le.

When used with -g, +objdebug leaves debug information in the object ®les instead of copying it to the executable ®le at link time, resulting in shorter link times and smaller executables. The compile-time default, +noobjdebug , copies the debug information to the executable ®le.

When you specify -gwhen compiling, the compiler places symbolic debugging information into the object ®les. By default, the linker calls pxdb which compacts this debug information and copies it to the executable ®le. When +objdebug was used at compile time, the linker leaves the debug information in the object ®les. To debug the executable ®le, the HP WDB debugger must have access to the object ®les. If you move the object ®les, use HP WDB's objdir command to tell it where the object ®les are. (The HP DDE debugger does not support this option.) The +objdebug option reduces link time and the size of the executable ®le by avoiding this copying of debug information.

The compile-time default is +noobjdebug . If the linker detects any object ®les that were compiled with +objdebug, it leaves the debug information in those ®les. Any object ®les not compiled with +objdebug have their debug information copied into the executable ®le. You can leave debug information in some object ®les and not in others.

Section 1428

− 6 −

HP-UX Release 11i: December 2000