[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

Re: [MacPerl] Build Advice from Codewarrior/MacOS expertsrequested



At 02.38 -0500 1999.02.06, Matthias Neeracher wrote:
>That normally means that your fragment *imports* something that is not
>exported. Do a DumpPEF on the fragment and check what it is importing from
>perl. It might be that I forgot to export some of it from MacPerl.

Here you go; it's pretty meaningless to me at first (and second, third)
glances.

DumpPEF Random.shlb.PPC
File: Random.shlb.PPC

     Container [1] (Random) [In data fork (Offset 0x0, Length 0xA463/42083)]

     Container Header
0000 magic1, magic2   = 0x4A6F7921 ('Joy!')
0004 containerID      = 0x70656666 ('peff')
0008 architectureID   = 0x70777063 ('pwpc')
000C versionNumber    = 0x00000001 (1)
0010 dateTimeStamp    = 0xB2E1AA0A (Sat Feb  6 08:12:58 1999)
0014 oldDefVersion    = 0
0018 oldImpVersion    = 0
001C currentVersion   = 0
0020 nbrOfSections    = 3
0022 loadableSections = 2
0024 memoryAddress    = 0x00000000

     =========================================================

     Section Header 0
0028 sectionName      = 0xFFFFFFFF (-1) ... <unnamed>
002C sectionAddress   = 0x00000000
0030 execSize         = 0x00008B44 (35652)
0034 initSize         = 0x00008B44 (35652)
0038 rawSize          = 0x00008B44 (35652)
003C containerOffset  = 0x00000310 (784)
0040 regionKind       = 0x00       (code)
0041 shareKind        = 0x04       (global share)
0042 alignment        = 0x04       (16-byte bndry)
0043 reserved         = 0x00

     Section Header 1
0044 sectionName      = 0xFFFFFFFF (-1) ... <unnamed>
0048 sectionAddress   = 0x00000000
004C execSize         = 0x000022A4 (8868)
0050 initSize         = 0x00001DEC (7660)
0054 rawSize          = 0x00001603 (5635)
0058 containerOffset  = 0x00008E60 (36448)
005C regionKind       = 0x02       (pidata)
005D shareKind        = 0x01       (context share)
005E alignment        = 0x04       (16-byte bndry)
005F reserved         = 0x00

     Section Header 2
0060 sectionName      = 0xFFFFFFFF (-1) ... <unnamed>
0064 sectionAddress   = 0x00000000
0068 execSize         = 0x00000000 (0)
006C initSize         = 0x00000000 (0)
0070 rawSize          = 0x00000286 (646)
0074 containerOffset  = 0x00000080 (128)
0078 regionKind       = 0x04       (loader)
0079 shareKind        = 0x04       (global share)
007A alignment        = 0x04
007B reserved         = 0x00

007C There are 4 (pad?) bytes at the end of the section headers.
     This is probably because there's no string table.

     =========================================================

     Loader section 2 (<unnamed>)

     ------- Loader Header -------
0080 entrySection     = 0xFFFFFFFF (-1)
0084 entryOffset      = 0x00000000 (0)
0088 initSection      = 0xFFFFFFFF (-1)
008C initOffset       = 0x00000000 (0)
0090 termSection      = 0xFFFFFFFF (-1)
0094 termOffset       = 0x00000000 (0)
0098 nbrImportIDs     = 0x00000003 (3)
009C nbrImportSyms    = 0x0000001A (26)
00A0 nbrRelocSects    = 0x00000001 (1)
00A4 relocsOffset     = 0x000000F4 (244)
00A8 strTblOffset     = 0x00000124 (292)
00AC slotTblOffset    = 0x00000270 (624)
00B0 hashSlotTblSz    = 0x00000001 (1) [==> 2]
00B4 nbrExportSyms    = 0x00000001 (1)

     ------ Loader Import Symbol Table ------
          Importing from "Perl ; oldImpVersion 0x00000000 (0),
currentVersion 0x00000000 (0)"
0100 [ 0] 02 00001A   TVector  Perl_sv_newmortal
0104 [ 1] 02 00002C   TVector  log
0108 [ 2] 02 000030   TVector  exp
010C [ 3] 01 000034   Data     _Aldata
0110 [ 4] 01 00003C   Data     _MWERKS_Atfuns
0114 [ 5] 01 00004B   Data     Perl_na
0118 [ 6] 01 000053   Data     _Sfstderr
011C [ 7] 02 00005D   TVector  pow
0120 [ 8] 01 000061   Data     Perl_stack_sp
0124 [ 9] 02 00006F   TVector  sfprintf
0128 [10] 01 000078   Data     Perl_markstack_ptr
012C [11] 02 00008B   TVector  Perl_sv_2iv
0130 [12] 02 000097   TVector  Perl_sv_2nv
0134 [13] 01 0000A3   Data     Perl_stack_base
0138 [14] 02 0000B3   TVector  Perl_sv_2pv
013C [15] 01 0000BF   Data     Perl_sv_yes
0140 [16] 02 0000CB   TVector  Perl_croak
0144 [17] 02 0000D6   TVector  sfputr
0148 [18] 02 0000DD   TVector  Perl_sv_setnv
014C [19] 02 0000EB   TVector  Perl_sv_setiv
0150 [20] 01 0000F9   Data     _MWERKS_Atcount
0154 [21] 02 000109   TVector  Perl_newXS

          Importing from "InterfaceLib ; oldImpVersion 0x00000000 (0),
currentVersion 0x00000000 (0)"
0158 [22] 02 000114   TVector  ExitToShell
015C [23] 02 000120   TVector  BlockMoveData
0160 [24] 02 00012E   TVector  NewPtr

          Importing from "MathLib ; oldImpVersion 0x00000000 (0),
currentVersion 0x00000000 (0)"
0164 [25] 02 000135   TVector  sqrt

     ------ Loader Relocation Headers ------
0168 [0] sectionNumber    = 1
016A     reserved         = 0x0000
016C     nbrOfRelocs      = 24
0170     firstRelocInstr  = 0x00000000 (0)

     ------ Loader Relocation Instructions ------
          Relocations for section 1 (<unnamed>)
          Instr     Op    Operand           codeA dataA rSymI rAddr
0174 [ 0] 4A02      SYMR  cnt=3               0     1     0   00000000
0176 [ 1] 6006      SYMB  idx=6               0     1     3   0000000C
0178 [ 2] 4A00      SYMR  cnt=1               0     1     7   00000010
017A [ 3] 6009      SYMB  idx=9               0     1     8   00000014
017C [ 4] 600B      SYMB  idx=11              0     1    10   00000018
017E [ 5] 4A00      SYMR  cnt=1               0     1    12   0000001C
0180 [ 6] 600E      SYMB  idx=14              0     1    13   00000020
0182 [ 7] 4A04      SYMR  cnt=5               0     1    15   00000024
0184 [ 8] 6015      SYMB  idx=21              0     1    20   00000038
0186 [ 9] 4A03      SYMR  cnt=4               0     1    22   0000003C
0188 [10] 421A      DATA  cnt=27              0     1    26   0000004C
018A [11] 6005      SYMB  idx=5               0     1    26   000000B8
018C [12] 600A      SYMB  idx=10              0     1     6   000000BC
018E [13] 600D      SYMB  idx=13              0     1    11   000000C0
0190 [14] 6008      SYMB  idx=8               0     1    14   000000C4
0192 [15] 4200      DATA  cnt=1               0     1     9   000000C8
0194 [16] 6014      SYMB  idx=20              0     1     9   000000CC
0196 [17] 6004      SYMB  idx=4               0     1    21   000000D0
0198 [18] 4202      DATA  cnt=3               0     1     5   000000D4
019A [19] 6003      SYMB  idx=3               0     1     5   000000E0
019C [20] 4376      DATA  cnt=375             0     1     4   000000E4
019E [21] 10C1      DDAT  delta=268,n=1       0     1     4   000007CC
01A0 [22] 85DF      DELT  delta=1504
01A2 [23] 461B      DSC2  cnt=28              0     1     4   00000DB0

     ------ Loader Export Symbol Table ------
         Section    Address       Class     [Hashword]    Export Name
02FC [0]    1       00000DB0     TVector    [00116A06]    boot_Math__Random

0306 There are 10 (pad?) bytes at the end of this section.

DumpPEF complete - no errors reported.

--
Chris Nandor          mailto:pudge@pobox.com         http://pudge.net/
%PGPKey = ('B76E72AD', [1024, '0824090B CE73CA10  1FF77F13 8180B6B6'])

***** Want to unsubscribe from this list?
***** Send mail with body "unsubscribe" to mac-perl-request@iis.ee.ethz.ch