[CMake] rpmbuild breaks if HOME is wrong

fatman at crackmonkey.us fatman at crackmonkey.us
Mon Oct 4 13:03:44 EDT 2010


On Mon, 4 Oct 2010 18:19:20 +0200
Eric Noulard <eric.noulard at gmail.com> wrote:

> If you are speaking about CPackRPM generator then NO it shouldn't use
> HOME dir. If it is the case then may be you have a some custom .rpmrc
> somewhere?

Oh. I guessed it was the rpmbuild default. Maybe I do have a .rpmrc
somewhere. (Can't think why I would but I'll check anyway.)

fatman at nikko:/var/lib/buildbot$ sudo find / | grep .rpmrc$
[sudo] password for fatman:
/usr/lib/rpm/rpmrc
fatman at nikko:/var/lib/buildbot$

No .rpmrc, but there is some sort of defaults file. I searched this file
for the strings "~", "home" or "fatman", but didn't find them.

> If not could you gives us more informations:
>   - Which version of CMake
>   - Which Linux system (Mandriva, RedHat, OpenSuSE, Fedora...) with
> version

fatman at nikko:/var/lib/buildbot$ cmake --version
cmake version 2.8.1
fatman at nikko:/var/lib/buildbot$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 10.04.1 LTS
Release:        10.04
Codename:       lucid
fatman at nikko:/var/lib/buildbot$ uname -a
Linux nikko 2.6.32-24-generic-pae #43-Ubuntu SMP Thu Sep 16 15:30:27 UTC
2010 i686 GNU/Linux
fatman at nikko:/var/lib/buildbot$

I discovered the "wrong HOME" problem in rpmbuild.err and tested with
a corrected HOME variable. It worked, so the problem at least involves
the HOME variable, somehow.

error: failed to create directory %{_topdir}: /home/fatman/rpmbuild:
Permission denied

> Could you try to run the following command in your build directory:
> 
> cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -G RPM
> 
> and send me the output.

Note the different user. This is why the HOME variable is wrong.

buildbot at nikko:/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake$
cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -G RPM CPack: Create package using
RPM CPack: Install projects CPack: - Run preinstall target for: Reu2
CPack: - Install project: Reu2
CPack: Compress package
CPackRPM:Debug: rpmbuild version is <4.7.2>
CPackRPM:Debug: CPACK_TOPLEVEL_DIRECTORY
=
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM
CPackRPM:Debug: CPACK_TOPLEVEL_TAG                = Linux
CPackRPM:Debug: CPACK_TEMPORARY_DIRECTORY
=
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/Reu2-0.1.1-Linux
CPackRPM:Debug: CPACK_OUTPUT_FILE_NAME            =
Reu2-0.1.1-Linux.rpm CPackRPM:Debug: CPACK_OUTPUT_FILE_PATH
= /var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/Reu2-0.1.1-Linux.rpm
CPackRPM:Debug: CPACK_PACKAGE_FILE_NAME           = Reu2-0.1.1-Linux
CPackRPM:Debug: CPACK_RPM_BINARY_SPECFILE
=
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/SPECS/reu2.spec
CPackRPM:Debug: CPACK_PACKAGE_INSTALL_DIRECTORY   = Reu2
CPackRPM:Debug: CPACK_TEMPORARY_PACKAGE_FILE_NAME
=
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/Reu2-0.1.1-Linux.rpm
CPackRPM: Will use GENERATED spec
file:
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/SPECS/reu2.spec
CPackRPM:Debug: You may consult rpmbuild logs in: CPackRPM:Debug:
-
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/rpmbuild.err
CPackRPM:Debug:
-
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/rpmbuild.out
CPack: Finalize package CPack Error: Problem copying the
package:
/var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/_CPack_Packages/Linux/RPM/Reu2-0.1.1-Linux.rpm
to /var/lib/buildbot/Reu2/slave/bin/nikko/build/cmake/Reu2-0.1.1-Linux.rpm
CPack Error: Error when generating package: Reu2
buildbot at nikko:/var/lib/buildbot$

By the way, I am also building a DEB and TGZ package. They both
complete successfully.

Thanks.


More information about the CMake mailing list