Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build error #2605

Closed
MyHubTo opened this issue Nov 19, 2021 · 1 comment
Closed

Build error #2605

MyHubTo opened this issue Nov 19, 2021 · 1 comment

Comments

@MyHubTo
Copy link

MyHubTo commented Nov 19, 2021

when i first build this project as following commands:

  1. git clone https://github.com/fmtlib/fmt.git
  2. mkdir build
  3. cd build
  4. cmake ..
  5. make

but some errors occurred :
(base) mrzhao@mrzhao-haier-dt:/Desktop/fmt/build$ cmake ..
-- CMake version: 3.20.20210413-g4bfe724
-- The CXX compiler identification is GNU 5.4.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Module support is disabled.
-- Version: 8.0.1
-- Build type: Release
-- CXX_STANDARD: 11
-- Performing Test has_std_11_flag
-- Performing Test has_std_11_flag - Success
-- Performing Test has_std_0x_flag
-- Performing Test has_std_0x_flag - Success
-- Performing Test SUPPORTS_USER_DEFINED_LITERALS
-- Performing Test SUPPORTS_USER_DEFINED_LITERALS - Success
-- Performing Test FMT_HAS_VARIANT
-- Performing Test FMT_HAS_VARIANT - Failed
-- Required features: cxx_variadic_templates
-- Looking for strtod_l
-- Looking for strtod_l - found
-- Target 'doc' disabled (requires doxygen)
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Performing Test HAVE_FNO_DELETE_NULL_POINTER_CHECKS
-- Performing Test HAVE_FNO_DELETE_NULL_POINTER_CHECKS - Success
-- FMT_PEDANTIC: OFF
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mrzhao/Desktop/fmt/build
(base) mrzhao@mrzhao-haier-dt:
/Desktop/fmt/build$ make
[ 1%] Building CXX object CMakeFiles/fmt.dir/src/format.cc.o
In file included from /home/mrzhao/Desktop/fmt/include/fmt/format-inl.h:29:0,
from /home/mrzhao/Desktop/fmt/src/format.cc:8:
/home/mrzhao/Desktop/fmt/include/fmt/format.h: In instantiation of ‘constexpr Char fmt::v8::detail::sign(Sign) [with Char = char; Sign = unsigned char]’:
/home/mrzhao/Desktop/fmt/include/fmt/format.h:1673:41: required from ‘fmt::v8::detail::write_nonfinite(OutputIt, bool, fmt::v8::basic_format_specs, const fmt::v8::detail::float_specs&)::<lambda(fmt::v8::detail::reserve_iterator)> [with Char = char; OutputIt = fmt::v8::appender; fmt::v8::detail::reserve_iterator = fmt::v8::appender]’
/home/mrzhao/Desktop/fmt/include/fmt/format.h:1674:27: required from ‘struct fmt::v8::detail::write_nonfinite(OutputIt, bool, fmt::v8::basic_format_specs, const fmt::v8::detail::float_specs&) [with Char = char; OutputIt = fmt::v8::appender]::<lambda(fmt::v8::detail::reserve_iteratorfmt::v8::appender)>’
/home/mrzhao/Desktop/fmt/include/fmt/format.h:1672:22: required from ‘OutputIt fmt::v8::detail::write_nonfinite(OutputIt, bool, fmt::v8::basic_format_specs, const fmt::v8::detail::float_specs&) [with Char = char; OutputIt = fmt::v8::appender]’
/home/mrzhao/Desktop/fmt/include/fmt/format.h:2032:27: required from ‘OutputIt fmt::v8::detail::write(OutputIt, T) [with Char = char; OutputIt = fmt::v8::appender; T = float; typename std::enable_if<fmt::v8::detail::is_fast_float::value, int>::type = 0]’
/home/mrzhao/Desktop/fmt/include/fmt/format.h:2175:23: required from ‘fmt::v8::detail::default_arg_formatter::iterator fmt::v8::detail::default_arg_formatter::operator()(T) [with T = float; Char = char; fmt::v8::detail::default_arg_formatter::iterator = fmt::v8::appender]’
/home/mrzhao/Desktop/fmt/include/fmt/core.h:1564:15: required from ‘decltype (vis(0)) fmt::v8::visit_format_arg(Visitor&&, const fmt::v8::basic_format_arg&) [with Visitor = fmt::v8::detail::default_arg_formatter; Context = fmt::v8::basic_format_context<fmt::v8::appender, char>; decltype (vis(0)) = fmt::v8::appender]’
/home/mrzhao/Desktop/fmt/include/fmt/format.h:2908:21: required from ‘void fmt::v8::detail::vformat_to(fmt::v8::detail::buffer&, fmt::v8::basic_string_view, fmt::v8::basic_format_args<fmt::v8::basic_format_context<typename std::conditional<std::is_same<typename fmt::v8::type_identity::type, char>::value, fmt::v8::appender, std::back_insert_iterator<fmt::v8::detail::buffer<typename fmt::v8::type_identity::type> > >::type, typename fmt::v8::type_identity::type> >, fmt::v8::detail::locale_ref) [with Char = char; typename fmt::v8::type_identity::type = char; typename std::conditional<std::is_same<typename fmt::v8::type_identity::type, char>::value, fmt::v8::appender, std::back_insert_iterator<fmt::v8::detail::buffer<typename fmt::v8::type_identity::type> > >::type = fmt::v8::appender]’
/home/mrzhao/Desktop/fmt/include/fmt/format-inl.h:2577:39: required from here
/home/mrzhao/Desktop/fmt/include/fmt/format.h:909:3: error:static assertion failed:
static_assert(std::is_same<Sign, sign_t>::value, "");

