groot
groot copied to clipboard
WIN10+VS2022 can not complie groot
I followed the Installation for Windows section in README.md. However, there is a problem compiling the libgroot project with the following error message:
1>------ Build started: Project: libgroot, Configuration: Debug x64 ------
1>driver.cpp
1>C:\Users\DELL\Desktop\dns\groot\src\resource-record.h(53,25): warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data
1>C:\Users\DELL\Desktop\dns\groot\concurrentqueue\concurrentqueue.h(431,2): warning C4554: '<<': check operator precedence for possible error; use parentheses to clarify precedence
1>C:\Users\DELL\Desktop\dns\groot\concurrentqueue\concurrentqueue.h(1682,20): message : see reference to function template instantiation 'bool moodycamel::details::circular_less_than<unsigned __int64>(T,T)' being compiled
1> with
1> [
1> T=unsigned __int64
1> ]
1>C:\Users\DELL\Desktop\dns\groot\concurrentqueue\concurrentqueue.h(1678,17): message : while compiling class template member function 'unsigned __int64 moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase::size_approx(void) const'
1>C:\Users\DELL\Desktop\dns\groot\concurrentqueue\concurrentqueue.h(1269,9): message : see the first reference to 'moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase::size_approx' in 'moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::size_approx'
1>C:\Users\DELL\Desktop\dns\groot\src\driver.cpp(13,5): message : see the first reference to 'moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::size_approx' in 'Driver::GenerateECsAndCheckProperties'
1>C:\Users\DELL\Desktop\dns\groot\concurrentqueue\concurrentqueue.h(1268,85): message : see reference to class template instantiation 'moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase' being compiled
1>C:\Users\DELL\Desktop\dns\groot\concurrentqueue\concurrentqueue.h(1265,9): message : while compiling class template member function 'unsigned __int64 moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::size_approx(void) const'
1>C:\Users\DELL\Desktop\dns\groot\src\driver.cpp(13,5): message : see the first reference to 'moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>::size_approx' in 'Driver::GenerateECsAndCheckProperties'
1>C:\Users\DELL\Desktop\dns\groot\src\job.h(16,51): message : see reference to class template instantiation 'moodycamel::ConcurrentQueue<std::unique_ptr<Task,std::default_delete<Task>>,moodycamel::ConcurrentQueueDefaultTraits>' being compiled
1>C:\Program Files\vcpkg\installed\x64-windows\include\fmt\core.h(1580,7): error C2338: static_assert failed: 'Cannot format an argument. To make type T formattable provide a formatter<T> specialization: https://fmt.dev/latest/api.html#udt'
1>C:\Program Files\vcpkg\installed\x64-windows\include\fmt\core.h(1808,23): message : see reference to function template instantiation 'fmt::v10::detail::value<Context> fmt::v10::detail::make_arg<true,Context,std::atomic<long>,0>(T &)' being compiled
1> with
1> [
1> Context=fmt::v10::format_context,
1> T=std::atomic<long>
1> ]
1>C:\Program Files\vcpkg\installed\x64-windows\include\fmt\core.h(1826,11): message : see reference to function template instantiation 'fmt::v10::format_arg_store<fmt::v10::format_context,std::atomic<long>>::format_arg_store<std::atomic<long>>(std::atomic<long> &)' being compiled
1>C:\Program Files\vcpkg\installed\x64-windows\include\fmt\core.h(2788,28): message : see reference to function template instantiation 'fmt::v10::format_arg_store<fmt::v10::format_context,std::atomic<long>> fmt::v10::make_format_args<fmt::v10::format_context,std::atomic<long>>(std::atomic<long> &)' being compiled
1>C:\Users\DELL\Desktop\dns\groot\src\driver.cpp(432,23): message : see reference to function template instantiation 'std::string fmt::v10::format<std::atomic<long>&>(fmt::v10::basic_format_string<char,std::atomic<long> &>,std::atomic<long> &)' being compiled
1>C:\Program Files\vcpkg\installed\x64-windows\include\fmt\core.h(1576,63): error C2079: '_' uses undefined struct 'fmt::v10::detail::type_is_unformattable_for<std::atomic<long>,char>'
1>zone-graph.cpp
1>C:\Users\DELL\Desktop\dns\groot\src\resource-record.h(53,25): warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data
1>Generating Code...
1>Done building project "libgroot.vcxproj" -- FAILED.
2>------ Build started: Project: groot, Configuration: Debug x64 ------
Could you tell me how to fix it?