Author Topic: Adding support for some more compilers...  (Read 19574 times)

Offline stardust

  • Multiple posting newcomer
  • *
  • Posts: 55
    • http://www.hightec-rt.com
Adding support for some more compilers...
« on: February 02, 2007, 03:46:42 pm »
Hi there,

as I am planing to add support fore some more compiles to C::B, I have some questions:
  • =1=
    The compilers belong to the GCC family of compilers. However, the targets (which shall mean "target systems" here, not to confuse with "makefile or build targets") are rather MCU than CPU, i.e. the generated software will run on an embedded system (TriCore, MSP430, PowerPC, ...). Up to now, C::B only addresses the development for host software. So I am curious if such extensions are welcome in C::B and if it is worth the effort of submitting patches that add this support...
  • =2=
    Adding these compilers is not too much work. I just had to clone a ./src/sdk/compiler* and that's it. What is about the new XML compiler description? If the XML framework comes soon, there will be no more need to add the support into a core plugin.
  • =3=
    In this and some other forums the discussion on a new XML representation always uses the term compiler where IMO toolchain should be used (For MSCV these may be identical and even most users of GCC just regard it as C/C++ compiler, whereas is it a bunch of tools). As I can imagine, the new framework will bring support for all tools in a chain like compiler (foo-gcc), assembler (foo-as), linker (foo-ld), archiver (foo-ar), a.s.o? For embedded there is often the need to control the build process in a more sophisticated manner than for host applications: Specify special options for assembling, linking, providing own startup code, specifying own linker description file, etc.
  • =4=
    The most complicated part will be to integrate a debugger into C::B. To "RUN" Software on an MCU, you have first to download it to the target hardware and then start it. This is not as easy as just call the generated executable. Moreover, integrating a debugger means that there must be a notion of the target system by means of GPRs, SFRs, Memory, a.s.o. These is no way to debug on source level (changing source (i.e. code) when debugging).

    Therefore, it was fine to control the behaviour of "RUN" or "DEBUG" in some way...

So I hope I am not completely off topic.
« Last Edit: February 02, 2007, 04:11:42 pm by stardust »
Own SVN builds (quite new) SuSE Linux 10.0 Linux kernel 2.6.13-15-default
gcc 4.0.2 (20050901)
wxGTK-2.6.1.0-4 KDE 3.4.2b gtk2 2.8.3-4

Offline mandrav

  • Project Leader
  • Administrator
  • Lives here!
  • *****
  • Posts: 4291
    • Code::Blocks IDE
Re: Adding support for some more compilers...
« Reply #1 on: February 02, 2007, 04:08:33 pm »
I 'd suggest you wait for the new framework (I don't have any timeframe to give you though).
Be patient!
This bug will be fixed soon...

Offline stardust

  • Multiple posting newcomer
  • *
  • Posts: 55
    • http://www.hightec-rt.com
Re: Adding support for some more compilers...
« Reply #2 on: February 02, 2007, 04:19:01 pm »
Yes, reviewing and adding patches will take time...

To be more concrete. The very implementation I will do on my own. I do not expect anyone to do my work for me ...;-)

I will then, of course, translate the stuff into XML if time is ready. At this point it's rather the question how much participation is desired and if all this fits the focus of C::B.
Own SVN builds (quite new) SuSE Linux 10.0 Linux kernel 2.6.13-15-default
gcc 4.0.2 (20050901)
wxGTK-2.6.1.0-4 KDE 3.4.2b gtk2 2.8.3-4

Offline Game_Ender

  • Lives here!
  • ****
  • Posts: 551
Re: Adding support for some more compilers...
« Reply #3 on: February 02, 2007, 08:13:44 pm »
What branch is the new compilier framework developement being done on?  I couldn't find it.

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9496
Re: Adding support for some more compilers...
« Reply #4 on: February 02, 2007, 08:38:49 pm »
What branch is the new compilier framework developement being done on?  I couldn't find it.
It's called "cf". But I believe it's quite out-dated. Dunno if Thomas did some more work on that and hasn't committed yet...
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: http://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: http://wiki.codeblocks.org/index.php?title=FAQ

MZet

  • Guest
Re: Adding support for some more compilers...
« Reply #5 on: May 01, 2007, 12:57:19 pm »
Please add Orcas support, it isn't very difficult to do I think?

Offline JSThePatriot

  • Multiple posting newcomer
  • *
  • Posts: 16
    • Vortex Revolutions - IT Consulting
Re: Adding support for some more compilers...
« Reply #6 on: May 10, 2007, 05:29:57 pm »
I hate to bring up an old thread, but I am being forced (work ;)) to code with eMbedded C++, which I have to download a very old IDE and Compiler. 4.0 is the most recent version on M$'s website. Is anyone looking to include eMbedded C++ as an option for C::B?

Thanks,
JS

Offline MathStuf

  • Single posting newcomer
  • *
  • Posts: 6
Re: Adding support for some more compilers...
« Reply #7 on: May 29, 2007, 02:08:27 pm »
Rather than extending C::B for every compiler, is it possible to include a way to allow users to define their own compilers?

--MathStuf

Offline Mc.Michael

  • Multiple posting newcomer
  • *
  • Posts: 17
Re: Adding support for some more compilers...
« Reply #8 on: November 04, 2007, 08:20:00 pm »
Please add Orcas support, it isn't very difficult to do I think?
+1

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9496
Re: Adding support for some more compilers...
« Reply #9 on: November 05, 2007, 09:35:29 am »
Guys,

adding a compiler is not really difficult. Just take one look into the code in the compiler plugin (basically one *.cpp/*.h file per compiler). Try to adjust for your compiler and submit a patch. We cannot add support for compiler we don't know. This can be done at best by "experts" using these compilers. Everything else would definitley be error prone.

For the embedeed C++ stuff I'd say start with the visual toolkit compiler. For the others I don't know as I don't know them.

With regards, Morten.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: http://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: http://wiki.codeblocks.org/index.php?title=FAQ