^
/home/mrzhao/Desktop/fmt/include/fmt/format.h:1308:20: error: ‘OutputIt fmt::v8::detail::write_padded(OutputIt, const fmt::v8::basic_format_specs&, size_t, size_t, F&&) [with fmt::v8::align::type align = (fmt::v8::align::type)1u; OutputIt = fmt::v8::appender; Char = char; F = fmt::v8::detail::write_bytes(OutputIt, fmt::v8::string_view, const fmt::v8::basic_format_specs&) [with fmt::v8::align::type align = (fmt::v8::align::type)1u; Char = char; OutputIt = fmt::v8::appender; fmt::v8::string_view = fmt::v8::basic_string_view]::<lambda(fmt::v8::detail::reserve_iteratorfmt::v8::appender)>&; size_t = long unsigned int]’, declared using local type ‘fmt::v8::detail::write_bytes(OutputIt, fmt::v8::string_view, const fmt::v8::basic_format_specs&) [with fmt::v8::align::type align = (fmt::v8::align::type)1u; Char = char; OutputIt = fmt::v8::appender; fmt::v8::string_view = fmt::v8::basic_string_view]::<lambda(fmt::v8::detail::reserve_iteratorfmt::v8::appender)>’, is used but never defined [-fpermissive]
FMT_CONSTEXPR auto write_padded(OutputIt out,
^
/home/mrzhao/Desktop/fmt/include/fmt/format.h:1308:20: error: ‘OutputIt fmt::v8::detail::write_padded(OutputIt, const fmt::v8::basic_format_specs&, size_t, size_t, F&&) [with fmt::v8::align::type align = (fmt::v8::align::type)1u; OutputIt = fmt::v8::appender; Char = char; F = fmt::v8::detail::write_nonfinite(OutputIt, bool, fmt::v8::basic_format_specs, const fmt::v8::detail::float_specs&) [with Char = char; OutputIt = fmt::v8::appender]::<lambda(fmt::v8::detail::reserve_iteratorfmt::v8::appender)>&; size_t = long unsigned int]’, declared using local type ‘fmt::v8::detail::write_nonfinite(OutputIt, bool, fmt::v8::basic_format_specs, const fmt::v8::detail::float_specs&) [with Char = char; OutputIt = fmt::v8::appender]::<lambda(fmt::v8::detail::reserve_iteratorfmt::v8::appender)>’, is used but never defined [-fpermissive]
CMakeFiles/fmt.dir/build.make:75: recipe for target 'CMakeFiles/fmt.dir/src/format.cc.o' failed
make[2]: *** [CMakeFiles/fmt.dir/src/format.cc.o] Error 1
CMakeFiles/Makefile2:172: recipe for target 'CMakeFiles/fmt.dir/all' failed
make[1]: *** [CMakeFiles/fmt.dir/all] Error 2
Makefile:165: recipe for target 'all' failed
make: *** [all] Error 2


and i test other version and there are some errors as :
libgmock.a(gmock-gtest-all.cc.o): In function testing::internal::RE::~RE()': gmock-gtest-all.cc:(.text+0x714f): undefined reference to regfreeA'
gmock-gtest-all.cc:(.text+0x7158): undefined reference to regfreeA' libgmock.a(gmock-gtest-all.cc.o): In function testing::internal::RE::FullMatch(char const*, testing::internal::RE const&)':
gmock-gtest-all.cc:(.text+0x71a2): undefined reference to regexecA' libgmock.a(gmock-gtest-all.cc.o): In function testing::internal::RE::PartialMatch(char const*, testing::internal::RE const&)':
gmock-gtest-all.cc:(.text+0x7202): undefined reference to regexecA' libgmock.a(gmock-gtest-all.cc.o): In function testing::internal::DeathTestImpl::Passed(bool)':
gmock-gtest-all.cc:(.text+0xe0d7): undefined reference to regexecA' libgmock.a(gmock-gtest-all.cc.o): In function testing::internal::RE::Init(char const*)':
gmock-gtest-all.cc:(.text+0x1bdf2): undefined reference to regcompA' gmock-gtest-all.cc:(.text+0x1be14): undefined reference to regcompA'
collect2: error: ld returned 1 exit status
test/CMakeFiles/locale-test.dir/build.make:99: recipe for target 'bin/locale-test' failed
make[2]: *** [bin/locale-test] Error 1
CMakeFiles/Makefile2:179: recipe for target 'test/CMakeFiles/locale-test.dir/all' failed
make[1]: *** [test/CMakeFiles/locale-test.dir/all] Error 2
Makefile:165: recipe for target 'all' failed
make: *** [all] Error 2


so what should i do?
thanks

@vitaut
Copy link
Contributor

vitaut commented Nov 19, 2021

It's a bug in an older versions of gcc worked around in 43419a4. Thanks for reporting!

@vitaut vitaut closed this as completed Nov 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants