Upgrading to 4.8.4.201801-GNURX -> multiple definition of `_cleanup_glue’ and `__reclaim_reent’ linker errors.
Upgrading to 4.8.4.201801-GNURX -> multiple definition of `_cleanup_glue’ and `__reclaim_reent’ linker errors.
Dear Colleagues,
What may be wrong with our project, throwing some multiple definition errors during linking with the latest 4.8.4.201801-GNURX toolchain?
‘Building target: CT-61L.elf’
‘Invoking Linker’
rx-elf-g++ -T “”C:\Projects\Instruments\AzuraNeo\CT-41L\src\rx63n.ld”” -L”C:\Projects\Instruments\AzuraNeo\CT-41L\HardwareDebug” -Wl,-M=CT-61L.map -Wl,–start-group -lCT-61L -lgcc -lstdc++ -Wl,–end-group -nostartfiles -Wl,-e_PowerON_Reset -Wl,–gc-sections -Wl,–cref -o “CT-61L.elf” [….. long list of object files skipped] libCT-61L.a
c:/devtools/gcc for renesas rx 4.8.4.201801-gnurx-elf/rx-elf/rx-elf/bin/../lib/gcc/rx-elf/4.8.4.201801-GNURX/../../../../rx-elf/lib\libc.a(lib_a-reent.o): In function `_cleanup_glue’:
(.text.cleanup_glue+0x0): multiple definition of `_cleanup_glue’
libCT-61L.a(reent.o):reent.c:(.text.cleanup_glue+0x0): first defined here
c:/devtools/gcc for renesas rx 4.8.4.201801-gnurx-elf/rx-elf/rx-elf/bin/../lib/gcc/rx-elf/4.8.4.201801-GNURX/../../../../rx-elf/lib\libc.a(lib_a-reent.o): In function `__reclaim_reent’:
(.text._reclaim_reent+0x0): multiple definition of `__reclaim_reent’
libCT-61L.a(reent.o):reent.c:(.text._reclaim_reent+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
Switching used toolchain back to 4.8.4.201701-GNURX allows to link the project without such problems.
Thank you for the answer!
Hello,
Thank you for reaching out to us.
Unfortunately, based on the information provided, we can’t reproduce the issue using a sample project. Can you please send us your entire project?
In order to send us the project, please open up a private support ticket and attach the archive to it.
The ticket will allow you to upload custom files/code (securely, using an encrypted SSL connection), which will help us faster identify the root cause of your issue.
–
Thank you,
The GNU Tools Team