Home
Log In
Register
About Us
Contact Us
Sitemap
Language:
English
日本語
General
Welcome
About Us
Services
About Our Services
Products
RX
User Guide
Building the Toolchain
Download Toolchains
Latest Toolchains
Legacy Toolchains
Source Code
Latest Source Code
Legacy Source Code
RL78
User Guide
Building the Toolchain
Download Toolchains
Latest Toolchains
Legacy Toolchains
Source Code
Latest Source Code
Legacy Source Code
RISC-V MCU
Download Toolchains
RZ
Documentation
Download Toolchains
Source Code
V850
Download Toolchains
Source Code
SH
Download Toolchains
Latest Toolchains
Legacy Toolchains
Source Code
Latest Source Code
Legacy Source Code
GDB
GDB Source Code
Legacy Downloads
Legacy Toolchains
H8
M16C
Legacy Source Code
H8
M16C
Release Notes
RENESAS Tools
Support
About Our Support
New Support Query
My Support Requests
Forum
Ask A Question
View All Topics
View All Questions
Topics
General
Toolchain Support
GCC Support
Renesas RX
Renesas RL78
GDB Support
Renesas RX
Renesas RL78
Newlib Support
Binutils Support
Help
User’s Guide
FAQ
What Is the Activation Code and Where Do I Find It?
Activation Code Will Not Work. What To Do?
Licensing Terms for Libraries & Programs Built With Them
Technical FAQ
Contact Us
Links
Useful Links
Documentation
Getting Started
Quick Start Guide on Open-Source Tools
Getting Started for HEW
Getting Started for e2studio
GNU Tools Manuals
GNU Assembler
GNU Linker
GNU Compiler
GNU Binary Utilities
GNU Debugger
GNU SH User Manual
Migration Guides
IAR – GNUH8 Migration Guide
IAR-GNUM16CM32C Migration Guide
Renesas – GNURX Migration Guide
Renesas – GNUH8 Migration Guide
Renesas – GNUM16CM32C Migration Guide
Renesas – GNUSH Migration Guide
TASKING – GNUM16CM32C Migration Guide
Darius Galis’s reputation
Darius Galis
426 Rep.
Follow
About
Activity Feed
Reputation
Questions
Answers
Followers
Following
Darius Galis's reputation
Total
426
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+1
May 17, 2016
Commented
Hello Adam, Thank you for choosing the GNUARM-NONE-EABI toolchain. Yes, the GNUARM-NONE-EABI toolchain allows the user to map portions of the code and data into particular pages of internal memory. The documentation which describe how to write your linker script can be found in the toolchain installation folder > Documentation > GNU Manuals > Using ld > 3. Linker Scripts. If you don't like the default implementation, you can write your own linker script as shown in the 3.3 sub-chapter: Simple Linker Script Example. Another solution for mapping portions of code in particular memory regions is provided by the __attribute__ ((section ("section-name"))) keyword. You will find the documentation for this attribute in your toolchain installation folder > Documentation > GNU Manuals > Using gcc > 6.30 Declaring Attributes of Functions > section ("section-name"). By default, all of your written code goes the .text section, but E2studio allows you to create your own sections in the memory regions of your choosing. You can see the memory sections used by your project by right-clicking it > Renesas Tool Settings -> Linker -> Sections. There, at the Section tab, you can add more sections by clicking the third button (Add section) below the Section Viewer label. By clicking it, a new section (named section1) is automatically created and then you can set its details in the right panel: name, starting address, etc. Then, by using the attribute __attribute__ ((section ("section-name"))) keyword for any declared variable or function, it will map that variable/function in your 'section1' defined section. If you have any more questions, or you require any help with the script, please let us know. — Best regards, Darius, The GNU Tools Support Team
+1
May 12, 2016
Commented
Hi Adam, Thank you for your feedback! The documentation I sent is surely for libstdc++. The toolchain is not using glibc which is specific to the native compilers (you can find more about it here: https://www.gnu.org/software/libc/documentation.html ), instead it is using newlib/optlib which are just C libraries specifically designed for embedded systems. The C++ components are part of libstdc++ which comes as a GCC element. >> "Although the code links and runs OK without any documentation it is difficult to know if this is correct." This linker error is a known issue with the v14.02 toolchain which was later fixed in v15.01. Therefore, it is recommended to upgrade to v15.01, or to the latest v16.01 toolchain. Please note that while using the '-mfpu' option, the parameter recommended is vfpv3, i.e. "-mfpu=vfpv3" By default, only 'vfp' is passed which is now obsolete, please see the following link: https://wiki.debian.org/ArmHardFloatPort/VfpComparison Therefore, for the default project which is for Cortex-A9 target based on the armv7-a architecture, please change the settings in e2 studio as follows: Properties -> C/C++ Build -> Settings -> CPU -> Target FPU (-mfpu) -> vfpv3 from drop down list This will set the library archive path to (only for v15.01 and above): "${TCINSTALL}/arm-none-eabi/lib/armv7-ar/thumb/fpu" "${TCINSTALL}/lib/gcc/arm-none-eabi/${GCC_VERSION}/armv7-ar/thumb/fpu" "${CONFIGDIR}" Please note that the GNUARM-NONE v15.01 toolchain supports additional target specific multi-libs. e2 studio v4.1.x onwards, "Linker > Archive > Archive search directory" has been modified based on the combination of Architecture, CPU type, Floating-point ABI, Target FPU, Interwork, Endian and Instruction set (from GNUARM-NONE v15.01 toolchain onwards). For the GNUARM-NONE toolchain v14.02 or lower, Linker > Archive > "Archive search directory" will not be modified based on the target specific options. In this case, the paths will be same as in e2 studio v4.0.x. For additional details, please refer E2 studio > Help > Help Contents > e2 studio Tutorial > e2studio Tutorial – KPIT GNU Toolchains > (refer the bottom of the tutorial) GNUARM-NONE TOOLCHAIN MULTI-LIBS > o Archive search directories based on Architecture, Floating-point ABI, Target FPU, Interwork, Endian and Instruction set o Difference in Archive search directories with respect to toolchain version and '-mthumb-interwork' — Kind regards, Darius The GNU Tools Support Team
+1
May 10, 2016
Commented
Thank you Adam, The GNUARM-NONE toolchain V14.02 comes with some documentation, found in the installation directory, inside the DOC folder. Unfortunately, the C++ library documentation is not included in there, but you can find the latest documentation about the library here: https://gcc.gnu.org/onlinedocs/libstdc++/ If you need more assistance, please feel free to contact us or reply to this message. — Kind regards, Darius, The GNU Tools Support Team
+10
May 10, 2016
Answered
+10
May 10, 2016
Answered
Where is the documentation which describes the initialisation of the C++ standard library?
+1
May 5, 2016
registration
« Previous
1
2
3
4
5
Support
This site uses cookies.
Click here to read our privacy policy.
OK, I agree and accept cookies.