JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Solaris 11.1 Linkers and Libraries Guide     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information

Preface

Part I Using the Link-Editor and Runtime Linker

1.  Introduction to the Oracle Solaris Link Editors

2.  Link-Editor

3.  Runtime Linker

4.  Shared Objects

Part II Quick Reference

5.  Link-Editor Quick Reference

Part III Advanced Topics

6.  Direct Bindings

7.  Building Objects to Optimize System Performance

8.  Mapfiles

9.  Interfaces and Versioning

10.  Establishing Dependencies with Dynamic String Tokens

11.  Extensibility Mechanisms

Part IV ELF Application Binary Interface

12.  Object File Format

13.  Program Loading and Dynamic Linking

14.  Thread-Local Storage

Part V Appendices

A.  Linker and Libraries Updates and New Features

B.  System V Release 4 (Version 1) Mapfiles

Mapfile Structure and Syntax

Segment Declarations

Mapping Directives

Section-Within-Segment Ordering

Size-Symbol Declarations

File Control Directives

Mapping Example

Mapfile Option Defaults

Internal Map Structure

Index

Appendix B

System V Release 4 (Version 1) Mapfiles


Note - This appendix describes the original System V Release 4 mapfile language (version 1). Although this mapfile syntax remains supported, the version 2 mapfile language described in Chapter 8, Mapfiles is recommended for new applications.


The link-editor automatically and intelligently maps input sections from relocatable objects to segments in the output file being created. The -M option with an associated mapfile enables you to change the default mapping provided by the link-editor. In addition, new segments can be created, attributes modified, and symbol versioning information can be supplied with the mapfile.


Note - When using a mapfile option, you can easily create an output file that does not execute. The link-editor knows how to produce a correct output file without the use of the mapfile option.


Sample mapfiles provided on the system reside in the /usr/lib/ld directory.