cmake-3.13.1 build error
David Gessel
gessel at blackrosetech.com
Fri Dec 14 20:04:57 GMT 2018
Hi!
Yup, Clang, and not compatible for some reason.. Switching to GCC with the following
.if ${.CURDIR:M*devel/cmake*}
CC=gcc8
CXX=g++8
CPP=cpp8
make .endif
Which got past the initial compatibility tests - I guess GCC 8.2 has what's needed while Clang 6.0 does not, but it still errors out at
g++8 -O -march=barcelona -mtune=barcelona -march=amdfam10 -fstack-protector -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include
libCMakeLib.a(cmGlobalNinjaGenerator.cxx.o):cmGlobalNinjaGenerator.cxx:(.text+0xca5f): more undefined references to `Json::Value::asString[abi:cxx11]() const' follow
libCMakeLib.a(cmGlobalNinjaGenerator.cxx.o): In function `cmcmd_cmake_ninja_dyndep(__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const*, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >)':
cmGlobalNinjaGenerator.cxx:(.text+0xccf3): undefined reference to `Json::Reader::getFormattedErrorMessages[abi:cxx11]() const'
libCMakeLib.a(cmNinjaTargetGenerator.cxx.o): In function `cmNinjaTargetGenerator::WriteTargetDependInfo(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
cmNinjaTargetGenerator.cxx:(.text+0x93ec): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmNinjaTargetGenerator.cxx:(.text+0x9466): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmNinjaTargetGenerator.cxx:(.text+0x9526): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmNinjaTargetGenerator.cxx:(.text+0x958d): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmNinjaTargetGenerator.cxx:(.text+0x95d8): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
libCMakeLib.a(cmNinjaTargetGenerator.cxx.o):cmNinjaTargetGenerator.cxx:(.text+0x961c): more undefined references to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
libCMakeLib.a(cmNinjaTargetGenerator.cxx.o): In function `cmNinjaTargetGenerator::WriteTargetDependInfo(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
cmNinjaTargetGenerator.cxx:(.text+0x98cf): undefined reference to `Json::operator<<(std::ostream&, Json::Value const&)'
libCMakeLib.a(cmGlobalGenerator.cxx.o): In function `cmGlobalGenerator::WriteSummary(cmGeneratorTarget*)':
cmGlobalGenerator.cxx:(.text+0xf344): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmGlobalGenerator.cxx:(.text+0xf53c): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmGlobalGenerator.cxx:(.text+0xf6fc): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmGlobalGenerator.cxx:(.text+0xf79c): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
cmGlobalGenerator.cxx:(.text+0xf958): undefined reference to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
libCMakeLib.a(cmGlobalGenerator.cxx.o):cmGlobalGenerator.cxx:(.text+0xfaf4): more undefined references to `Json::Value::Value(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' follow
libCMakeLib.a(cmGlobalGenerator.cxx.o): In function `cmGlobalGenerator::WriteSummary(cmGeneratorTarget*)':
cmGlobalGenerator.cxx:(.text+0xfb57): undefined reference to `Json::operator<<(std::ostream&, Json::Value const&)'
collect2: error: ld returned 1 exit status
--- bin/ccmake ---
*** [bin/ccmake] Error code 1
make[3]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
1 error
make[3]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
--- Source/CMakeFiles/ccmake.dir/all ---
*** [Source/CMakeFiles/ccmake.dir/all] Error code 2
make[2]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
A failure has been detected in another branch of the parallel make
make[3]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
--- Source/CMakeFiles/CMakeServerLib.dir/all ---
*** [Source/CMakeFiles/CMakeServerLib.dir/all] Error code 2
make[2]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
A failure has been detected in another branch of the parallel make
make[3]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
--- Source/CMakeFiles/CPackLib.dir/all ---
*** [Source/CMakeFiles/CPackLib.dir/all] Error code 2
make[2]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
A failure has been detected in another branch of the parallel make
make[3]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
--- Source/CMakeFiles/CTestLib.dir/all ---
*** [Source/CMakeFiles/CTestLib.dir/all] Error code 2
make[2]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
4 errors
make[2]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
*** [all] Error code 2
make[1]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
1 error
make[1]: stopped in /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
This appears to be similar to this:
https://github.com/open-source-parsers/jsoncpp/issues/738
and is almost certainly due to the rest of the world being compiled with clang and cmake compiling under GCC.
So I tried this and it worked:
.if ${.CURDIR:M*devel/cmake*}
CFLAGS= -O -march=barcelona -mtune=barcelona
COPTFLAGS= -O -march=barcelona -mtune=barcelona
.endif
Apparently either Oz or O2 breaks the compiler checks with Clang. This works fine, and all is right with the world... well, userspace, but close enough.
On 14/12/2018 01.26, Tobias C. Berner wrote:
> Moin moin
>
> Cmake is trying to use clang6 not gcc8 as you said.
> There is probalby an error in your config that should switch it to gcc. How do you do it?
>
>
> Mfg Tobias
>
> Am Fr., 14. Dez. 2018, 10:23 hat David Gessel <gessel at blackrosetech.com <mailto:gessel at blackrosetech.com>> geschrieben:
>
>
> I got on FreeBSD 11.2-RELEASE-p6 #0 r341740
>
> gcc8-8.2.0_4
>
>
> loading initial cache file /var/ports/usr/ports/devel/cmake/work/cmake-3.13.1/Bootstrap.cmk/InitialCacheFlags.cmake
> -- The C compiler identification is Clang 6.0.0
> -- The CXX compiler identification is Clang 6.0.0
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Checking if compiler supports needed C++17 constructs
> -- Checking if compiler supports needed C++17 constructs - yes
> -- Checking if compiler supports C++ make_unique
> -- Checking if compiler supports C++ make_unique - no
> -- Checking if compiler supports C++ unique_ptr
> -- Checking if compiler supports C++ unique_ptr - no
> CMake Error at CMakeLists.txt:92 (message):
> The C++ compiler does not support C++11 (e.g. std::unique_ptr).
>
>
> -- Configuring incomplete, errors occurred!
> See also "/var/ports/usr/ports/devel/cmake/work/cmake-3.13.1/CMakeFiles/CMakeOutput.log".
> See also "/var/ports/usr/ports/devel/cmake/work/cmake-3.13.1/CMakeFiles/CMakeError.log".
> ---------------------------------------------
> Error when bootstrapping CMake:
> Problem while running initial CMake
> ---------------------------------------------
> ===> Script "configure" failed unexpectedly.
> Please report the problem to kde at FreeBSD.org [maintainer] and attach the
> "/var/ports/usr/ports/devel/cmake/work/cmake-3.13.1/config.log" including the
> output of the failure of your make command. Also, it might be a good idea to
> provide an overview of all packages installed on your system (e.g. a
> /usr/local/sbin/pkg-static info -g -Ea).
> *** Error code 1
>
>
>
> ImageMagick-nox11-6.9.9.28_2,1 Image processing tools (legacy version)
> acme-client-0.1.16_4 Native C client for Let's Encrypt, designed for security
> apache24-2.4.37 Version 2.4.x of Apache web server
> apr-1.6.5.1.6.1_1 Apache Portability Library
> autoconf-2.69_2 Automatically configure source code on many Un*x platforms
> autoconf-wrapper-20131203 Wrapper script for GNU autoconf
> automake-1.16.1_1 GNU Standards-compliant Makefile generator
> bind-tools-9.12.3_1 Command line tools from BIND: delv, dig, host, nslookup...
> binutils-2.30_6,1 GNU binary tools
> bison-3.2.2,1 Parser generator from FSF, (mostly) compatible with Yacc
> brotli-1.0.7_1,1 Generic-purpose lossless compression algorithm
> ca_root_nss-3.41 Root certificate bundle from the Mozilla Project
> cclient-2007f_3,1 C-client mail access routines by Mark Crispin
> cmake-3.13.1 Cross-platform Makefile generator
> curl-7.62.0 Command line tool and library for transferring data with URLs
> db5-5.3.28_7 Oracle Berkeley DB, revision 5.3
> dialog4ports-0.1.6 Console Interface to configure ports
> distcache-1.5.1 Distributed OpenSSL session caching tools
> docbook-1.5 Meta-port for the different versions of the DocBook DTD
> docbook-sgml-4.5_1 DocBook SGML DTD
> docbook-xml-5.0_3 DocBook XML DTD
> docbook-xsl-1.79.1_1,1 XSL DocBook stylesheets
> expat-2.2.6_1 XML 1.0 parser written in C
> ezjail-3.4.2_1 Framework to easily create, manipulate, and run FreeBSD jails
> fftw3-3.3.8_3 Fast C routines to compute the Discrete Fourier Transform
> fontconfig-2.12.6,1 XML-based font configuration API for X Windows
> freetype2-2.9.1 Free and portable TrueType font rendering engine
> gamin-0.1.10_9 File and directory monitoring system
> gcc-ecj-4.5 Eclipse Java Compiler used to build GCC Java
> gcc8-8.2.0_4 GNU Compiler Collection 8
> gdbm-1.18.1 GNU database manager
> gettext-runtime-0.19.8.1_2 GNU gettext runtime libraries and programs
> gettext-tools-0.19.8.1_1 GNU gettext development and translation tools
> ghostscript9-agpl-base-9.25_1 PostScript and PDF interpreter
> giflib-5.1.4 Tools and library routines for working with GIF images
> glib-2.56.3_2,1 Some useful routines of C programming (current stable version)
> gmake-4.2.1_3 GNU version of 'make' utility
> gmp-6.1.2_1 Free library for arbitrary precision arithmetic
> gnutls-3.5.19_1 GNU Transport Layer Security library
> gsfonts-8.11_8 Standard Fonts for Ghostscript
> help2man-1.47.8_1 Automatically generating simple manual pages from program output
> icu-63.1_1,1 International Components for Unicode (from IBM)
> idnkit-1.0_7 Library to handle internationalized domain names
> indexinfo-0.3.1 Utility to regenerate the GNU info page index
> iso8879-1986_3 Character entity sets from ISO 8879:1986 (SGML)
> jasper-1.900.1_17 Implementation of the codec specified in the JPEG-2000 standard
> jbig2dec-0.15 Decoder implementation of the JBIG2 image compression format
> jbigkit-2.1_1 Lossless compression for bi-level images such as scanned pages, faxes
> jpeg-turbo-2.0.1 SIMD-accelerated JPEG codec which replaces libjpeg
> json-c-0.13.1 JSON (JavaScript Object Notation) implementation in C
> jsoncpp-1.8.1_5 JSON reader and writer library for C++
> lcms2-2.9 Accurate, fast, and small-footprint color management engine
> ldb-1.1.29_2 LDAP-like embedded database
> ldns-1.7.0_1 Library for programs conforming to DNS RFCs and drafts
> libarchive-3.3.3,1 Library to create and read several streaming archive formats
> libargon2-20171227_1 Memory hard password hashing program and library
> libedit-3.1.20170329_2,1 Command line editor library
> libevent-2.1.8_2 API for executing callback functions on events or timeouts
> libffi-3.2.1_3 Foreign Function Interface
> libgcrypt-1.8.4_1 General purpose cryptographic library based on the code from GnuPG
> libgd-2.2.5,1 Graphics library for fast creation of images
> libgpg-error-1.32_1 Common error values for all GnuPG components
> libiconv-1.14_11 Character set conversion library
> libidn-1.34_1 Internationalized Domain Names command line tool
> libidn2-2.0.5_1 Implementation of IDNA2008 internationalized domain names
> libijs-0.35_5 C library that supports plugin printer driver for Ghostscript
> libinotify-20180201 Kevent based inotify compatible library
> liblqr-1-0.4.2 Easy to use C/C++ seam carving library
> libltdl-2.4.6 System independent dlopen wrapper
> liblz4-1.8.3,1 LZ4 compression library, lossless and very fast
> libnghttp2-1.35.0_1 HTTP/2.0 C Library
> libpaper-1.1.24.4 Library providing routines for paper size management
> libraw-0.18.13_2 Library for manipulating raw images
> libressl-2.8.2 Free version of the SSL/TLS protocol forked from OpenSSL
> libsunacl-1.0.1 Wrapper providing SunOS NFSv4 ACL API
> libtasn1-4.13_1 ASN.1 structure parser library
> libtool-2.4.6_1 Generic shared library support script
> libunistring-0.9.10_1 Unicode string library
> libuv-1.24.0 Multi-platform support library with a focus on asynchronous I/O
> libwmf-nox11-0.2.8.4_15 Tools and library for converting Microsoft WMF (windows metafile)
> libxml2-2.9.7 XML parser library for GNOME
> libxslt-1.1.32 The XSLT C library for GNOME
> libzip-1.5.1 C library for reading, creating, and modifying ZIP archives
> lynx-2.8.9.1,1 Non-graphical, text-based World-Wide Web client
> lzo2-2.10_1 Portable speedy, lossless data compression library
> m4-1.4.18_1,1 GNU M4
> mod_php72-7.2.13 PHP Scripting Language
> mosh-1.3.2_6 Mobile terminal that supports intermittent connectivity
> mpc-1.1.0_2 Library of complex numbers with arbitrarily high precision
> mpfr-4.0.1_2 Library for multiple-precision floating-point computations
> mysql56-client-5.6.42_1 Multithreaded SQL database (client)
> mysql56-server-5.6.42_1 Multithreaded SQL database (server)
> nasm-2.13.03,1 General-purpose multi-platform x86 and amd64 assembler
> nettle-3.4.1_1 Low-level cryptographic library
> nextcloud-php72-15.0.0 Personal cloud which runs on your own server
> ninja-1.8.2,2 Ninja is a small build system closest in spirit to Make
> oniguruma-6.9.0 Regular expressions library compatible with POSIX/GNU/Perl
> openjpeg-2.3.0_2 Open-source JPEG 2000 codec
> openldap-client-2.4.46 Open source LDAP client implementation
> openssh-portable-7.9.p1_1,1 The portable version of OpenBSD's OpenSSH
> p11-kit-0.23.14 Library for loading and enumerating of PKCS#11 modules
> p5-Locale-gettext-1.07 Message handling functions
> p5-Parse-Yapp-1.05_2 Perl extension for generating and using LALR parsers
> pcre-8.42_1 Perl Compatible Regular Expressions library
> perl5-5.26.3 Practical Extraction and Report Language
> php72-7.2.13 PHP Scripting Language
> php72-bz2-7.2.13 The bz2 shared extension for php
> php72-ctype-7.2.13 The ctype shared extension for php
> php72-curl-7.2.13 The curl shared extension for php
> php72-dom-7.2.13 The dom shared extension for php
> php72-exif-7.2.13 The exif shared extension for php
> php72-extensions-1.0 "meta-port" to install PHP extensions
> php72-fileinfo-7.2.13 The fileinfo shared extension for php
> php72-filter-7.2.13 The filter shared extension for php
> php72-ftp-7.2.13 The ftp shared extension for php
> php72-gd-7.2.13 The gd shared extension for php
> php72-gmp-7.2.13 The gmp shared extension for php
> php72-hash-7.2.13 The hash shared extension for php
> php72-iconv-7.2.13 The iconv shared extension for php
> php72-imap-7.2.13 The imap shared extension for php
> php72-intl-7.2.13_1 The intl shared extension for php
> php72-json-7.2.13 The json shared extension for php
> php72-ldap-7.2.13 The ldap shared extension for php
> php72-mbstring-7.2.13 The mbstring shared extension for php
> php72-mysqli-7.2.13 The mysqli shared extension for php
> php72-opcache-7.2.13 The opcache shared extension for php
> php72-openssl-7.2.13 The openssl shared extension for php
> php72-pcntl-7.2.13 The pcntl shared extension for php
> php72-pdo-7.2.13 The pdo shared extension for php
> php72-pdo_mysql-7.2.13 The pdo_mysql shared extension for php
> php72-pdo_sqlite-7.2.13 The pdo_sqlite shared extension for php
> php72-pecl-imagick-3.4.3_2 Provides a wrapper to the ImageMagick/GraphicsMagick library
> php72-pecl-redis-4.1.1 Extension to access Redis
> php72-pecl-smbclient-0.9.0_4 Smbclient wrapper extension
> php72-phar-7.2.13 The phar shared extension for php
> php72-posix-7.2.13 The posix shared extension for php
> php72-session-7.2.13 The session shared extension for php
> php72-simplexml-7.2.13 The simplexml shared extension for php
> php72-sqlite3-7.2.13 The sqlite3 shared extension for php
> php72-tokenizer-7.2.13 The tokenizer shared extension for php
> php72-wddx-7.2.13 The wddx shared extension for php
> php72-xml-7.2.13 The xml shared extension for php
> php72-xmlreader-7.2.13 The xmlreader shared extension for php
> php72-xmlwriter-7.2.13 The xmlwriter shared extension for php
> php72-xsl-7.2.13 The xsl shared extension for php
> php72-zip-7.2.13 The zip shared extension for php
> php72-zlib-7.2.13 The zlib shared extension for php
> pkg-1.10.5_5 Package manager
> pkgconf-1.5.4,1 Utility to help to configure compiler and linker flags
> png-1.6.35 Library for manipulating PNG images
> poppler-data-0.4.9 Poppler encoding data
> popt-1.16_2 Getopt(3) like library with a number of enhancements, from Redhat
> portmaster-3.19_18 Manage your ports without external databases or languages
> postfix-3.3.2_1,1 Secure alternative to widely-used Sendmail
> protobuf-3.6.1_1,1 Data interchange format library
> py27-asn1crypto-0.22.0 ASN.1 library with a focus on performance and a pythonic API
> py27-cffi-1.11.5 Foreign Function Interface for Python calling C code
> py27-cryptography-2.3 Cryptographic recipes and primitives for Python developers
> py27-dnspython-1.15.0 DNS toolkit for Python
> py27-enum34-1.1.6 Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7
> py27-idna-2.7 Internationalized Domain Names in Applications (IDNA)
> py27-ipaddress-1.0.22 Port of Python 3.3+ ipaddress module to 2.7
> py27-iso8601-0.1.11 Simple module to parse ISO 8601 dates
> py27-pycparser-2.18 C parser in Python
> py27-pycrypto-2.6.1_3 Python Cryptography Toolkit
> py27-setuptools-40.6.2 Python packages installer
> py27-six-1.12.0 Python 2 and 3 compatibility utilities
> python27-2.7.15 Interpreted object-oriented programming language
> readline-7.0.5 Library for editing command lines as they are typed
> redis-4.0.11_1 Persistent key-value database with built-in net interface
> rhash-1.3.5 Utility and library for computing and checking of file hashes
> samba46-4.6.16_1 Free SMB/CIFS and AD/DC server and client for Unix
> scons-3.0.1 Build tool alternative to make
> sdocbook-xml-1.1_2,2 "Simplified" DocBook XML DTD
> serf-1.3.9_3 Serf HTTP client library
> sqlite3-3.26.0 SQL database engine in a C library
> subversion-1.11.0_1 Version control system
> sudo-1.8.26 Allow others to run commands as root
> svgalib-1.4.3_7 Low level console graphics library
> talloc-2.1.14 Hierarchical pool based memory allocator
> tdb-1.3.16,1 Trivial Database
> tevent-0.9.37 Talloc based event loop library
> tiff-4.0.10 Tools and library routines for working with TIFF images
> tmux-2.8 Terminal Multiplexer
> tpm-emulator-0.7.4_2 Trusted Platform Module (TPM) emulator
> trousers-0.3.14_2 Open-source TCG Software Stack
> utf8proc-2.1.0 UTF-8 processing library
> webp-1.0.1_1 Google WebP image format conversion tool
> wget-1.20 Retrieve files from the Net via HTTP(S) and FTP
> xmlcatmgr-2.2_2 SGML and XML catalog manager
> xmlcharent-0.3_2 XML character entities
> zip-3.0_1 Create/update ZIP files compatible with PKZIP
>
>
> no config.log was saved.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-freebsd/attachments/20181214/f77551ff/attachment-0001.html>
More information about the kde-freebsd
mailing list