StevensDeptECE / GrailGUI

GrailGUI is a prototype of a replacement for web programming (HTTP, HTML, CSS, JavaScript) and GUI programming. It includes a client graphical API, a browser implemented in C++ and OpenGL, a protocol to transmit metadata and data in binary, a language (XDL) to describe the binary data, and local storage to retain data on the client should that be necessary. Encrypted communications (equivalent of TLS) have not yet been implemented.
GNU General Public License v3.0
7 stars 14 forks source link

inlining Struct::addSymCheckDup causes linker error in Release build #12

Closed ahuston-0 closed 3 years ago

ahuston-0 commented 3 years ago

This issue seems to be linked to the usage of O3, as the issue goes away when CMAKE_CXX_FLAGS_RELEASE is set to -O2, but if this can be fixed so we can ideally do the following, that would be great.

: && /usr/bin/c++ -O3 -DNDEBUG  test/CMakeFiles/testWidgets.dir/testWidgets.cc.o -o ../bin/testWidgets  -Wl,-rpath,/home/alice/.gitprojects/GrailGUI/libs  ../libs/libgrail.so  /usr/lib/libglfw.so.3.3  /usr/lib/libfreetype.so  -ldl  /usr/lib/libmpv.so  ../libs/libshpgrail.so && :
/usr/bin/ld: ../libs/libgrail.so: undefined reference to `Struct::addSymCheckDup(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, XDLType const*)'
collect2: error: ld returned 1 exit status