[csw-maintainers] Problems with symbol detection
Yann Rouillard
yann at pleiades.fr.eu.org
Mon Jan 21 17:38:55 CET 2013
Yes problem known, Maciej had the same problem and I have a patch pending.
You encounter this problem probably because you're building under Solaris 9.
It seems the several elfdump error messages were changed somewhere between
solaris 9 and solaris 10.
The unstable10{x,s} don't have this problem.
I noticed that patch 147441-19 is the only patch on the buildfarm containg
an update of the elfdump binary.
Could you check if there is an equivalent patch for Solaris 9 ?
Yann
2013/1/21 dam <dam at opencsw.org>
> Am 2013-01-21 17:22, schrieb dam:
>
> Hi folks,
>>
>> I get the following error during checkpkg-time, Yann would you mind
>> having a look?
>>
>>
>> ## Packaging one part.
>> /home/dam/spool.5.9-sparc/**CSWdi/pkgmap
>> /home/dam/spool.5.9-sparc/**CSWdi/pkginfo
>> /home/dam/spool.5.9-sparc/**CSWdi/root/opt/csw/bin/di
>> /home/dam/spool.5.9-sparc/**CSWdi/root/opt/csw/share/doc/**di/license
>>
>> /home/dam/spool.5.9-sparc/**CSWdi/root/opt/csw/share/**
>> locale/de/LC_MESSAGES/di.mo
>>
>> /home/dam/spool.5.9-sparc/**CSWdi/root/opt/csw/share/**
>> locale/en/LC_MESSAGES/di.mo
>>
>> /home/dam/spool.5.9-sparc/**CSWdi/root/opt/csw/share/**
>> locale/es/LC_MESSAGES/di.mo
>> /home/dam/spool.5.9-sparc/**CSWdi/root/opt/csw/share/man/**man1/di.1
>> /home/dam/spool.5.9-sparc/**CSWdi/install/copyright
>> /home/dam/spool.5.9-sparc/**CSWdi/install/depend
>> ## Validating control scripts.
>> ## Packaging complete.
>> mkp: exec( pkgtrans -s /home/dam/spool.5.9-sparc
>> /tmp/di-4.34,REV=2013.01.21-**SunOS5.9-sparc-CSW.pkg CSWdi )
>> Transferring <CSWdi> package instance
>> mkp: exec( pigz -9 -f /tmp/di-4.34,REV=2013.01.21-**SunOS5.9-sparc-CSW.pkg
>> )
>> mkp: exec( mv /tmp/di-4.34,REV=2013.01.21-**SunOS5.9-sparc-CSW.pkg.gz
>> /home/dam/staging/build-21.**Jan.2013 )
>> mkp: exec( rm -rf /home/dam/spool.5.9-sparc/**CSWdi )
>> INFO:root:Juicing the svr4 package stream files...
>> elfdump out:
>> |
>>
>> Version Needed Section: .SUNW_version
>> file version
>> libnsl.so.1 SUNW_1.6
>> libc.so.1 SUNW_1.18
>> SUNWprivate_1.1
>>
>> Symbol Table Section: .dynsym
>> index value size type bind oth ver shndx name
>> [0] 0x00000000 0x00000000 NOTY LOCL D 0 UNDEF
>> [1] 0x00029d64 0x00000000 FUNC GLOB D 0 UNDEF strncmp
>> [2] 0x00029e18 0x00000000 FUNC GLOB D 0 UNDEF __umul64
>> [3] 0x00029cec 0x00000000 FUNC GLOB D 0 UNDEF atexit
>> [4] 0x00029d34 0x00000000 FUNC GLOB D 0 UNDEF free
>> [5] 0x00029e0c 0x00000000 FUNC GLOB D 0 UNDEF memset
>> [6] 0x00029d7c 0x00000000 FUNC GLOB D 0 UNDEF perror
>> [7] 0x0002a120 0x00000004 OBJT GLOB D 0 .data _environ
>> [8] 0x00029f98 0x00000000 FUNC GLOB D 0 UNDEF mbrlen
>> [9] 0x0002acc0 0x00000209 OBJT WEAK D 0 .bss _ctype
>> [10] 0x000186f4 0x0000000c FUNC GLOB D 0 .fini _fini
>> [11] 0x000134f0 0x00000088 FUNC GLOB D 0 .text
>> di_isLoopbackFs
>> [12] 0x0001332c 0x00000024 FUNC GLOB D 0 .text
>> di_saveInodeSizes
>> [13] 0x00029fbc 0x00000000 FUNC GLOB D 0 UNDEF atof
>> [14] 0x00011858 0x00000000 FUNC GLOB D 0 .text .ld_llong
>> [15] 0x00029fa4 0x00000000 FUNC GLOB D 0 UNDEF atoi
>> [16] 0x00011a0c 0x00000000 FUNC GLOB D 0 .text .st_llong
>> [17] 0x00029d4c 0x00000000 FUNC GLOB D 0 UNDEF stat64
>> [18] 0x00011c30 0x0000024c FUNC GLOB D 0 .text main
>> [19] 0x00029ffc 0x00000000 OBJT GLOB D 0 .dynamic _DYNAMIC
>> [20] 0x00029f5c 0x00000000 FUNC GLOB D 0 UNDEF _Q_div
>> [21] 0x00029fb0 0x00000000 FUNC GLOB D 0 UNDEF atol
>> [22] 0x00029e00 0x00000000 FUNC GLOB D 0 UNDEF strspn
>> [23] 0x00029e78 0x00000000 FUNC GLOB D 0 UNDEF hasmntopt
>> [24] 0x0002a12c 0x00000004 OBJT GLOB D 0 .data ___Argv
>> [25] 0x00029de8 0x00000000 FUNC GLOB D 0 UNDEF
>> libintl_textdomain
>> [26] 0x00018700 0x00000004 OBJT GLOB D 0 .rodata
>> _lib_version
>> [27] 0x00029f50 0x00000000 FUNC GLOB D 0 UNDEF _Q_ulltoq
>> [28] 0x0002ab58 0x00000000 OBJT GLOB D 0 .data1 _edata
>> [29] 0x00029e60 0x00000000 FUNC GLOB D 0 UNDEF getmntent
>> [30] 0x0002aed4 0x00000000 OBJT GLOB D 0 .bss _end
>> [31] 0x00013430 0x00000048 FUNC GLOB D 0 .text
>> di_testRemoteDisk
>> [32] 0x00029f44 0x00000000 FUNC GLOB D 0 UNDEF snprintf
>> [33] 0x0002a108 0x00000018 OBJT GLOB D 0 .data
>> __environ_lock
>> [34] 0x0002acc0 0x00000209 OBJT GLOB D 0 .bss __ctype
>> [35] 0x00029efc 0x00000000 FUNC GLOB D 0 UNDEF
>> authsys_create_default
>> [36] 0x00013298 0x00000030 FUNC GLOB D 0 .text
>> di_initDiskInfo
>> [37] 0x00029d58 0x00000000 FUNC GLOB D 0 UNDEF fstat64
>> [38] 0x00014520 0x00000844 FUNC GLOB D 0 .text
>> printDiskInfo
>> [39] 0x00014d74 0x000001b4 FUNC GLOB D 0 .text sortArray
>> [40] 0x00029d70 0x00000000 FUNC GLOB D 0 UNDEF fprintf
>> [41] 0x0002a128 0x00000004 OBJT GLOB D 0 .data
>> __cg92_used
>> [42] 0x00029e9c 0x00000000 FUNC GLOB D 0 UNDEF ioctl
>> [43] 0x0002a120 0x00000004 OBJT WEAK D 0 .data environ
>> [44] 0x00029dac 0x00000000 FUNC GLOB D 0 UNDEF getegid
>> [45] 0x000186e4 0x00000010 FUNC GLOB D 0 .init _init
>> [46] 0x0002aed0 0x00000004 OBJT GLOB D 0 .bss __xargc
>> [47] 0x0002ab78 0x00000140 OBJT GLOB D 0 .bss __iob
>> [48] 0x00011a7c 0x00000000 FUNC GLOB D 0 .text .st_float
>> [49] 0x0002ab78 0x00000140 OBJT WEAK D 0 .bss _iob
>> [50] 0x00011b6c 0x00000000 FUNC GLOB D 0 .text
>> .st_float_foreff
>> [51] 0x00013578 0x00000064 FUNC GLOB D 0 .text
>> di_mungePoolName
>> [52] 0x00013478 0x00000078 FUNC GLOB D 0 .text
>> di_isPooledFs
>> [53] 0x000118ec 0x00000000 FUNC GLOB D 0 .text .ld_float
>> [54] 0x00029ddc 0x00000000 FUNC GLOB D 0 UNDEF
>> libintl_bindtextdomain
>> [55] 0x00029ea8 0x00000000 FUNC GLOB D 0 UNDEF close
>> [56] 0x00029f38 0x00000000 FUNC GLOB D 0 UNDEF _Q_fle
>> [57] 0x00029fe0 0x00000000 FUNC GLOB D 0 UNDEF realloc
>> [58] 0x00029fec 0x00000000 FUNC WEAK D 0 UNDEF
>> _get_exit_frame_monitor
>> [59] 0x000186a8 0x0000003c FUNC GLOB D 0 .text trimChar
>> [60] 0x00013378 0x00000008 FUNC GLOB D 0 .text
>> convertNFSMountOptions
>> [61] 0x0002acb8 0x00000004 OBJT GLOB D 0 .bss errno
>> [62] 0x00017098 0x00000238 FUNC GLOB D 0 .text getoptn
>> [63] 0x00029d88 0x00000000 FUNC GLOB D 0 UNDEF lstat64
>> [64] 0x00029d04 0x00000000 FUNC GLOB D 0 UNDEF _exit
>> [65] 0x00029ecc 0x00000000 FUNC GLOB D 0 UNDEF xdr_int
>> [66] 0x00029cf8 0x00000000 FUNC GLOB D 0 UNDEF exit
>> [67] 0x00029f80 0x00000000 FUNC GLOB D 0 UNDEF _Q_flt
>> [68] 0x00029db8 0x00000000 FUNC GLOB D 0 UNDEF strcmp
>> [69] 0x00029e24 0x00000000 FUNC GLOB D 0 UNDEF strdup
>> [70] 0x00029e90 0x00000000 FUNC GLOB D 0 UNDEF strncat
>> [71] 0x000116f0 0x00000120 FUNC GLOB D 0 .text _start
>> [72] 0x00011ba4 0x00000000 FUNC GLOB D 0 .text
>> .st_double_foreff
>> [73] 0x00000000 0x00000000 NOTY WEAK D 0 UNDEF
>> __1cG__CrunMdo_exit_code6F_v_
>> [74] 0x00029f08 0x00000000 FUNC GLOB D 0 UNDEF
>> libintl_gettext
>> [75] 0x00018684 0x00000024 FUNC GLOB D 0 .text _realloc
>> [76] 0x00029da0 0x00000000 FUNC GLOB D 0 UNDEF geteuid
>> [77] 0x00029e84 0x00000000 FUNC GLOB D 0 UNDEF statvfs64
>> [78] 0x00029cbc 0x00000000 OBJT GLOB D 0 .plt
>> _PROCEDURE_LINKAGE_TABLE_
>> [79] 0x00013a80 0x000000bc FUNC GLOB D 0 .text diquota
>> [80] 0x00029f14 0x00000000 FUNC GLOB D 0 UNDEF _Q_feq
>> [81] 0x00013380 0x000000b0 FUNC GLOB D 0 .text
>> chkMountOptions
>> [82] 0x00029f20 0x00000000 FUNC GLOB D 0 UNDEF _Q_fne
>> [83] 0x00029df4 0x00000000 FUNC GLOB D 0 UNDEF strlen
>> [84] 0x00011ad0 0x00000000 FUNC GLOB D 0 .text
>> .st_double
>> [85] 0x00029d28 0x00000000 FUNC GLOB D 0 UNDEF printf
>> [86] 0x00029e3c 0x00000000 FUNC GLOB D 0 UNDEF strstr
>> [87] 0x00029fc8 0x00000000 FUNC GLOB D 0 UNDEF malloc
>> [88] 0x00029f68 0x00000000 FUNC GLOB D 0 UNDEF _Q_mul
>> [89] 0x00029ed8 0x00000000 FUNC GLOB D 0 UNDEF xdr_bool
>> [90] 0x00029ef0 0x00000000 FUNC GLOB D 0 UNDEF
>> clnt_create
>> [91] 0x00029dd0 0x00000000 FUNC GLOB D 0 UNDEF getenv
>> [92] 0x0002a138 0x00000004 OBJT GLOB D 0 .data debug
>> [93] 0x00029d1c 0x00000000 FUNC GLOB D 0 UNDEF strncpy
>> [94] 0x00029ee4 0x00000000 FUNC GLOB D 0 UNDEF
>> xdr_uint32_t
>> [95] 0x00029f74 0x00000000 FUNC GLOB D 0 UNDEF _Q_fge
>> [96] 0x00029fd4 0x00000000 FUNC GLOB D 0 UNDEF memcmp
>> [97] 0x00011938 0x00000000 FUNC GLOB D 0 .text
>> .ld_double
>> [98] 0x00029e6c 0x00000000 FUNC GLOB D 0 UNDEF fclose
>> [99] 0x00029f8c 0x00000000 FUNC GLOB D 0 UNDEF strcoll
>> [100] 0x00029ec0 0x00000000 FUNC GLOB D 0 UNDEF
>> xdr_int32_t
>> [101] 0x00029d40 0x00000000 FUNC GLOB D 0 UNDEF open64
>> [102] 0x00014f38 0x000000a0 FUNC GLOB D 0 .text
>> getPrintFlagText
>> [103] 0x00029f2c 0x00000000 FUNC GLOB D 0 UNDEF _Q_fgt
>> [104] 0x00000000 0x00000000 NOTY GLOB D 0 ABS
>> __fsr_init_value
>> [105] 0x000173b8 0x000001c0 FUNC GLOB D 0 .text
>> getDIOptions
>> [106] 0x00029d94 0x00000000 FUNC GLOB D 0 UNDEF realpath
>> [107] 0x000132c8 0x00000064 FUNC GLOB D 0 .text
>> di_saveBlockSizes
>> [108] 0x00029e48 0x00000000 FUNC GLOB D 0 UNDEF strchr
>> [109] 0x00029d10 0x00000000 FUNC GLOB D 0 UNDEF _Q_dtoq
>> [110] 0x00019cb8 0x00000000 OBJT GLOB D 0 .rodata1 _etext
>> [111] 0x00029dc4 0x00000000 FUNC GLOB D 0 UNDEF setlocale
>> [112] 0x00011810 0x00000000 FUNC GLOB D 0 .text .ld_int
>> [113] 0x00029eb4 0x00000000 FUNC GLOB D 0 UNDEF
>> xdr_string
>> [114] 0x000135dc 0x00000200 FUNC GLOB D 0 .text
>> di_getDiskEntries
>> [115] 0x000119d4 0x00000000 FUNC GLOB D 0 .text .st_int
>> [116] 0x000137f8 0x000001e8 FUNC GLOB D 0 .text
>> di_getDiskInfo
>> [117] 0x0002aecc 0x00000004 OBJT GLOB D 0 .bss __xargv
>> [118] 0x00013360 0x00000008 FUNC GLOB D 0 .text
>> convertMountOptions
>> [119] 0x00029cb8 0x00000000 OBJT GLOB D 0 .got
>> _GLOBAL_OFFSET_TABLE_
>> [120] 0x00029e30 0x00000000 FUNC GLOB D 0 UNDEF strtok
>> [121] 0x00029e54 0x00000000 FUNC GLOB D 0 UNDEF fopen64
>>
>> Syminfo Section: .SUNW_syminfo
>> index flgs bound to symbol
>> [1] DBL [5] libc.so.1 strncmp
>> [2] DBL [5] libc.so.1 __umul64
>> [3] DBL [5] libc.so.1 atexit
>> [4] DBL [5] libc.so.1 free
>> [5] DBL [5] libc.so.1 memset
>> [6] DBL [5] libc.so.1 perror
>> [7] DB <self> _environ
>> [8] DBL [5] libc.so.1 mbrlen
>> [9] DBC [5] libc.so.1 _ctype
>> [10] DB <self> _fini
>> [11] DB <self> di_isLoopbackFs
>> [12] DB <self> di_saveInodeSizes
>> [13] DBL [5] libc.so.1 atof
>> [14] DB <self> .ld_llong
>> [15] DBL [5] libc.so.1 atoi
>> [16] DB <self> .st_llong
>> [17] DBL [5] libc.so.1 stat64
>> [18] DB <self> main
>> [19] N _DYNAMIC
>> [20] DBL [5] libc.so.1 _Q_div
>> [21] DBL [5] libc.so.1 atol
>> [22] DBL [5] libc.so.1 strspn
>> [23] DBL [5] libc.so.1 hasmntopt
>> [24] DB <self> ___Argv
>> [25] DBL [1] libintl.so.8 libintl_textdomain
>> [26] DB <self> _lib_version
>> [27] DBL [5] libc.so.1 _Q_ulltoq
>> [28] N _edata
>> [29] DBL [5] libc.so.1 getmntent
>> [30] N _end
>> [31] DB <self> di_testRemoteDisk
>> [32] DBL [5] libc.so.1 snprintf
>> [33] DB <self> __environ_lock
>> [34] DBC [5] libc.so.1 __ctype
>> [35] DBL [3] libnsl.so.1 authsys_create_default
>> [36] DB <self> di_initDiskInfo
>> [37] DBL [5] libc.so.1 fstat64
>> [38] DB <self> printDiskInfo
>> [39] DB <self> sortArray
>> [40] DBL [5] libc.so.1 fprintf
>> [41] DB <self> __cg92_used
>> [42] DBL [5] libc.so.1 ioctl
>> [43] DB <self> environ
>> [44] DBL [5] libc.so.1 getegid
>> [45] DB <self> _init
>> [46] DB <self> __xargc
>> [47] DBC [5] libc.so.1 __iob
>> [48] DB <self> .st_float
>> [49] DBC [5] libc.so.1 _iob
>> [50] DB <self> .st_float_foreff
>> [51] DB <self> di_mungePoolName
>> [52] DB <self> di_isPooledFs
>> [53] DB <self> .ld_float
>> [54] DBL [1] libintl.so.8 libintl_bindtextdomain
>> [55] DBL [5] libc.so.1 close
>> [56] DBL [5] libc.so.1 _Q_fle
>> [57] DBL [5] libc.so.1 realloc
>> [58] DBL [5] libc.so.1 _get_exit_frame_monitor
>> [59] DB <self> trimChar
>> [60] DB <self> convertNFSMountOptions
>> [61] DBC [5] libc.so.1 errno
>> [62] DB <self> getoptn
>> [63] DBL [5] libc.so.1 lstat64
>> [64] DBL [5] libc.so.1 _exit
>> [65] DBL [3] libnsl.so.1 xdr_int
>> [66] DBL [5] libc.so.1 exit
>> [67] DBL [5] libc.so.1 _Q_flt
>> [68] DBL [5] libc.so.1 strcmp
>> [69] DBL [5] libc.so.1 strdup
>> [70] DBL [5] libc.so.1 strncat
>> [71] DB <self> _start
>> [72] DB <self> .st_double_foreff
>> [74] DBL [1] libintl.so.8 libintl_gettext
>> [75] DB <self> _realloc
>> [76] DBL [5] libc.so.1 geteuid
>> [77] DBL [5] libc.so.1 statvfs64
>> [78] N _PROCEDURE_LINKAGE_TABLE_
>> [79] DB <self> diquota
>> [80] DBL [5] libc.so.1 _Q_feq
>> [81] DB <self> chkMountOptions
>> [82] DBL [5] libc.so.1 _Q_fne
>> [83] DBL [5] libc.so.1 strlen
>> [84] DB <self> .st_double
>> [85] DBL [5] libc.so.1 printf
>> [86] DBL [5] libc.so.1 strstr
>> [87] DBL [5] libc.so.1 malloc
>> [88] DBL [5] libc.so.1 _Q_mul
>> [89] DBL [3] libnsl.so.1 xdr_bool
>> [90] DBL [3] libnsl.so.1 clnt_create
>> [91] DBL [5] libc.so.1 getenv
>> [92] DB <self> debug
>> [93] DBL [5] libc.so.1 strncpy
>> [94] DBL [3] libnsl.so.1 xdr_uint32_t
>> [95] DBL [5] libc.so.1 _Q_fge
>> [96] DBL [5] libc.so.1 memcmp
>> [97] DB <self> .ld_double
>> [98] DBL [5] libc.so.1 fclose
>> [99] DBL [5] libc.so.1 strcoll
>> [100] DBL [3] libnsl.so.1 xdr_int32_t
>> [101] DBL [5] libc.so.1 open64
>> [102] DB <self> getPrintFlagText
>> [103] DBL [5] libc.so.1 _Q_fgt
>> [104] DB <self> __fsr_init_value
>> [105] DB <self> getDIOptions
>> [106] DBL [5] libc.so.1 realpath
>> [107] DB <self> di_saveBlockSizes
>> [108] DBL [5] libc.so.1 strchr
>> [109] DBL [5] libc.so.1 _Q_dtoq
>> [110] N _etext
>> [111] DBL [5] libc.so.1 setlocale
>> [112] DB <self> .ld_int
>> [113] DBL [3] libnsl.so.1 xdr_string
>> [114] DB <self> di_getDiskEntries
>> [115] DB <self> .st_int
>> [116] DB <self> di_getDiskInfo
>> [117] DB <self> __xargv
>> [118] DB <self> convertMountOptions
>> [119] N _GLOBAL_OFFSET_TABLE_
>> [120] DBL [5] libc.so.1 strtok
>> [121] DBL [5] libc.so.1 fopen64
>> Traceback (most recent call last):
>> File "/home/dam/mgar/pkg/.buildsys/**v2/gar/gar//bin/checkpkg", line
>> 197, in <module>
>> main()
>> File "/home/dam/mgar/pkg/.buildsys/**v2/gar/gar//bin/checkpkg", line
>> 120, in main
>> stats_list = collector.**CollectStatsFromFiles(file_**list, None)
>> File "/home/dam/mgar/pkg/.buildsys/**v2/lib/python/package_stats.**py",
>> line 499, in CollectStatsFromFiles
>> stats.CollectStats(force=**force_unpack)
>> File "/home/dam/mgar/pkg/.buildsys/**v2/lib/python/package_stats.**py",
>> line 175, in CollectStats
>> return self._CollectStats(register_**files=register_files)
>> File "/home/dam/mgar/pkg/.buildsys/**v2/lib/python/package_stats.**py",
>> line 212, in _CollectStats
>> "binaries_elf_info": dir_pkg.GetBinaryElfInfo(),
>> File
>> "/home/dam/mgar/pkg/.buildsys/**v2/lib/python/inspective_**package.py",
>> line 297, in GetBinaryElfInfo
>> elf_info, cur_section = self._ParseElfdumpLine(line, cur_section)
>> File
>> "/home/dam/mgar/pkg/.buildsys/**v2/lib/python/inspective_**package.py",
>> line 505, in _ParseElfdumpLine
>> raise package.StdoutSyntaxError("**Could not parse %s" %
>> (repr(line)))
>> package.StdoutSyntaxError: Could not parse ' index flgs
>> bound to symbol'
>> gmake: *** [pkgcheck] Error 2
>> gmake: Leaving directory `/home/dam/mgar/pkg/di/trunk'
>> Connection to unstable9s closed.
>> gmake: *** [platforms-repackage] Error 2
>> zsh: 19143 exit 2 mgar platforms-repackage
>>
>
> This change seems to fix the issue:
>
>
> dam at unstable10s [unstable10s]:/home/dam/mgar/**pkg/.buildsys/v2/lib/python
> > svn diff
> Index: inspective_package.py
> ==============================**==============================**=======
> --- inspective_package.py (revision 20178)
> +++ inspective_package.py (working copy)
> @@ -445,7 +445,7 @@
> |\s*index\s*value\s+size\s+**type\s+bind # Symbol table header
> \s+oth\s+ver\s+shndx\s+name\s***$
>
> - |\s*index\s+flags\s+bound\sto\**s+symbol\s*$ # Syminfo header
> + |\s*index\s+fla?gs\s+bound\**sto\s+symbol\s*$ # Syminfo header
>
> |\s*$ # There is always a
> blank
> # line before a new
> section
>
>
>
>
> Best regards
>
> -- Dago
> ______________________________**_________________
> maintainers mailing list
> maintainers at lists.opencsw.org
> https://lists.opencsw.org/**mailman/listinfo/maintainers<https://lists.opencsw.org/mailman/listinfo/maintainers>
> .:: This mailing list's archive is public. ::.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opencsw.org/pipermail/maintainers/attachments/20130121/18f29c75/attachment-0001.html>
More information about the maintainers
mailing list