Developers Archive

List Statistics

  • Total Threads: 675
  • Total Posts: 4004
  #1  
15-04-2010 01:57 AM
Developers member admin is online now
User
 

On 12/04/2010 18:00, follower wrote:

> On 13 April 2010 04:39, Alan Burlison<> wrote:
>> I'm already using NetBeans, all it needed was a Makefile.
> Although presumably your use of NetBeans doesn't include the
> pre-preprocessing which is part of the motivation of what's being
> proposed.

It includes a simplified preprocessing step, so you can use it on
standard sketches.

--
Alan Burlison
--

_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #2  
15-04-2010 01:57 AM
Developers member admin is online now
User
 

On 12/04/2010 18:21, Paul Stoffregen wrote:

>> You already get Make as part of the AVR toolchain.
>
> How will Make parse the input to discover which libraries need to be
> built and create the function prototypes? Isn't a "real" language
> needed, like C/C++, Perl, or maybe Java?

The existing IDE's handling of libraries is pretty poor which is why I
went down the Make route in the first place. Sharing libraries that
aren't in the global libraries location is more-or-less impossible with
the IDE. Here's a complete example Makefile:

----------
BOARD = mega
PORT = /dev/term/0
LIB_DIRS = ../Common ../../libraries/Task ../../libraries/VirtualWire
include ../../Makefile.master
----------

It wouldn't take much to generate that Makefile automatically

--
Alan Burlison
--

_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #3  
15-04-2010 01:57 AM
Developers member admin is online now
User
 

Gnu make has the notion of dependency files. These are files that list
dependencies, are included into the makefile, and are built by make.
For example, Makefile would include SKETCH.d, have SKETCH.d depend
upon SKETCH.pde, with an implicit rule for .d.pde that would run a
preprocessor to generate library and other dependencies.

giuliano

On Apr 12, 2010, at 10:21 AM, Paul Stoffregen wrote:

>
>> You already get Make as part of the AVR toolchain.
>
> How will Make parse the input to discover which libraries need to be
> built and create the function prototypes? Isn't a "real" language
> needed, like C/C++, Perl, or maybe Java?
>
>
>
> _______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #4  
15-04-2010 03:45 AM
Developers member admin is online now
User
 

Alan Burlison wrote:
> On 12/04/2010 16:49, j. eric townsend wrote:
>
>> Yes. The goal is to open up development to other IDEs without
>> disrupting the current IDE.
>
> I'm already using NetBeans, all it needed was a Makefile.

I considered using make (and I might change mind) but it seemed like one
more package dependency.

--
J. E. 'jet' Townsend, IDSA
Design, Fabrication, Hacking
design: www.allartburns.org; hacking: www.flatline.net; HF: KG6ZVQ
PGP: 0xD0D8C2E8 AC9B 0A23 C61A 1B4A 27C5 F799 A681 3C11 D0D8 C2E8

_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #5  
15-04-2010 04:21 AM
Developers member admin is online now
User
 

Hans-Christoph Steiner wrote:
> At Arduino 1.0, Dave and I tested using gcc to do the current PDE
> (pre-?)preprocessing step. Currently the PDE preprocessing does two key
> things: add an #include and generate function prototypes. It should be
> possible to use cpp to generate the function prototypes and stick them
> into a tmp file, then include that file in the gcc command line as well
> and include the WProgram.h file. Then that would eliminate the Java
> code that does the PDE pre-preprocessing.

So the includes are effectively in the same order, and there would be no
change to things like error messages?

nice.




--
J. E. 'jet' Townsend, IDSA
Design, Fabrication, Hacking
design: www.allartburns.org; hacking: www.flatline.net; HF: KG6ZVQ
PGP: 0xD0D8C2E8 AC9B 0A23 C61A 1B4A 27C5 F799 A681 3C11 D0D8 C2E8

_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #6  
15-04-2010 04:32 AM
Developers member admin is online now
User
 

Something like this may save some effort ...
http://freequaos.host.sk/genproto/
http://sourceforge.net/projects/cproto/

There seem to be quite a few options for generating function prototypes in C/C++. I just gave those two a quick try on Mac 10.6 and they seem to be a bit rough (genproto segfaults after listing the prototypes), but perhaps it's worth picking them over?

On Apr 12, 2010, at 3:22 PM, j. eric townsend wrote:

> Hans-Christoph Steiner wrote:
>> At Arduino 1.0, Dave and I tested using gcc to do the current PDE (pre-?)preprocessing step. Currently the PDE preprocessing does two key things: add an #include and generate function prototypes. It should be possible to use cpp to generate the function prototypes and stick them into a tmp file, then include that file in the gcc command line as well and include the WProgram.h file. Then that would eliminate the Java code that does the PDE pre-preprocessing.
>
> So the includes are effectively in the same order, and there would be no change to things like error messages?
>
> nice.
>
>
>
>
> --
> J. E. 'jet' Townsend, IDSA
> Design, Fabrication, Hacking
> design: www.allartburns.org; hacking: www.flatline.net; HF: KG6ZVQ
> PGP: 0xD0D8C2E8 AC9B 0A23 C61A 1B4A 27C5 F799 A681 3C11 D0D8 C2E8
>
> _______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #7  
15-04-2010 04:52 AM
Developers member admin is online now
User
 

Hi Eric,
since I tried this
http://code.google.com/p/angbt/
without getting much feedback here are a few tips

