Skip to content

Warning on Corrade #53

@AndySomogyi

Description

@AndySomogyi

Corrade build on OSX results in this somewhat annoying linker warning. This warning has been around since I first started using Corrade.

The warning shows up in both Eclipse (Unix Makefile) and Xcode builds.

I've haven't been bothered enough to try to track it down, but just reporting it here if anyone has a quick fix.

This warning does not seem to effect functionality or usage, it's just kind of annoying to see the warning on each build.

ld: warning: direct access in function 'Corrade::Utility::ConfigurationGroup::addGroup(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, Corrade::Utility::ConfigurationGroup*)' from file '../../extern/corrade/src/Corrade/Utility/libCorradeUtility.a(ConfigurationGroup.cpp.o)' to global weak symbol 'std::__1::char_traits<char>::eq(char, char)' from file 'CMakeFiles/CylinderTest.dir/AppDelegate.mm.o' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
ld: warning: direct access in function 'Corrade::Utility::ConfigurationGroup::setValueInternal(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, unsigned int, Corrade::Containers::EnumSet<Corrade::Utility::ConfigurationValueFlag, (unsigned char)255>)' from file '../../extern/corrade/src/Corrade/Utility/libCorradeUtility.a(ConfigurationGroup.cpp.o)' to global weak symbol 'std::__1::char_traits<char>::eq(char, char)' from file 'CMakeFiles/CylinderTest.dir/AppDelegate.mm.o' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
ld: warning: direct access in function 'Corrade::Utility::ConfigurationGroup::addValueInternal(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, Corrade::Containers::EnumSet<Corrade::Utility::ConfigurationValueFlag, (unsigned char)255>)' from file '../../extern/corrade/src/Corrade/Utility/libCorradeUtility.a(ConfigurationGroup.cpp.o)' to global weak symbol 'std::__1::char_traits<char>::eq(char, char)' from file 'CMakeFiles/CylinderTest.dir/AppDelegate.mm.o' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.

Metadata

Metadata

Assignees

Projects

Status

Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions