[SOLVED] 2.3 error building Samples on OpenSuse Tumbleweed. I

Discussion area about developing with Ogre-Next (2.1, 2.2 and beyond)


libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

[SOLVED] 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by libolt »

I am getting the following linker error when building the Samples in Debug mode on my system. I have only included part of the error since it was repeating enough that it used my Konsole's buffer. I can work around this by simply disabling building of samples but I wanted to see if there is a solution.

Code: Select all

/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
/usr/lib64/gcc/x86_64-suse-linux/11/../../../../x86_64-suse-linux/bin/ld: DWARF error: section .debug_str is larger than its filesize! (0xd830a vs 0xa8618)
CMakeFiles/Sample_Tutorial00_Basic.dir/Tutorial00_Basic.cpp.o: in function `main':
/home/libolt/builds/ogre-build/ogre-2.3/Samples/2.0/Tutorials/Tutorial00_Basic/Tutorial00_Basic.cpp:148: multiple definition of `main'; CMakeFiles/Sample_Tutorial00_Basic.dir/CMakeFiles/3.20.5/CompilerIdC/CMakeCCompilerId.c.o:/home/libolt/builds/ogre-build/ogre-2.3/Samples/2.0/Tutorials/Tutorial00_Basic/CMakeFiles/3.20.5/CompilerIdC/CMakeCCompilerId.c:728: first defined here
collect2: error: ld returned 1 exit status
make[2]: *** [Samples/2.0/Tutorials/Tutorial00_Basic/CMakeFiles/Sample_Tutorial00_Basic.dir/build.make:147: bin/Sample_Tutorial00_Basic-2.3.0] Error 1
make[1]: *** [CMakeFiles/Makefile2:2558: Samples/2.0/Tutorials/Tutorial00_Basic/CMakeFiles/Sample_Tutorial00_Basic.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 90%] Linking CXX executable ../../../../bin/Sample_Postprocessing
[ 90%] Built target Sample_Postprocessing
make: *** [Makefile:156: all] Error 2
Last edited by libolt on Wed Aug 18, 2021 6:34 pm, edited 1 time in total.
User avatar
dark_sylinc
OGRE Team Member
OGRE Team Member
Posts: 5436
Joined: Sat Jul 21, 2007 4:55 pm
Location: Buenos Aires, Argentina
x 1343

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by dark_sylinc »

Looks like something's been corrupted. The error says the debug data in the file is bigger than the file itself, which is invalid.

Did you try deleting the build folder and build from scratch again?

Alternatively could be a compiler bug. Changing gcc/clang version may help.

You can change compiler by either manually setting CMAKE_CXX_COMPILER (e.g. set to /usr/bin/g++-8 or /usr/bin/clang++-10) or by just symlinking /usr/bin/g++ or /usr/bin/clang++ to a different compiler.

You can also try another linker like gold or lld e.g.

Code: Select all

set( CMAKE_EXE_LINKER_FLAGS "-fuse-ld=lld" )
(this asumes /usr/bin/ld.lld correctly points to /usr/bin/ld.lld-10 or whatever version you have installed)

Btw is it possible it could be a HW bug? (e.g. RAM, disk) Have you noticed anything off in your machine?
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by libolt »

Yeah I have a bash script that pulls and builds the latest ogre 2.3 from git. It wipes out the build directory and recreates it every time. I've noticed this over the last couple of weeks. Though I hadn't built ogre for a couple of months before that. I tried running a manual build as well and got the same error.

I can try rebuilding with Clang. I tend to use GCC as it is what I have mostly used going back to DJGPP on DOS back in the mid 90s but I've played around with Clang.

I will give clang a shot and can try changing the linker as well if that doesn't work.

It's kind of hard to say if anything is off with the hardware. I may run a memtest if changing compilers/linkers doesn't work. I switched from Kwin X11 to Kwin Wayland a couple of months ago. So there have been some growing pains and every Plasma 5 release fixes more bugs in their Wayland compositor.

I did upgrade from 16 - 32 gigabytes of RAM about a year ago but hadn't noticed anything off since then. I'm running an older i5 4690k with Corsair Vengeance RAM but I forget the timing etc on it.

