This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

C++ on ppc


Hello everybody,

I have a small c++ program for a Light Emitting Diode test which I cannot
seem to compile under 'ppc-eabi-g++' 
(tried with version 2.95.3, 3.0.2 & 3.0.3)

Our custom board has its own bootcode which works without problems.
After everything is set up (ram, serial, ...) i can upload some code (binary
image) to a certain location in ram and run it from there. (using kermit
serial mode)

This approach works without problems for a led-test programmed in C.

I just compile the c-program with "powerpc-eabi-gcc -nostdlib -nostartfiles
-fno-builtin -meabi -Wl,-Tscript.ld,-N -o test test.c"
with 'script.ld' being something very simple:

OUTPUT_ARCH(powerpc)
ENTRY(main);
SECTIONS {
 .=0x2000 
 .vector0 :
 {
   LONG(ABSOLUTE( main ))
 }
 .text : { *(.text) }
 .data : { *(.data) }
 .bss : { *(.bss) }
}

But when I try to do the same with the C++ program, it always complains
about something depending on what commandline i use.

For example: (2.95.3)
[prompt]$ powerpc-eabi-g++ -nostdlib -nostartfiles -fno-builtin
-Wl,-Tscript.ld,-N -o test test.cc
in function 'LED::~LED(void)' :
undefined reference to '__buildin_delete'
in function 'main' :
undefined reference to '__eabi'
undefined reference to '__get_eh_context'
collect2: ld returned 1 exit status

I have a clue why this is so:
The startfiles include code for setting up global constructors/destructors.

But we don't really need startup code, all the SPR's are already setup
correctly.
We just want our C++ program to be compiled to adress 0x2000 so we can run
it.

My system is linux Mandrake 8.1, and i've made the powerpc-crosscompiler
following Bill's FAQ.

Can somebody point out where i'm wrong? Or what I should read/follow?

Thanks,
Jan

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]