Unix/Linux Go Back    

OpenSolaris 2009.06 - man page for elfwrap (opensolaris section 1)

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:   man
Select Man Page Set:       apropos Keyword Search (sections above)

elfwrap(1)				  User Commands 			       elfwrap(1)

       elfwrap - wrap data in an ELF file

       elfwrap [-64] [-o relobj-file] [-z target=sparc | x86]

       The  elfwrap  utility  creates an ELF relocatable object file from one or more data files.
       The relocatable object encapsulates each data file within an individual section,  together
       with  symbols  that can be used to reference the section. The relocatable object is appro-
       priate for inclusion with a subsequent link-edit. Users	can  reference	the  encapsulated
       data using the associated symbols.

       By default, a 32-bit ELF relocatable object is created that is appropriate for the machine
       on which elfwrap is executed. The -64 option can be used to create a 64-bit  ELF  relocat-
       able  object.  The  -z target option can be used to create a relocatable object for a spe-
       cific machine type.

       Note -

	 Any data encapsulated with elfwrap must be in a format appropriate for  the  destination

       By default, the relocatable object a.wrap.o is created. The -o option can be used to spec-
       ify an alternative relocatable object name.

       The basename(1) of each data file is used to create various pieces  of	ELF  information.
       For example, if the input data file is ISV/isv-data, the following ELF information is cre-
       ated within the relocatable object.

       An ELF section named .isv-data

	   This section contains the entire contents of the input data file.

       An ELF symbol named isv-data_start

	   This symbol reflects the starting address of the .isv-data section.

       An ELF symbol named isv-data_end

	   This symbol reflects the address of the first location after the .isv-data section.

       The following options are supported:


	   Create a 64-bit ELF relocatable object.

       -o relobj-file

	   Produce a relocatable object that is named relobj-file.

       -z target=sparc | x86

	   Specifies the machine type for the output relocatable object.  Supported  targets  are
	   sparc and x86. The 32-bit machine type for the specified target is used unless the -64
	   option is also present, in which case the corresponding 64-bit machine type	is  used.
	   By  default,  the  relocatable  object that is generated is 32-bit for the machine one
	   which elfwrap is executed.

       The following example encapsulates the system passwd file and the system group file within
       a relocatable object passgroup.o.

	 example% elfwrap -o passgroup.o /etc/passwd /etc/group
	 example% elfdump -s passgroup.o | egrep "passwd|group"
	   [2]	0x00000000 0x00000000  SECT LOCL  D  0 .passwd
	   [3]	0x00000000 0x00000000  SECT LOCL  D  0 .group
	   [7]	0x00000000 0x000002f0  OBJT GLOB  D  0 .passwd	passwd_start
	   [8]	0x000002f0 0x00000000  OBJT GLOB  D  0 .passwd	passwd_end
	   [9]	0x00000000 0x00000121  OBJT GLOB  D  0 .group	group_start
	  [10]	0x00000121 0x00000000  OBJT GLOB  D  0 .group	group_end
	 example% strings -N.passwd passgroup.o | head -1
	 example% strings -N.group passgroup.o | head -1

       This relocatable object can be referenced from the following user code.

	 example% cat main.c
	 #include	 <stdio.h>

	 extern char	 passwd_start, passwd_end;

	 void main()
	     char    *pstart = &passwd_start, *pend = &passwd_end;
	     char    *str, *lstr;

	     for (lstr = str = pstart; str < pend; str++) {
		 if ((*str == '0) && (str != (pend - 1)))  {
		     (void) printf("%.*s", (++str - lstr), lstr);
		  lstr = str;
	 example% cc -o main main.c passgroup.o
	 example% ./main
	 nobody4:x:65534:65534:SunOS 4.x NFS Anonymous Access User:/:

       a.wrap.o    The default relocatable object file created.

       See attributes(5) for descriptions of the following attributes:

       |      ATTRIBUTE TYPE	     |	    ATTRIBUTE VALUE	   |
       |Availability		     |SUNWtoo			   |
       |Interface Stability	     |Committed 		   |

       elfdump(1), ld(1), strings(1), elf(3ELF), attributes(5), ddi_modopen(9F)

       Linker and Libraries Guide

SunOS 5.11				  17 March 2008 			       elfwrap(1)
Unix & Linux Commands & Man Pages : ©2000 - 2018 Unix and Linux Forums

All times are GMT -4. The time now is 03:53 PM.