Results 1 to 2 of 2

Thread: How to build a rpm package that requires libraries that are not rpms.

  1. #1

    Default How to build a rpm package that requires libraries that are not rpms.

    Dear Sirs.

    I'm trying to build a rpm of a email client that requires libqxt that was build from source code, and is not a rpm.
    This is the command line:
    "rpmbuild -ba qmail20120701.spec"

    My spec file loks like belowq:
    #
    # Example spec file for cdplayer app...
    # Groups: tirado de /usr/share/doc/packages/rpm/GROUPS

    %define name qmail20120701
    %define release 1
    %define version 1.0

    Summary: A small Qt email client
    Name: %{name}
    Version: %{version}
    Release: %{release}
    Source: %{name}-%{version}.bz2

    #BuildRequires: pkgconfig(QxtCore) >= 0.7
    #BuildRequires: libQxtGui
    #BuildRequires: libQxtNetwork

    License: GPL
    #Prefix: /usr
    Group: Applications/Communications

    %description
    A Small Qt based email client that can comunicate with any
    SMTP server where you have an account.

    %prep
    %setup

    %build
    rm -rf $RPM_BUILD_ROOT
    qmake
    make

    %install
    install -d -m 755 $RPM_BUILD_ROOT%{_bindir}
    install -m 755 qmail20120701 $RPM_BUILD_ROOT/%{_bindir}/qmail20120701

    %clean
    rm -rf $RPM_BUILD_ROOT

    %files
    %defattr(-, root, root)
    %doc
    %{_prefix}/bin/qmail20120701

    The rpm is build normally without error, but when I try to install it I receive a lot of messages just shown:

    (This is the command line)
    rpm -i -vv qmail20120701-1.0-1.x86_64.rpm
    D: ============== qmail20120701-1.0-1.x86_64.rpm
    D: loading keyring from pubkeys in /var/lib/rpm/pubkeys/*.key
    D: couldn't find any keys in /var/lib/rpm/pubkeys/*.key
    D: loading keyring from rpmdb
    D: opening db environment /var/lib/rpm cdbrivate:0x201
    D: opening db index /var/lib/rpm/Packages 0x400 mode=0x0
    D: locked db index /var/lib/rpm/Packages
    D: opening db index /var/lib/rpm/Name nofsync:0x400 mode=0x0
    D: read h# 1 Header sanity check: OK
    D: added key gpg-pubkey-307e3d54-4be01a65 to keyring
    D: read h# 2 Header sanity check: OK
    D: added key gpg-pubkey-3d25d3d9-36e12d04 to keyring
    D: read h# 3 Header sanity check: OK
    D: added key gpg-pubkey-3dbdc284-4be1884d to keyring
    D: read h# 4 Header sanity check: OK
    D: added key gpg-pubkey-56b4177a-4be18cab to keyring
    D: read h# 5 Header sanity check: OK
    D: added key gpg-pubkey-9c800aca-4be01999 to keyring
    D: read h# 2167 Header sanity check: OK
    D: added key gpg-pubkey-c66b6eae-4491871e to keyring
    D: read h# 2168 Header sanity check: OK
    D: added key gpg-pubkey-c0951497-4d95bdf7 to keyring
    D: read h# 2169 Header sanity check: OK
    D: added key gpg-pubkey-233ab63d-4c57fefd to keyring
    D: read h# 2170 Header sanity check: OK
    D: added key gpg-pubkey-629ff0c2-4c57ee97 to keyring
    D: read h# 2171 Header sanity check: OK
    D: added key gpg-pubkey-6f88bb2f-4fe5b9a8 to keyring
    D: read h# 2172 Header sanity check: OK
    D: added key gpg-pubkey-7c99e700-4c4eba16 to keyring
    D: read h# 2173 Header sanity check: OK
    D: added key gpg-pubkey-6ba6c051-4cb5ae9e to keyring
    D: read h# 2174 Header sanity check: OK
    D: added key gpg-pubkey-3f882d82-4c17a443 to keyring
    D: read h# 2175 Header sanity check: OK
    D: added key gpg-pubkey-7bc0e125-4ec2950f to keyring
    D: read h# 2176 Header sanity check: OK
    D: added key gpg-pubkey-5fd803b8-4fc1c459 to keyring
    D: read h# 2177 Header sanity check: OK
    D: added key gpg-pubkey-dcef338c-4c5829bd to keyring
    D: read h# 2178 Header sanity check: OK
    D: added key gpg-pubkey-edf0d733-4c5812f4 to keyring
    D: read h# 2179 Header sanity check: OK
    D: added key gpg-pubkey-175bfa4e-4f969255 to keyring
    D: read h# 2180 Header sanity check: OK
    D: added key gpg-pubkey-c862b42c-4f6c2a85 to keyring
    D: read h# 2181 Header sanity check: OK
    D: added key gpg-pubkey-766da614-4c57f9d9 to keyring
    D: read h# 2182 Header sanity check: OK
    D: added key gpg-pubkey-05905ea8-4c5816a1 to keyring
    D: read h# 2183 Header sanity check: OK
    D: added key gpg-pubkey-ddcd7f1a-4d13696e to keyring
    D: read h# 2184 Header sanity check: OK
    D: added key gpg-pubkey-6867f5be-4d77cecd to keyring
    D: read h# 2185 Header sanity check: OK
    D: added key gpg-pubkey-1abd1afb-4c97c60c to keyring
    D: read h# 3748 Header sanity check: OK
    D: added key gpg-pubkey-eefefde9-4c4423fc to keyring
    D: Using legacy gpg-pubkey(s) from rpmdb
    D: Expected size: 235472 = lead(96)+sigs(180)+pad(4)+data(235192)
    D: Actual size: 235472
    D: qmail20120701-1.0-1.x86_64.rpm: Header SHA1 digest: OK (ad3a2987ab03fa56d005abe5eb943d161dca863c)
    D: ========== relocations
    D: added binary package [0]
    D: found 0 source and 1 binary packages
    D: ========== +++ qmail20120701-1.0-1 x86_64/linux 0x0
    D: opening db index /var/lib/rpm/Providename nofsync:0x400 mode=0x0
    D: read h# 3066 Header V3 RSA/SHA256 Signature, key ID 3dbdc284: OK
    D: Requires: libQtCore.so.4()(64bit) YES (db provides)
    D: read h# 3329 Header V3 RSA/SHA256 Signature, key ID 3dbdc284: OK
    D: Requires: libQtGui.so.4()(64bit) YES (db provides)
    D: Requires: libQtNetwork.so.4()(64bit) YES (db provides)
    D: Requires: libQxtCore.so.0()(64bit) NO
    D: Requires: libQxtGui.so.0()(64bit) NO
    D: Requires: libQxtNetwork.so.0()(64bit) NO
    D: read h# 2993 Header V3 RSA/SHA256 Signature, key ID 3dbdc284: OK
    D: Requires: libc.so.6()(64bit) YES (db provides)
    D: Requires: libc.so.6(GLIBC_2.2.5)(64bit) YES (db provides)
    D: read h# 81 Header V3 RSA/SHA256 Signature, key ID 3dbdc284: OK
    D: Requires: libgcc_s.so.1()(64bit) YES (db provides)
    D: Requires: libgcc_s.so.1(GCC_3.0)(64bit) YES (db provides)
    D: Requires: libm.so.6()(64bit) YES (db provides)
    D: Requires: libpthread.so.0()(64bit) YES (db provides)
    D: read h# 143 Header V3 RSA/SHA256 Signature, key ID 3dbdc284: OK
    D: Requires: libstdc++.so.6()(64bit) YES (db provides)
    D: Requires: libstdc++.so.6(CXXABI_1.3)(64bit) YES (db provides)
    D: Requires: libstdc++.so.6(GLIBCXX_3.4)(64bit) YES (db provides)
    D: Requires: rpmlib(CompressedFileNames) <= 3.0.4-1 YES (rpmlib provides)
    D: Requires: rpmlib(PayloadFilesHavePrefix) <= 4.0-1 YES (rpmlib provides)
    D: Requires: rpmlib(PayloadIsLzma) <= 4.4.6-1 YES (rpmlib provides)
    D: opening db index /var/lib/rpm/Conflictname nofsync:0x400 mode=0x0
    D: opening db index /var/lib/rpm/Obsoletename nofsync:0x400 mode=0x0
    error: Failed dependencies:
    libQxtCore.so.0()(64bit) is needed by qmail20120701-1.0-1.x86_64
    libQxtGui.so.0()(64bit) is needed by qmail20120701-1.0-1.x86_64
    libQxtNetwork.so.0()(64bit) is needed by qmail20120701-1.0-1.x86_64
    D: closed db index /var/lib/rpm/Obsoletename
    D: closed db index /var/lib/rpm/Conflictname
    D: closed db index /var/lib/rpm/Providename
    D: closed db index /var/lib/rpm/Name
    D: closed db index /var/lib/rpm/Packages
    D: closed db environment /var/lib/rpm

    Look at the bold lines.
    These are just the libraries that I build from source code.

    Should someone can help me?

    Thanks in advance.

  2. #2
    Join Date
    Feb 2009
    Location
    Spain
    Posts
    25,547

    Default Re: How to build a rpm package that requires libraries that are notrpms.

    On 2012-08-31 21:16, borges1952 wrote:
    > Should someone can help me?


    Maybe you should ask in the programming subforum.

    --
    Cheers / Saludos,

    Carlos E. R.
    (from 11.4 x86_64 "Celadon" (Minas Tirith))

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •