sparc-rtems4.11-gcc for C++

Luca Cinquepalmi cinquepalmi at planetek.it
Tue Oct 30 11:01:21 UTC 2012


Jiri only one question:
where $(ARCH) is set? which file? thanks

     Luca

On 10/30/2012 10:43 AM, Jiri Freyvald wrote:
> Hi,
> as I suggested in my previous reply - use existing C++ example (with 
> its makefile) as a c++ template for your project.
> Anyway,
> here is the output of my makefile (c++ example):
>
> $ export PATH=/opt/rtems-4.11/bin:$PATH
> $ export RTEMS_MAKEFILE_PATH=/opt/rtems-fw/sparc-rtems4.11/sis/
>
> $make clean all
> rm -f a.out core mon.out gmon.out
> rm -f -r
> rm -f -r  a.out *.o *.BAK Depends-o-optimize.tmp
> rm -f -r o-optimize o-debug
> test -d o-optimize || mkdir o-optimize
> sparc-rtems4.11-gcc --pipe -B/opt/rtems-fw/sparc-rtems4.11/sis/lib/ 
> -specs bsp_specs -qrtems   -g -Wall  -O2 -g -g    -mcpu=cypress     
> -c   -o o-optimize/init.o init.c
> sparc-rtems4.11-g++ -B/opt/rtems-fw/sparc-rtems4.11/sis/lib/ -specs 
> bsp_specs -qrtems   -g -Wall  -g    -mcpu=cypress -c   -o 
> o-optimize/main.o main.cc
> sparc-rtems4.11-g++ -B/opt/rtems-fw/sparc-rtems4.11/sis/lib/ -specs 
> bsp_specs -qrtems   -g -Wall  -g    -mcpu=cypress -mcpu=cypress   -o 
> o-optimize/cxx_throw.exe  o-optimize/init.o o-optimize/main.o
> sparc-rtems4.11-nm -g -n o-optimize/cxx_throw.exe > 
> o-optimize/cxx_throw.num
> sparc-rtems4.11-size o-optimize/cxx_throw.exe
>    text       data        bss        dec        hex    filename
>  212608       2740      22960     238308      3a2e4 
> o-optimize/cxx_throw.exe
> cp o-optimize/cxx_throw.exe o-optimize/cxx_throw.ralf
>
> it should help you
>
> Jiri
>
>
> On 30/10/12 08:47, Luca Cinquepalmi wrote:
>> Here I post a simple rtems C++ code (template.cc) which works if
>> compiled as a C source file but not as a C++ file.
>> I'm using sparc-rtems4.11-g++ compiler. Are there particular compilation
>> flags I have to use? Is C++ template different from C one? Thanks a lot
>>
>>      Luca
>> -------------------------------------------------------------------------------------------------------------------------
>> #define CONFIGURE_INIT
>> #include "system.h"
>> #include <cstdlib>
>>
>>
>> extern "C" {
>>   rtems_task Init(
>>     rtems_task_argument arg
>>   );
>> };
>>
>> /* Declare rtems tasks */
>> rtems_task Init (rtems_task_argument argument);     /* Declare entry 
>> point */
>>
>> #include "define.h"
>> #include "leon.h"
>> #include "utils.h"
>> #include "printSerial.h"
>>
>> rtems_task Init (rtems_task_argument argument)
>> {
>>     printf("MY NAME IS LUCA!\n\r");
>>     rtems_task_delete(RTEMS_SELF);
>> }
>> -------------------------------------------------------------------------------------------------------------------------
>> My Makefile flags:
>>
>> CXX = sparc-rtems4.11-g++
>> BSP_PATH = /opt/$(INSTALL_POINT)/sparc-$(CCOMP)/leon2/lib
>> SPECS_PATH = $(BSP_PATH)/bsp_specs
>>
>> LD_LIBS += -lgcc -lm -msoft-float -lrtems++ -lstdc++
>> LD_PATH += -I../../include/leon -I../include -B$(BSP_PATH) -specs 
>> $(SPECS_PATH)
>> LDFLAGS += -mcpu=v8 -qrtems
>> CXXFLAGS += -msoft-float -mcpu=v8 $(LD_PATH) -Wno-write-strings
>>
>>
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users at rtems.org
>> http://www.rtems.org/mailman/listinfo/rtems-users
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20121030/36790cdb/attachment-0001.html>


More information about the users mailing list