-
-
Notifications
You must be signed in to change notification settings - Fork 163
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
Compilation issue #178
Comments
This is the first time we've had a report of a duplicate symbol, so I need to understand this better. Could you send me your full error log, to [email protected]? When you say, "removing one of the definitions", do you mean removing these lines, in #ifndef JSONCONS_UNICONS_UNICODE_TRAITS_HPP
#define JSONCONS_UNICONS_UNICODE_TRAITS_HPP
#include <system_error>
// HERE
namespace std {
template<>
struct is_error_code_enum<jsoncons::unicons::conv_errc> : public true_type
{
};
template<>
struct is_error_code_enum<jsoncons::unicons::encoding_errc> : public true_type
{
};
}
#endif That's the only place these symbols are defined, and I believe those are legal declarations. Similar declarations are used for error codes, e.g. #ifndef JSONCONS_JSON_ERROR_HPP
#define JSONCONS_JSON_ERROR_HPP
#include <system_error>
namespace std {
template<>
struct is_error_code_enum<jsoncons::json_errc> : public true_type
{
};
}
#endif Are you also getting redefinition errors for these? We're currently testing linux builds on ubuntu, I'll look into setting up a build project on centos. The specializations of Daniel |
I would need your help to pursue this further. Absent that, there's not much I can do. |
Dear Daniel, I am sending you the log files over the email. |
Thanks, reopening this issue, will investigate. If it compiles, there shouldn't be any issue from commenting out the line, it's purpose is only to indicate that the type |
Hi patternoia, Could you take master, and rebuild in Debian 4.9.2 environment? Or if you prefer, just replace Thanks, |
Hi Daniel, this fixes it. Thanks a lot for quick response. |
Resolved in v0.134.0 |
Hi,
I am considering your software for the first time. I have taken the latest release Release 0.123.2.
I am getting this following error of re-definition. When fixing by removing one of the definition I'm getting other consequential errors. Just wanted to know if any flags as such available for overcoming this issue?
Thanks and Regards,
Harish M
Compilation log snippet:
Scanning dependencies of target Nim_UT
[ 94%] Building CXX object CMakeFiles/Nim_UT.dir/imsgit_local/work/harism/reg/5g_core/ngnim/src/NIM_NfNotification.cxx.o
In file included from /imsgit_local/work/harism/reg/5g_core/ngnim/jsoncons/include/jsoncons/json_exception.hpp:13:0,
from /imsgit_local/work/harism/reg/5g_core/ngnim/jsoncons/include/jsoncons/basic_json.hpp:26,
from /imsgit_local/work/harism/reg/5g_core/ngnim/jsoncons/include/jsoncons/json.hpp:10,
from /imsgit_local/work/harism/reg/5g_core/ngnim/src/NIM_NfNotification.cxx:20:
/imsgit_local/work/harism/reg/5g_core/ngnim/jsoncons/include/jsoncons/unicode_traits.hpp:1482:12: error: specialization of ‘std::is_error_code_enumjsoncons::unicons::conv_errc’ after instantiation
struct is_error_code_enumjsoncons::unicons::conv_errc : public true_type
^
/imsgit_local/work/harism/reg/5g_core/ngnim/jsoncons/include/jsoncons/unicode_traits.hpp:1482:12: error: redefinition of ‘struct std::is_error_code_enumjsoncons::unicons::conv_errc’
In file included from /imsgit/Tools/tsp_tools/CONTAINER_TOOLSET/toolset_CENTOS/usr/include/c++/4.8.2/mutex:43:0,
from /imsgit_local/work/harism/reg/ims_tools/grpc/protobuf/include/google/protobuf/stubs/mutex.h:33,
from /imsgit_local/work/harism/reg/ims_tools/grpc/protobuf/include/google/protobuf/stubs/common.h:52,
from /imsgit_local/work/harism/reg/5g_core/nimrpc/inc/NimDiscovery.pb.h:9,
from /imsgit_local/work/harism/reg/5g_core/nimrpc/inc/NimDiscovery.grpc.pb.h:22,
from /imsgit_local/work/harism/reg/5g_core/ngnim/inc/NIM_GrpcHandler.h:12,
from /imsgit_local/work/harism/reg/5g_core/ngnim/inc/NIM_Framework.h:16,
from /imsgit_local/work/harism/reg/5g_core/ngnim/src/NIM_NfNotification.cxx:6:
/imsgit/Tools/tsp_tools/CONTAINER_TOOLSET/toolset_CENTOS/usr/include/c++/4.8.2/system_error:54:12: error: previous definition of ‘struct std::is_error_code_enumjsoncons::unicons::conv_errc’
struct is_error_code_enum : public false_type { };
The text was updated successfully, but these errors were encountered: