MantisBT - CMake
View Issue Details
0015836CMakeCMakepublic2015-11-06 01:262016-05-02 08:30
Abdul Naseer 
 
immediateblockalways
closedno change required 
CMake 3.1 
 
0015836: Cmake Build Fails for cmake 3.1 version
I have tried to build the package cmake 3.1
I used below commands to build the package and install it

[root@euca-10-254-99-245 cmake-3.1.0]# ./bootstrap --prefix=/apps/public/cmake_3.1/ --system-libs --no-system-jsoncpp --mandir=/share/man
this above command is successfully completed.

But when i go for the second command ( gmake command) it fails at some point ( at 31%-fails)

[root@euca-10-254-169-217 cmake-3.1.0]# gmake
[ 3%] Built target cmIML_test
[ 9%] Built target cmsys
[ 9%] Built target cmsysTestDynload
[ 12%] Built target cmsys_c
[ 12%] Built target cmsysTestProcess
[ 13%] Built target cmsysTestSharedForward
[ 14%] Built target cmsysTestsC
[ 17%] Built target cmsysTestsCxx
[ 18%] Built target cmcompress
[ 31%] Built target cmForm
[ 31%] Building CXX object Source/CMakeFiles/CMakeLib.dir/cmArchiveWrite.cxx.o
/ephemeral/abdnasee/cmake/cmake-3.1.0/Source/cmArchiveWrite.cxx: In function âvoid cm_archive_entry_copy_sourcepath(archive_entry*, const std::string&)â:
/ephemeral/abdnasee/cmake/cmake-3.1.0/Source/cmArchiveWrite.cxx:43: error: âarchive_entry_copy_sourcepath_wâ was not declared in this scope
/ephemeral/abdnasee/cmake/cmake-3.1.0/Source/cmArchiveWrite.cxx: In constructor âcmArchiveWrite::cmArchiveWrite(std::ostream&, cmArchiveWrite::Compress, cmArchiveWrite::Type)â:
/ephemeral/abdnasee/cmake/cmake-3.1.0/Source/cmArchiveWrite.cxx:164: error: âarchive_write_set_format_7zipâ was not declared in this scope
gmake[2]: *** [Source/CMakeFiles/CMakeLib.dir/cmArchiveWrite.cxx.o] Error 1
gmake[1]: *** [Source/CMakeFiles/CMakeLib.dir/all] Error 2
gmake: *** [all] Error 2

You can simply download one tar file of cmake 3.1 and untar it
and do the build using below commands

When i am using the first command ( ./bootstrap --prefix=/apps/public/cmake_3.1/ --system-libs --no-system-jsoncpp --mandir=/share/man) without the options --system-libs, the build get successful, but then there wont be any lib files inside the installed path.

Is this a bug or do i need to install any packages extra. I have installed all the required dependencies.

No tags attached.
jpg Cmake error.JPG (128,444) 2015-11-06 01:26
https://public.kitware.com/Bug/file/5566/Cmake%20error.JPG
jpg
Issue History
2015-11-06 01:26Abdul NaseerNew Issue
2015-11-06 01:26Abdul NaseerFile Added: Cmake error.JPG
2015-11-06 08:38Brad KingNote Added: 0039842
2015-11-10 04:48Abdul NaseerNote Added: 0039854
2015-11-10 08:40Brad KingNote Added: 0039855
2015-11-10 16:05Gregor JasnyNote Added: 0039860
2015-11-10 16:12Brad KingStatusnew => resolved
2015-11-10 16:12Brad KingResolutionopen => no change required
2016-05-02 08:30Robert MaynardNote Added: 0040958
2016-05-02 08:30Robert MaynardStatusresolved => closed

Notes
(0039842)
Brad King   
2015-11-06 08:38   
When using --system-libs it is up to you to ensure that needed versions of the dependencies are available. In this case it looks like your version of libarchive may not provide needed APIs. What version is it?
(0039854)
Abdul Naseer   
2015-11-10 04:48   
Hello Below is the libarchive version am using.

[root@euca-10-254-99-245 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.5 (Santiago)
[root@euca-10-254-99-245 ~]# rpm -qa | grep libarchive
libarchive-2.8.3-4.el6_2.x86_64
libarchive-devel-2.8.3-4.el6_2.x86_64
[root@euca-10-254-99-245 ~]#
====================================================================
But then i again tried to install the libarchive higher version 3.1.2
but then it has dependencies for GLIBC 2.14

=======================================================================
[root@euca-10-254-99-245 ~]# rpm -ivh libarchive-3.1.2-7.el7.x86_64.rpm
warning: libarchive-3.1.2-7.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
error: Failed dependencies:
        libc.so.6(GLIBC_2.14)(64bit) is needed by libarchive-3.1.2-7.el7.x86_64
        libc.so.6(GLIBC_2.15)(64bit) is needed by libarchive-3.1.2-7.el7.x86_64
        libc.so.6(GLIBC_2.16)(64bit) is needed by libarchive-3.1.2-7.el7.x86_64
        liblzma.so.5()(64bit) is needed by libarchive-3.1.2-7.el7.x86_64
        liblzma.so.5(XZ_5.0)(64bit) is needed by libarchive-3.1.2-7.el7.x86_64
[root@euca-10-254-99-245 ~]#

=======================================================================

[root@euca-10-254-99-245 ~]# rpm -qa | grep glibc
glibc-devel-2.12-1.166.el6_7.3.x86_64
compat-glibc-headers-2.5-46.2.x86_64
glibc-headers-2.12-1.166.el6_7.3.x86_64
glibc-devel-2.12-1.166.el6_7.3.i686
glibc-2.12-1.166.el6_7.3.x86_64
glibc-2.12-1.166.el6_7.3.i686
glibc-utils-2.12-1.166.el6_7.3.x86_64
glibc-common-2.12-1.166.el6_7.3.x86_64
[root@euca-10-254-99-245 ~]#
(0039855)
Brad King   
2015-11-10 08:40   
> without the options --system-libs, the build get successful, but then there wont be any lib files inside the installed path.

What is wrong with that? The bundled libraries are statically linked into the cmake binaries and everything should work.

If you do want to use system libraries then it is beyond CMake's control how they are built, what versions they are, or what dependencies they have.
(0039860)
Gregor Jasny   
2015-11-10 16:05   
There was a version check for system libarchive added with
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3526daf5a2667d4bf8aee442d6e73f8b71ea6efc [^]
(0040958)
Robert Maynard   
2016-05-02 08:30   
Closing resolved issues that have not been updated in more than 4 months.