On Monday 12 April 2010 11:02:37 j. eric townsend wrote:
> hey kids,
>
> Yesterday I started working on a sketch compliation program in C++ that
> Compiler() can call instead of doing the compilation internally.
So this is going to be some commandline-app which is called with a list of
arguments. The app will then call the compiler internally just like the IDE
does right now. It's nice to be able to compile from the commandline and I'd
wish the Arduino-IDE had such an user-interface, but I don't see any benefit
from doing this from another application.
Your new app has to do the same processing steps the IDE already does.

You said its going to be a C++ app. This makes me think immediatly which of
the currently supported Operating systems will be left standing in the rain.

I know most C/C++ programmers hate Java, but for the whole process of building
a Sketch across platforms which involves
- parsing the preferences boards.txt, programmers.txt,
- processing the sketch-code
- calling the compiler and uploader
Java is a very good choice and so is Python and Ruby and probably a few other
programing languages which all produce cross-platform code, because they were
created for exactly that reason.

With the right Toolkit (Qt for instance) you will be able to do the same with
C++, but you still have to build at least 6 versions of the app (Mac/Win/Linux
32+64 bits).
Since most of the compiling steps involves disk-IO there is also not increase
in performance to be expected from using C++.

Most people who are interested in commandline compiling of Sketches will not
really like your app anyway because no Makefile is involved (you already see
this in the first replys).

I think writing a Makefile generator for Skteches would stir up some postive
feedback from people.

Good luck
Eberhard








_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #8  
15-04-2010 04:58 AM
Developers member admin is online now
User
 

Eberhard Fahle wrote:
> You said its going to be a C++ app. This makes me think immediatly which of
> the currently supported Operating systems will be left standing in the rain.

What systems have Java but not C/C++?

> With the right Toolkit (Qt for instance) you will be able to do the same with
> C++, but you still have to build at least 6 versions of the app (Mac/Win/Linux
> 32+64 bits).

I don't know that the 64 bit versions *need* to be built, but it's worth
investigating.

> Since most of the compiling steps involves disk-IO there is also not increase
> in performance to be expected from using C++.

This isn't about performance, it's about not being tied to Java. I
don't hate Java (I use it at work and in Processing projects), it's
simply not supported everywhere.

> Most people who are interested in commandline compiling of Sketches will not
> really like your app anyway because no Makefile is involved (you already see
> this in the first replys).

I'm not sure why people are hung up on using make. I've been using it
since SVR0, think it's a great tool, but it's overkill if you know in
advance what the majority of the dependencies and steps are. In this
particular case, I like how Compiler.java manages things, I just wish it
were written in a more portable language.

> I think writing a Makefile generator for Skteches would stir up some postive
> feedback from people.

I agree that this would be a useful tool for some set of people,
including people like me who live in emacs.


--
J. E. 'jet' Townsend, IDSA
Design, Fabrication, Hacking
design: www.allartburns.org; hacking: www.flatline.net; HF: KG6ZVQ
PGP: 0xD0D8C2E8 AC9B 0A23 C61A 1B4A 27C5 F799 A681 3C11 D0D8 C2E8

_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #9  
15-04-2010 04:59 AM
Developers member admin is online now
User
 

On Tue, Apr 13, 2010 at 8:42 AM, j. eric townsend <> wrote:

> I'm not sure why people are hung up on using make.

hey, that thing looks like a nail. Where's my hammer?

It's the compile-assist tool many are already familiar with.

> I agree that this would be a useful tool for some set of people, including
> people like me who live in emacs.

me too. I'd love to emacs/make/make upload my arduino sketches.
Nothing against the arduino IDE, it's just that I've been doing things
this way for 20 years...

-Jason
kg4wsv

_______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.

  #10  
15-04-2010 05:01 AM
Developers member admin is online now
User
 

Adding a new C/binary dependency would add a lot of work. I think it
makes sense to either keep the code in Java or use the tools from gcc
suite, which are required already anyway.

.hc

On Apr 13, 2010, at 1:29 AM, Nicholas Zambetti wrote:

> Something like this may save some effort ...
> http://freequaos.host.sk/genproto/
> http://sourceforge.net/projects/cproto/
>
> There seem to be quite a few options for generating function
> prototypes in C/C++. I just gave those two a quick try on Mac 10.6
> and they seem to be a bit rough (genproto segfaults after listing
> the prototypes), but perhaps it's worth picking them over?
>
> On Apr 12, 2010, at 3:22 PM, j. eric townsend wrote:
>
>> Hans-Christoph Steiner wrote:
>>> At Arduino 1.0, Dave and I tested using gcc to do the current PDE
>>> (pre-?)preprocessing step. Currently the PDE preprocessing does
>>> two key things: add an #include and generate function prototypes.
>>> It should be possible to use cpp to generate the function
>>> prototypes and stick them into a tmp file, then include that file
>>> in the gcc command line as well and include the WProgram.h file.
>>> Then that would eliminate the Java code that does the PDE pre-
>>> preprocessing.
>>
>> So the includes are effectively in the same order, and there would
>> be no change to things like error messages?
>>
>> nice.
>>
>>
>>
>>
>> --
>> J. E. 'jet' Townsend, IDSA
>> Design, Fabrication, Hacking
>> design: www.allartburns.org; hacking: www.flatline.net; HF: KG6ZVQ
>> PGP: 0xD0D8C2E8 AC9B 0A23 C61A 1B4A 27C5 F799 A681 3C11 D0D8 C2E8
>>
>> _______________________________________________
___________________________________________________

Posted on the Developers mailing list. Go to http://arduino.cc/mailman/listinfo/developers_arduino.cc to subscribe.





NewsArc Lists  |  Culture Pages   |  Computing Archive  |  Media-Pages
Link to this page on your blog or website by copying the HTML code below and pasting it into your site: