RPM Community Forums

Mailing List Message of <rpm-users>

Re: Unnecessary Binaries to run RPM on Hardware

From: Jeff Johnson <n3npq@mac.com>
Date: Fri 22 Jan 2010 - 16:35:34 CET
Message-id: <0E3B8F14-0A04-4381-8850-0B18E1788EC2@mac.com>

On Jan 22, 2010, at 6:07 AM, Manoj Palhade wrote:

> Dear RPM Team,
> 
> 
> I have following requirement. Does anyone have any solution about this?
> 
> 
> “In the bin-directory there are executables such as aclocal, autoconf, automake and so one. These are tools necessary for compiling the RPM executable. They don't need to be there for running RPM at runtime. Which binaries/libraries are really needed for using the RPM on target hardware (QNX as RTOS running on Hardware?) and those ones that are only necessary for compiling the RPM sources and not running RPM?”
> 
> 

Many of the executables (specifically aclocal/autoconf/automake, others too) were
not installed in/usr/lib/rpm/bin by RPM, but likely because of the way you built RPM.

In general, there is no executable (in /usr/lib/rpm/bin) that is "necessary". Remove any/all
executables you do not want. Check for /usr/lib/rpm/bin in macros configuration, and
change the conficuration to use other replacements (or even delete the macro,
rpm itself likely uses none of the macros that point to /usr/lib/rpm/bin).

The libraries (in /usr/lib/rpm/lib) are needed iff linked by executables (in /usr/lib/rpm/bin)
or by rpm executables or libraries. Run ldd on the executables/libraries that you
wish to keep, and make sure that DLL's needed are present.

73 de Jeff
> 
> I am copying this complete “lib” and “bin” folder for RPM.
> 
> Following is the directory structure of RPM binary and library that I port it on my hardware running with QNX
> 
> RPM
> 
> |
> 
>  --bin
> 
> |
> 
>  --lib
> 
>      |
> 
>       -- pkgconfig
> 
>      |
> 
>       -- rpm
> 
>             |
> 
>               -- helpers
> 
>             |
> 
>               -- qf   
> 
>  
> Following is the content of “bin” folder of RPM
> 
> aclocal
> 
> aclocal-1.11
> 
> autoconf
> 
> autoheader
> 
> autom4te
> 
> automake
> 
> automake-1.11
> 
> autoreconf
> 
> autoscan
> 
> autoupdate
> 
> gendiff
> 
> ifnames
> 
> pcre-config
> 
> pcregrep
> 
> pcretest
> 
> rpm
> 
> rpm2cpio
> 
> rpmbuild
> 
> rpmcache
> 
> rpmconstant
> 
> rpmdigest
> 
> rpmgrep
> 
> rpmmtree
> 
> rpmrepo
> 
> rpmspecdump
> 
> rpmwget
> 
> sqlite3
> 
>  
> Following is the content of “lib” folder of RPM
> 
>  
> libbeecrypt.a
> 
> libbeecrypt.la
> 
> libpcre.a
> 
> libpcre.la
> 
> libpcre.so
> 
> libpcre.so.0
> 
> libpcre.so.0.0.1
> 
> libpcrecpp.a
> 
> libpcrecpp.la
> 
> libpcrecpp.so
> 
> libpcrecpp.so.0
> 
> libpcrecpp.so.0.0.0
> 
> libpcreposix.a
> 
> libpcreposix.la
> 
> libpcreposix.so
> 
> libpcreposix.so.0
> 
> libpcreposix.so.0.0.0
> 
> libpopt.a
> 
> libpopt.la
> 
> libpopt.so
> 
> libpopt.so.0
> 
> librpm-5.0.so
> 
> librpm.a
> 
> librpm.la
> 
> librpm.so
> 
> librpmbuild-5.0.so
> 
> librpmbuild.a
> 
> librpmbuild.la
> 
> librpmbuild.so
> 
> librpmconstant-5.0.so
> 
> librpmconstant.a
> 
> librpmconstant.la
> 
> librpmconstant.so
> 
> librpmdb-5.0.so
> 
> librpmdb.a
> 
> librpmdb.la
> 
> librpmdb.so
> 
> librpmio-5.0.so
> 
> librpmio.a
> 
> librpmio.la
> 
> librpmio.so
> 
> librpmmisc-5.0.so
> 
> librpmmisc.a
> 
> librpmmisc.la
> 
> librpmmisc.so
> 
> libsqlite3.a
> 
> libsqlite3.la
> 
> libsqlite3.so
> 
> libsqlite3.so.8
> 
> libz.a
> 
> pkgconfig = Folder
> 
> rpm = Folder
> 
>  
> Following is the content of “pkgconfig” folder of “lib” folder of RPM
> 
>  
> libpcre.pc
> 
> libpcrecpp.pc
> 
> rpm.pc
> 
> sqlite3.pc
> 
>  
> Following is the content of “rpm” folder of “lib” folder of RPM
> 
>  
> brp-compress
> 
> brp-java-gcjcompile
> 
> brp-nobuildrootpath
> 
> brp-python-bytecompile
> 
> brp-sparc64-linux
> 
> brp-strip
> 
> brp-strip-comment-note
> 
> brp-strip-shared
> 
> brp-strip-static-archive
> 
> check-files
> 
> cross-build
> 
> db_archive
> 
> db_checkpoint
> 
> db_deadlock
> 
> db_dump
> 
> db_hotbackup
> 
> db_load
> 
> db_printlog
> 
> db_recover
> 
> db_stat
> 
> db_tool
> 
> db_upgrade
> 
> db_verify
> 
> executabledeps.sh
> 
> find-debuginfo.sh
> 
> find-lang.sh
> 
> find-prov.pl
> 
> find-provides.perl
> 
> find-req.pl
> 
> find-requires.perl
> 
> getpo.sh
> 
> http.req
> 
> install-sh
> 
> javadeps.sh
> 
> libtooldeps.sh
> 
> macros
> 
> magic
> 
> magic.mgc
> 
> magic.mime
> 
> magic.mime.mgc
> 
> mkinstalldirs
> 
> mono-find-provides
> 
> mono-find-requires
> 
> osgideps.pl
> 
> perl.prov
> 
> perl.req
> 
> perldeps.pl
> 
> php.prov
> 
> php.req
> 
> pkgconfigdeps.sh
> 
> pythondeps.sh
> 
> rpm.daily
> 
> rpm.log
> 
> rpm.xinetd
> 
> rpm2cpio
> 
> rpmcmp
> 
> rpmdb_loadcvt
> 
> rpmdeps
> 
> rpmpopt
> 
> tgpg
> 
> u_pkg.sh
> 
> vcheck
> 
> vpkg-provides.sh
> 
> vpkg-provides2.sh
> 
> helpers = Folder
> 
> qf = Folder
> 
>  
> Following is the content of “helpers” folder of “rpm” folder of “lib” folder of RPM
> 
>  
> Makeshlibs
> 
>  
> Following is the content of “qf” folder folder of “rpm” folder of “lib” folder of RPM
> 
> deb_Packages
> 
> deb_Sources
> 
> deb_control
> 
> deb_md5sums
> 
> deb_postinst
> 
> deb_postrm
> 
> deb_preinst
> 
> deb_prerm
> 
> wnh_filelists_yaml
> 
> wnh_other_yaml
> 
> wnh_primary_yaml
> 
> yum_filelists_sqlite
> 
> yum_filelists_xml
> 
> yum_other_sqlite
> 
> yum_other_xml
> 
> yum_primary_sqlite
> 
> yum_primary_xml
> 
>  
> Where I will get the information for binaries/libraries are really needed for using the RPM on a target hardware.
> 
> Thanks and Regards,
> Manoj Palhade
> 
Received on Fri Jan 22 17:37:17 2010
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.