Hi Michael, Thanks. I think I should be able to get away without the missing components. I'm getting now the following message from the linker: "cyclic memory section dependency with section .fast_run ". I have declared 2 classes where one is inherited. Thanks a million, Cheers, m. _____ From: Michael Johnson [mailto:] Sent: Monday, February 14, 2005 2:06 AM To: Subject: Re: [lpc2000] C++ and CrossWorks for ARM Hi Milos, It should just work - note that CrossWorks for ARM currently doesn't support full C++. There are no exceptions, rtti, iostreams or STL as yet. Which symbols are you missing? Regards Michael >Hi, > >I'm working on this project and I'm using CW for ARM. I'm at the stage where >I have to implement more advanced concepts than drivers. I would like to do >some of them in C++, but I'm having some problems getting the code to link. >I would assume it's due to some missing labels/definitions. (I do see that >.ctors / .dtors exist in the memory placement file). > >I was just wondering if someone has been using C++ with CW and has a >"precooked" way of getting programs to link/compile. > >Thanks in advance, > >m. > > >> Terms of Service. |
|
Re: C++ and CrossWorks for ARM
Started by ●February 14, 2004
Reply by ●February 14, 20042004-02-14
Michael, Thanks for the quick reply. I did change the section placement file, a bit, to tweak it towards my needs. I attached it if you can give it a quick look. I do not quite understand what you mean by saving it twice... What is the section .fast_run used in this case? Thanks, m. ________________________________________ From: Michael Johnson [mailto:] Sent: Monday, February 14, 2005 11:14 AM To: Subject: Re: [lpc2000] C++ and CrossWorks for ARM Hi Milos, Did you modify the section_placement file - there's a howler of a bug (one of mine) that requires the section placement editor to save twice to maintain the section order. Regards Michael >Hi Michael, > >Thanks. I think I should be able to get away without the missing components. > > >I'm getting now the following message from the linker: > >"cyclic memory section dependency with section .fast_run ". I have declared >2 classes where one is inherited. > >Thanks a million, > >Cheers, > >m. > > _____ > >From: Michael Johnson [mailto:] >Sent: Monday, February 14, 2005 2:06 AM >To: >Subject: Re: [lpc2000] C++ and CrossWorks for ARM > >Hi Milos, > >It should just work - note that CrossWorks for ARM currently doesn't >support full C++. There are no exceptions, rtti, iostreams or STL as >yet. Which symbols are you missing? > >Regards >Michael > > > >>Hi, >> >>I'm working on this project and I'm using CW for ARM. I'm at the stage >> >> >where > > >>I have to implement more advanced concepts than drivers. I would like to do >>some of them in C++, but I'm having some problems getting the code to link. >>I would assume it's due to some missing labels/definitions. (I do see that >>.ctors / .dtors exist in the memory placement file). >> >>I was just wondering if someone has been using C++ with CW and has a >>"precooked" way of getting programs to link/compile. >> >>Thanks in advance, >> >>m. >> >> >> >> >> >> >> >> >> >> >>> Terms of Service. >Yahoo! Groups Links > > > > ________________________________________ Yahoo! Groups Links To |
Reply by ●February 14, 20052005-02-14
Hi, I'm working on this project and I'm using CW for ARM. I'm at the stage where I have to implement more advanced concepts than drivers. I would like to do some of them in C++, but I'm having some problems getting the code to link. I would assume it's due to some missing labels/definitions. (I do see that .ctors / .dtors exist in the memory placement file). I was just wondering if someone has been using C++ with CW and has a "precooked" way of getting programs to link/compile. Thanks in advance, m. |
Reply by ●February 14, 20052005-02-14
Hi Milos, It should just work - note that CrossWorks for ARM currently doesn't support full C++. There are no exceptions, rtti, iostreams or STL as yet. Which symbols are you missing? Regards Michael >Hi, > >I'm working on this project and I'm using CW for ARM. I'm at the stage where >I have to implement more advanced concepts than drivers. I would like to do >some of them in C++, but I'm having some problems getting the code to link. >I would assume it's due to some missing labels/definitions. (I do see that >.ctors / .dtors exist in the memory placement file). > >I was just wondering if someone has been using C++ with CW and has a >"precooked" way of getting programs to link/compile. > >Thanks in advance, > >m. > > >Yahoo! Groups Links > |
Reply by ●February 14, 20052005-02-14
Hi Milos, Did you modify the section_placement file - there's a howler of a bug (one of mine) that requires the section placement editor to save twice to maintain the section order. Regards Michael >Hi Michael, > >Thanks. I think I should be able to get away without the missing components. >I'm getting now the following message from the linker: > >"cyclic memory section dependency with section .fast_run ". I have declared >2 classes where one is inherited. > >Thanks a million, > >Cheers, > >m. > > _____ > >From: Michael Johnson [mailto:] >Sent: Monday, February 14, 2005 2:06 AM >To: >Subject: Re: [lpc2000] C++ and CrossWorks for ARM > >Hi Milos, > >It should just work - note that CrossWorks for ARM currently doesn't >support full C++. There are no exceptions, rtti, iostreams or STL as >yet. Which symbols are you missing? > >Regards >Michael > >>Hi, >> >>I'm working on this project and I'm using CW for ARM. I'm at the stage >> >> >where >>I have to implement more advanced concepts than drivers. I would like to do >>some of them in C++, but I'm having some problems getting the code to link. >>I would assume it's due to some missing labels/definitions. (I do see that >>.ctors / .dtors exist in the memory placement file). >> >>I was just wondering if someone has been using C++ with CW and has a >>"precooked" way of getting programs to link/compile. >> >>Thanks in advance, >> >>m. >> >> >> >> >> >> >> >> >> >> >>> Terms of Service. >Yahoo! Groups Links > |
Reply by ●February 14, 20052005-02-14
Hi Michael, Thanks. I think I should be able to get away without the missing components. I'm getting now the following message from the linker: "cyclic memory section dependency with section .fast_run ". I have declared 2 classes where one is inherited. Thanks a million, Cheers, m. _____ From: Michael Johnson [mailto:] Sent: Monday, February 14, 2005 2:06 AM To: Subject: Re: [lpc2000] C++ and CrossWorks for ARM Hi Milos, It should just work - note that CrossWorks for ARM currently doesn't support full C++. There are no exceptions, rtti, iostreams or STL as yet. Which symbols are you missing? Regards Michael >Hi, > >I'm working on this project and I'm using CW for ARM. I'm at the stage where >I have to implement more advanced concepts than drivers. I would like to do >some of them in C++, but I'm having some problems getting the code to link. >I would assume it's due to some missing labels/definitions. (I do see that >.ctors / .dtors exist in the memory placement file). > >I was just wondering if someone has been using C++ with CW and has a >"precooked" way of getting programs to link/compile. > >Thanks in advance, > >m. > > >> Terms of Service. |
Reply by ●February 14, 20052005-02-14
Michael, Thanks for the quick reply. I did change the section placement file, a bit, to tweak it towards my needs. I attached it if you can give it a quick look. I do not quite understand what you mean by saving it twice... What is the section .fast_run used for in this case? Thanks, m. _____ From: Michael Johnson [mailto:] Sent: Monday, February 14, 2005 11:14 AM To: Subject: Re: [lpc2000] C++ and CrossWorks for ARM Hi Milos, Did you modify the section_placement file - there's a howler of a bug (one of mine) that requires the section placement editor to save twice to maintain the section order. Regards Michael >Hi Michael, > >Thanks. I think I should be able to get away without the missing components. > > >I'm getting now the following message from the linker: > >"cyclic memory section dependency with section .fast_run ". I have declared >2 classes where one is inherited. > >Thanks a million, > >Cheers, > >m. > > _____ > >From: Michael Johnson [mailto:] >Sent: Monday, February 14, 2005 2:06 AM >To: >Subject: Re: [lpc2000] C++ and CrossWorks for ARM > >Hi Milos, > >It should just work - note that CrossWorks for ARM currently doesn't >support full C++. There are no exceptions, rtti, iostreams or STL as >yet. Which symbols are you missing? > >Regards >Michael > >>Hi, >> >>I'm working on this project and I'm using CW for ARM. I'm at the stage >> >> >where >>I have to implement more advanced concepts than drivers. I would like to do >>some of them in C++, but I'm having some problems getting the code to link. >>I would assume it's due to some missing labels/definitions. (I do see that >>.ctors / .dtors exist in the memory placement file). >> >>I was just wondering if someone has been using C++ with CW and has a >>"precooked" way of getting programs to link/compile. >> >>Thanks in advance, >> >>m. >> >> >> >> >> >> >> >> >> >> >>> Terms of Service. >> Terms of Service. |
|
Reply by ●February 14, 20052005-02-14
Hi Milos, Just edit the flash_placement.xml file and press the save button again. The section .fast_run can be used to put code into RAM. So for example if you want do IAP then those functions should be placed in the .fast_run section. Regards Michael > Michael, > > Thanks for the quick reply. > > I did change the section placement file, a bit, to tweak it towards my > needs. I attached it if you can give it a quick look. > > I do not quite understand what you mean by saving it twice... What is > the section .fast_run used for in this case? > > Thanks, > > m. > > *From:* Michael Johnson [mailto:] > *Sent:* Monday, February 14, 2005 11:14 AM > *To:* > *Subject:* Re: [lpc2000] C++ and CrossWorks for ARM > > Hi Milos, > > Did you modify the section_placement file - there's a howler of a bug > (one of mine) that requires the section placement editor to save twice > to maintain the section order. > > Regards > Michael > >>Hi Michael, >> >>Thanks. I think I should be able to get away without the missing > components. >> >> >>I'm getting now the following message from the linker: >> >>"cyclic memory section dependency with section .fast_run ". I have > declared >>2 classes where one is inherited. >> >>Thanks a million, >> >>Cheers, >> >>m. >> >> >> >> _____ >> >>From: Michael Johnson [mailto:] >>Sent: Monday, February 14, 2005 2:06 AM >>To: >>Subject: Re: [lpc2000] C++ and CrossWorks for ARM >> >> >> >>Hi Milos, >> >>It should just work - note that CrossWorks for ARM currently doesn't >>support full C++. There are no exceptions, rtti, iostreams or STL as >>yet. Which symbols are you missing? >> >>Regards >>Michael >> >> >> >>>Hi, >>> >>>I'm working on this project and I'm using CW for ARM. I'm at the stage >>> >>> >>where >> >> >>>I have to implement more advanced concepts than drivers. I would like > to do >>>some of them in C++, but I'm having some problems getting the code to > link. >>>I would assume it's due to some missing labels/definitions. (I do see > that >>>.ctors / .dtors exist in the memory placement file). >>> >>>I was just wondering if someone has been using C++ with CW and has a >>>"precooked" way of getting programs to link/compile. >>> >>>Thanks in advance, >>> >>>m. >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >>>> Terms of Service. >> >> >> >> >> >> >> >> >>>. > > ><!DOCTYPE Linker_Placement_File> ><Root name="Flash Section Placement" > > <MemorySegment name="Internal SRAM;SRAM;SDRAM;DRAM" > > <ProgramSection size="0x3C" load="No" name=".vectors_ram" /> > <ProgramSection alignment="4" load="No" name=".fast_run" /> > </MemorySegment> > <MemorySegment name="FLASH" > > <ProgramSection load="Yes" inputsections="*(.vectors .vectors.*)" name=".vectors" /> > <ProgramSection alignment="4" load="Yes" inputsections="*(.init .init.*)" name=".init" /> > <ProgramSection alignment="4" load="No" name=".text_load" /> > <ProgramSection alignment="4" load="Yes" inputsections="*(.text .text.* .glue_7t .glue_7 .gnu.linkonce.t.*)" name=".text" /> > <ProgramSection alignment="4" load="Yes" inputsections="KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors))" name=".dtors" /> > <ProgramSection alignment="4" load="Yes" inputsections="KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors))" name=".ctors" /> > <ProgramSection alignment="4" load="Yes" inputsections="*(.rodata .rodata.* .gnu.linkonce.r.*)" name=".rodata" /> > <ProgramSection alignment="4" load="Yes" runin=".fast_run" inputsections="*(.fast .fast.*)" name=".fast" /> > <ProgramSection alignment="4" load="Yes" runin=".data_run" inputsections="*(.data .data.* .gnu.linkonce.d.*)" name=".data" /> > </MemorySegment> > <MemorySegment name="External SRAM;SRAM;SDRAM;DRAM" > > <ProgramSection alignment="4" load="No" name=".data_run" /> > <ProgramSection alignment="4" load="No" inputsections="*(.bss .bss.* .gnu.linkonce.b.*) *(COMMON)" name=".bss" /> > <ProgramSection alignment="4" size="0x4" load="No" name=".heap" /> > <ProgramSection alignment="4" size="0x800" load="No" name=".stack" /> > <ProgramSection alignment="4" size="0x400" load="No" name=".stack_irq" /> > <ProgramSection alignment="4" size="0x400" load="No" name=".stack_svc" /> > <ProgramSection alignment="4" size="0x4" load="No" name=".stack_fiq" /> > <ProgramSection alignment="4" size="0x4" load="No" name=".stack_abt" /> > <ProgramSection alignment="4" size="0x4" load="No" name=".stack_und" /> > </MemorySegment> ></Root> > |