[MacPorts] #30313: rpm 4.4.9 shell command failed. "_elf_strptr", referenced from: ... ld: symbol(s) not found

MacPorts noreply at macports.org
Sat Jul 23 11:45:21 PDT 2011


#30313: rpm 4.4.9 shell command failed. "_elf_strptr", referenced from: ... ld:
symbol(s) not found
----------------------------+-----------------------------------------------
 Reporter:  sgrewe@…        |       Owner:  n3npq@…      
     Type:  defect          |      Status:  new          
 Priority:  Normal          |   Milestone:               
Component:  ports           |     Version:  2.0.0        
 Keywords:                  |        Port:  rpm          
----------------------------+-----------------------------------------------

Old description:

> snow leopard 10.6.8
> Xcode:  3.2.6 (1761)
> {{{
> ...
> :info:build /usr/bin/gcc-4.2 -dynamiclib  -o .libs/librpm-4.4.dylib
> .libs/cpio.o .libs/depends.o .libs/formats.o .libs/fs.o .libs/fsm.o
> .libs/getdate.o .libs/manifest.o .libs/misc.o .libs/package.o
> .libs/poptALL.o .libs/poptI.o .libs/poptQV.o .libs/psm.o .libs/query.o
> .libs/rpmal.o .libs/rpmchecksig.o .libs/rpmdpkg.o .libs/rpmds.o
> .libs/rpmevr.o .libs/rpmfc.o .libs/rpmfi.o .libs/rpmgi.o
> .libs/rpminstall.o .libs/rpmrollback.o .libs/rpmlead.o .libs/rpmlock.o
> .libs/rpmns.o .libs/rpmps.o .libs/rpmrc.o .libs/rpmsx.o .libs/rpmte.o
> .libs/rpmts.o .libs/signature.o .libs/stringbuf.o .libs/transaction.o
> .libs/verify.o .libs/tar.o  -L/opt/local/lib
> ../rpmdb/.libs/librpmdb.dylib
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/rpmio/.libs/librpmio.dylib
> /opt/local/lib/libbeecrypt.dylib /opt/local/lib/libneon.dylib
> /opt/local/lib/libssl.dylib /opt/local/lib/libcrypto.dylib
> /opt/local/lib/libexpat.dylib
> -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/zlib
> /opt/local/lib/libz.dylib /opt/local/lib/libbz2.dylib
> /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib
> /opt/local/lib/libsqlite3.dylib ../rpmio/.libs/librpmio.dylib
> /opt/local/lib/libpopt.dylib  -arch x86_64 -install_name
> /opt/local/lib/librpm-4.4.dylib
> :info:build Undefined symbols:
> :info:build   "_elf_strptr", referenced from:
> :info:build       _rpmdsELF in rpmds.o
> :info:build       _rpmdsELF in rpmds.o
> :info:build       _rpmdsELF in rpmds.o
> :info:build       _rpmdsELF in rpmds.o
> :info:build       _rpmdsELF in rpmds.o
> :info:build ld: symbol(s) not found
> :info:build collect2: ld returned 1 exit status
> :info:build gnumake[3]: *** [librpm.la] Error 1
> :info:build gnumake[3]: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/lib'
> :info:build gnumake[2]: *** [all] Error 2
> :info:build gnumake[2]: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/lib'
> :info:build gnumake[1]: *** [all-recursive] Error 1
> :info:build gnumake[1]: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9'
> :info:build gnumake: *** [all] Error 2
> :info:build gnumake: Leaving directory
> `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9'
> :info:build shell command " cd
> "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9"
> && /usr/bin/gnumake -w all " returned error 2
> :error:build Target org.macports.build returned: shell command failed
> (see log for details)
> :debug:build Backtrace: shell command failed (see log for details)
>     while executing
> "command_exec build"
>     (procedure "portbuild::build_main" line 8)
>     invoked from within
> "$procedure $targetname"
> :info:build Warning: the following items did not execute (for rpm):
> org.macports.activate org.macports.build org.macports.destroot
> org.macports.install
> :error:build Failed to install rpm
> :notice:build Log for rpm is at:
> /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/main.log
> }}}

New description:

 snow leopard 10.6.8
 Xcode:  3.2.6 (1761)


 There proper "fix" here is rather not obvious:
      rpm-4.4.9 was released 4+ years ago and has no upgrade
      path and no future whatsoever.

 So the best fix imho is to retire rpm-4.4.9 and use rpm-5.2.1 instead.

 If you disagree, then its easy enough to either stub-in the symbol,
 or #if 0 the code, since MacPorts uses Mach-O, not ELF. If there really
 is someone who relies on rpm+elf on MacPorts, then rpm-5.2.1
 (released several years ago) is a far better solution than repairing
 rpm-4.4.9.

 I can likely figure a "fix" for rpm-4.4.9 in a couple of minutes
 if there really is interest in rpm-4.4.9 functioning in MacPorts
 in spite of what I've just said.

 Which solution do you wish (and asked generally of MacPorts as well
 as specifically of the bug reporter)?

--

Comment(by n3npq@…):

 Replying to [ticket:30313 sgrewe@…]:
 > snow leopard 10.6.8
 > Xcode:        3.2.6 (1761)
 > {{{
 > ...
 > :info:build /usr/bin/gcc-4.2 -dynamiclib  -o .libs/librpm-4.4.dylib
 .libs/cpio.o .libs/depends.o .libs/formats.o .libs/fs.o .libs/fsm.o
 .libs/getdate.o .libs/manifest.o .libs/misc.o .libs/package.o
 .libs/poptALL.o .libs/poptI.o .libs/poptQV.o .libs/psm.o .libs/query.o
 .libs/rpmal.o .libs/rpmchecksig.o .libs/rpmdpkg.o .libs/rpmds.o
 .libs/rpmevr.o .libs/rpmfc.o .libs/rpmfi.o .libs/rpmgi.o
 .libs/rpminstall.o .libs/rpmrollback.o .libs/rpmlead.o .libs/rpmlock.o
 .libs/rpmns.o .libs/rpmps.o .libs/rpmrc.o .libs/rpmsx.o .libs/rpmte.o
 .libs/rpmts.o .libs/signature.o .libs/stringbuf.o .libs/transaction.o
 .libs/verify.o .libs/tar.o  -L/opt/local/lib ../rpmdb/.libs/librpmdb.dylib
 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/rpmio/.libs/librpmio.dylib
 /opt/local/lib/libbeecrypt.dylib /opt/local/lib/libneon.dylib
 /opt/local/lib/libssl.dylib /opt/local/lib/libcrypto.dylib
 /opt/local/lib/libexpat.dylib
 -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/zlib
 /opt/local/lib/libz.dylib /opt/local/lib/libbz2.dylib
 /opt/local/lib/libintl.dylib /opt/local/lib/libiconv.dylib
 /opt/local/lib/libsqlite3.dylib ../rpmio/.libs/librpmio.dylib
 /opt/local/lib/libpopt.dylib  -arch x86_64 -install_name
 /opt/local/lib/librpm-4.4.dylib
 > :info:build Undefined symbols:
 > :info:build   "_elf_strptr", referenced from:
 > :info:build       _rpmdsELF in rpmds.o
 > :info:build       _rpmdsELF in rpmds.o
 > :info:build       _rpmdsELF in rpmds.o
 > :info:build       _rpmdsELF in rpmds.o
 > :info:build       _rpmdsELF in rpmds.o
 > :info:build ld: symbol(s) not found
 > :info:build collect2: ld returned 1 exit status
 > :info:build gnumake[3]: *** [librpm.la] Error 1
 > :info:build gnumake[3]: Leaving directory
 `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/lib'
 > :info:build gnumake[2]: *** [all] Error 2
 > :info:build gnumake[2]: Leaving directory
 `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9/lib'
 > :info:build gnumake[1]: *** [all-recursive] Error 1
 > :info:build gnumake[1]: Leaving directory
 `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9'
 > :info:build gnumake: *** [all] Error 2
 > :info:build gnumake: Leaving directory
 `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9'
 > :info:build shell command " cd
 "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/work/rpm-4.4.9"
 && /usr/bin/gnumake -w all " returned error 2
 > :error:build Target org.macports.build returned: shell command failed
 (see log for details)
 > :debug:build Backtrace: shell command failed (see log for details)
 >     while executing
 > "command_exec build"
 >     (procedure "portbuild::build_main" line 8)
 >     invoked from within
 > "$procedure $targetname"
 > :info:build Warning: the following items did not execute (for rpm):
 org.macports.activate org.macports.build org.macports.destroot
 org.macports.install
 > :error:build Failed to install rpm
 > :notice:build Log for rpm is at:
 /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_sysutils_rpm/rpm/main.log
 > }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/30313#comment:2>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list