Gábor Gyimesi created MINIFICPP-2945:
----------------------------------------

             Summary: Provenance build fails on Windows with fmt lib from source
                 Key: MINIFICPP-2945
                 URL: https://issues.apache.org/jira/browse/MINIFICPP-2945
             Project: Apache NiFi MiNiFi C++
          Issue Type: Bug
            Reporter: Gábor Gyimesi
            Assignee: Gábor Gyimesi
             Fix For: 1.2.0


 
{code:java}
FAILED: libminifi/CMakeFiles/core-minifi.dir/src/provenance/Provenance.cpp.obj 
C:\PROGRA~1\MICROS~2\2022\COMMUN~1\VC\Tools\MSVC\1444~1.352\bin\Hostx64\x64\cl.exe
  /nologo /TP -DCURL_STATICLIB -DLIBMINIFI=1 
-DMINIFI_EXTENSION_GROUP_NAME=org.apache.nifi.minifi 
-DMINIFI_REGISTER_EXTENSION_FN=MinifiRegisterCppExtension_bx2AiD0THtValfvyhVUCMevv
 -DMINIFI_VERSION_STR=\"2.27.02\" -DNOMINMAX -DRANGES_CXX_THREAD_LOCAL=201103L 
-DRAPIDJSON_HAS_STDSTRING -DRPM_CONFIG_DIR=\"/etc/nifi-minifi-cpp\" 
-DRPM_LIB_DIR=\"/usr/lib/nifi-minifi-cpp\" 
-DRPM_LOG_DIR=\"/var/log/nifi-minifi-cpp\" 
-DRPM_WORK_DIR=\"/var/lib/nifi-minifi-cpp\" -DSODIUM_STATIC=1 
-DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -DUSE_OS_TZDB=0 
-DWIN32_LEAN_AND_MEAN -DYAML_CPP_STATIC_DEFINE -D_CRT_SECURE_NO_WARNINGS 
-Dcore_minifi_EXPORTS -Dgsl_CONFIG_CONTRACT_VIOLATION_THROWS 
-Dgsl_CONFIG_DEFAULTS_VERSION=1 -ID:\w\nifi-build-new1\libminifi\include 
-ID:\w\nifi-build-new1\bx64\_deps\winflexbison-src\flex\src 
-ID:\w\nifi-build-new1\bx64\libminifi\include 
-ID:\w\nifi-build-new1\core-framework\include 
-ID:\w\nifi-build-new1\minifi-api\include 
-ID:\w\nifi-build-new1\minifi-api\common\include 
-ID:\w\nifi-build-new1\core-framework\common\include 
-external:ID:\w\nifi-build-new1\bx64\el-generated 
-external:ID:\w\nifi-build-new1\bx64\_deps\gsl-lite-src\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\zlib-src 
-external:ID:\w\nifi-build-new1\thirdparty\concurrentqueue 
-external:ID:\w\nifi-build-new1\thirdparty\rapidjson-48fbd8cd202ca54031fe799db2ad44ffa8e77c13\include
 -external:ID:\w\nifi-build-new1\bx64\_deps\spdlog-src\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\fmt-src\include 
-external:ID:\w\nifi-build-new1\bx64\thirdparty\libsodium-install\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\range-v3_src-src\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\date_src-src\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\asio-src\include 
-external:ID:\w\nifi-build-new1\bx64\thirdparty\openssl-install\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\magic_enum-src\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\curl-src\include 
-external:ID:\w\nifi-build-new1\bx64\_deps\yaml-cpp-src\include -external:W0 
/DWIN32 /D_WINDOWS /EHsc /O2 /Ob1 /DNDEBUG -std:c++latest -MD -Zi /W3 /utf-8 
/bigobj /MP /diagnostics:caret /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope 
/Zc:inline /std:c++latest /permissive- /showIncludes 
/Folibminifi\CMakeFiles\core-minifi.dir\src\provenance\Provenance.cpp.obj 
/Fdlibminifi\CMakeFiles\core-minifi.dir\ /FS -c 
D:\w\nifi-build-new1\libminifi\src\provenance\Provenance.cpp
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2673,45): error 
C2079: '_' uses undefined struct 
'fmt::v11::detail::type_is_unformattable_for<std::expected<void,std::string>,fmt::v11::detail::parse_format_specs::char_type>'
    type_is_unformattable_for<T, char_type> _;
                                            ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2756,20): note: 
while evaluating constexpr function 
'fmt::v11::detail::format_string_checker<char,std::expected<void,std::string>>::on_format_specs'
    on_format_specs(id, begin, begin);  // Call parse() on empty specs.
                   ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2581,33): note: 
while evaluating constexpr function 
'fmt::v11::detail::format_string_checker<char,std::expected<void,std::string>>::on_replacement_field'
    handler.on_replacement_field(handler.on_arg_id(), begin);
                                ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2647,36): note: 
while evaluating constexpr function 'fmt::v11::detail::parse_replacement_field'
    begin = parse_replacement_field(p, end, handler);
                                   ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2884,40): note: 
while evaluating constexpr function 'fmt::v11::detail::parse_format_string'
      detail::parse_format_string<true>(str_, checker(s));
                                       ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2673,45): note: the 
template instantiation context (the oldest one first) is
    type_is_unformattable_for<T, char_type> _;
                                            ^
D:\w\nifi-build-new1\libminifi\src\provenance\Provenance.cpp(445,24): note: see 
reference to function template instantiation 
'fmt::v11::basic_format_string<char,std::expected<void,std::string>>::basic_format_string<char[39],0>(const
 S (&))' being compiled
        with
        [
            S=char [39]
        ]
    logger_->log_error("Failed to append provenance events: {}", append_result);
                       ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2884,54): note: see 
reference to class template instantiation 
'fmt::v11::detail::format_string_checker<char,std::expected<void,std::string>>' 
being compiled
      detail::parse_format_string<true>(str_, checker(s));
                                                     ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2732,3): note: while 
compiling class template member function 
'fmt::v11::detail::format_string_checker<char,std::expected<void,std::string>>::format_string_checker(fmt::v11::basic_string_view<char>)'
  explicit FMT_CONSTEXPR format_string_checker(basic_string_view<Char> fmt)
  ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2884,54): note: see 
the first reference to 
'fmt::v11::detail::format_string_checker<char,std::expected<void,std::string>>::format_string_checker'
 in 'org::apache::nifi::minifi::provenance::ProvenanceReporterImpl::commit'
      detail::parse_format_string<true>(str_, checker(s));
                                                     ^
D:\w\nifi-build-new1\bx64\_deps\fmt-src\include\fmt\base.h(2735,23): note: see 
reference to function template instantiation 'const Char 
*fmt::v11::detail::parse_format_specs<std::expected<void,std::string>,fmt::v11::detail::compile_parse_context<Char>>(ParseContext
 &)' being compiled
        with
        [
            Char=char,
            ParseContext=fmt::v11::detail::compile_parse_context<char>
        ]
        parse_funcs_{&parse_format_specs<Args, parse_context_type>...} {}
                      ^

{code}
 



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to