As always thank you dark_sylinc for the suggestions.
User avatar
dark_sylinc
OGRE Team Member
OGRE Team Member
Posts: 5436
Joined: Sat Jul 21, 2007 4:55 pm
Location: Buenos Aires, Argentina
x 1343

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by dark_sylinc »

Personally I've been testing with g++ (Ubuntu 8.4.0-1ubuntu1~18.04) 8.4.0 lately; and g++-7 (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0 also works.

But I haven't tried newer GCC versions. libc versions may also affect this bug. Mine is fairly old 2.27 (via ldd --version)

As for clang, I've tried a lot of them (6, 7, 9, 10) and they work. The one I test the most lately are 7 and 9.
I did upgrade from 16 - 32 gigabytes of RAM about a year ago but hadn't noticed anything off since then. I'm running an older i5 4690k with Corsair Vengeance RAM but I forget the timing etc on it.
Don't forget disk. Available disk space matters and do "smartctl -a /dev/sda" to check SMART.
It wouldn't hurt to run e2fsck on your partitions.

This is likely a SW bug though.There were changes to linkers and glibc in the last few months that broke a lot of stuff so I wouldn't be surprised it broke something ours as well.
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by libolt »

I've used Tumbleweed for almost a decade now and I know that I built an earlier version of 2.3 on GCC 10 and I'm pretty sure I've built everything on GCC 11 more recently but I can't say for certain.

So it now fails in a different spot using Clang 12/LLD 12. I have already verified that I have _every_ xcb -devel package installed.

Code: Select all

[ 74%] Linking CXX executable ../../../../bin/Sample_AnimationTagPoint
ld.lld: error: ../../../../lib/libOgreMain.so.2.3.0: undefined reference to xcb_poll_for_event [--no-allow-shlib-undefined]
clang-12.0: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Samples/2.0/ApiUsage/AnimationTagPoint/CMakeFiles/Sample_AnimationTagPoint.dir/build.make:131: bin/Sample_AnimationTagPoint-2.3.0] Error 1
make[1]: *** [CMakeFiles/Makefile2:1626: Samples/2.0/ApiUsage/AnimationTagPoint/CMakeFiles/Sample_AnimationTagPoint.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
If I disable building the samples it dies here with the same error message.

Code: Select all

[ 98%] Linking CXX executable ../../bin/OgreCmgenToCubemap
ld.lld: error: ../../lib/libOgreMain.so.2.3.0: undefined reference to xcb_poll_for_event [--no-allow-shlib-undefined]
clang-12.0: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Tools/CmgenToCubemap/CMakeFiles/OgreCmgenToCubemap.dir/build.make:108: bin/OgreCmgenToCubemap] Error 1
make[1]: *** [CMakeFiles/Makefile2:646: Tools/CmgenToCubemap/CMakeFiles/OgreCmgenToCubemap.dir/all] Error 2
make: *** [Makefile:156: all] Error 2

For the drive, I'm using a Samsung 850 EVO 1TB SSD. I currently have roughly 58 gigabytes free. I don't see any errors in the SMART output below. I can run a manual test on it but that will have to wait until I have some free time.

Code: Select all

smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.13.9-2.g2e9639b-default] (SUSE RPM)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Samsung based SSDs
Device Model:     Samsung SSD 850 EVO 1TB
Serial Number:    S2RENX0J211371D
LU WWN Device Id: 5 002538 d41c54045
Firmware Version: EMT02B6Q
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
TRIM Command:     Available
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2, ATA8-ACS T13/1699-D revision 4c
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Aug 12 13:58:49 2021 MST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                                        was never started.
                                        Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever 
                                        been run.
Total time to complete Offline 
data collection:                (    0) seconds.
Offline data collection
capabilities:                    (0x53) SMART execute Offline immediate.
                                        Auto Offline data collection on/off support.
                                        Suspend Offline collection upon new
                                        command.
                                        No Offline surface scan supported.
                                        Self-test supported.
                                        No Conveyance Self-test supported.
                                        Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                                        power-saving mode.
                                        Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                                        General Purpose Logging supported.
Short self-test routine 
recommended polling time:        (   2) minutes.
Extended self-test routine
recommended polling time:        ( 512) minutes.
SCT capabilities:              (0x003d) SCT Status supported.
                                        SCT Error Recovery Control supported.
                                        SCT Feature Control supported.
                                        SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0032   096   096   000    Old_age   Always       -       16737
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       59
177 Wear_Leveling_Count     0x0013   095   095   000    Pre-fail  Always       -       97
179 Used_Rsvd_Blk_Cnt_Tot   0x0013   100   100   010    Pre-fail  Always       -       0
181 Program_Fail_Cnt_Total  0x0032   100   100   010    Old_age   Always       -       0
182 Erase_Fail_Count_Total  0x0032   100   100   010    Old_age   Always       -       0
183 Runtime_Bad_Block       0x0013   100   100   010    Pre-fail  Always       -       0
187 Uncorrectable_Error_Cnt 0x0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0032   059   050   000    Old_age   Always       -       41
195 ECC_Error_Rate          0x001a   200   200   000    Old_age   Always       -       0
199 CRC_Error_Count         0x003e   100   100   000    Old_age   Always       -       0
235 POR_Recovery_Count      0x0012   099   099   000    Old_age   Always       -       33
241 Total_LBAs_Written      0x0032   099   099   000    Old_age   Always       -       72662386598

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%     16726         -
# 2  Short offline       Completed without error       00%     16702         -
# 3  Short offline       Completed without error       00%     16678         -
# 4  Short offline       Completed without error       00%     16654         -
# 5  Short offline       Completed without error       00%     16630         -
# 6  Short offline       Completed without error       00%     16606         -
# 7  Short offline       Completed without error       00%     16582         -
# 8  Short offline       Completed without error       00%     16558         -
# 9  Short offline       Completed without error       00%     16534         -
#10  Short offline       Completed without error       00%     16510         -
#11  Short offline       Completed without error       00%     16486         -
#12  Extended offline    Completed without error       00%     16469         -
#13  Short offline       Completed without error       00%     16438         -
#14  Short offline       Completed without error       00%     16414         -
#15  Short offline       Completed without error       00%     16390         -
#16  Short offline       Completed without error       00%     16366         -
#17  Short offline       Completed without error       00%     16342         -
#18  Short offline       Completed without error       00%     16318         -
#19  Short offline       Completed without error       00%     16294         -
#20  Short offline       Completed without error       00%     16270         -
#21  Short offline       Completed without error       00%     16246         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
  255        0    65535  Read_scanning was never started
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
Unfortunately I do not have another Linux x86_64 system to test on. My other linux systems are all ARM based SBCs running raspbian, Armbian etc and are headless.
User avatar
dark_sylinc
OGRE Team Member
OGRE Team Member
Posts: 5436
Joined: Sat Jul 21, 2007 4:55 pm
Location: Buenos Aires, Argentina
x 1343

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by dark_sylinc »

I'm not sure why it is complaining (or rather, why it does not complain for me?)

but the solution would be, somewhere in OgreMain/CMakeLists.txt:

Code: Select all

#Replace
target_link_libraries(OgreMain ${LIBRARIES})

# with:
target_link_libraries(OgreMain ${LIBRARIES} xcb-randr X11-xcb)
I'm not sure if both are required, it's possible only X11-xcb is needed which is where I think xcb_poll_for_event is defined.

This is a reasonable error (unlike the DWARF error).

Your SSD: Congrats, your SSD appears to be in perfect health.
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by libolt »

I apologize for the delay in getting back to you on this.

I just retried building with Clang/LLD and the latest git of 2.3.

I updated the target_link_libraries in OgreMain/CMakeLists.txt with the xcb libraries you listed as well as in Samples/2.0/ApiUsage/AnimationTagPoint/CMakeLists.txt and still get the same error.

I also rebuilt using GCC/LD and get the original DWARF error.

Building with GCC/LLD gives the undefined reference to xcb_poll_for_event error like with Clang/LLD.
libolt
Greenskin
Posts: 126
Joined: Wed Jan 19, 2005 4:48 am
x 9

Re: 2.3 error building Samples on OpenSuse Tumbleweed. I

Post by libolt »

So interesting thing. I wiped out my ogre 2.3 git repo and re-cloned it. I then did a default build and it completed without errors. So something must have gotten screwed up in my repo somehow.