EmbeddedRelated.com
Forums

LPC development and Linux environment

Started by deni...@hotmail.com May 9, 2010
Guys,

Anyone using Linux on their computer as a development environment for ARM?
Which IDE and which schematics software are you using?

I am tired of using Windows systems, and thinking of moving to Linux
gradually..

An Engineer's Guide to the LPC2100 Series

I've been using Linux since 1994. Ubuntu, presently, with gcc, gdb,
OpenOCD, etc. I use Eagle for schematics and PCBs.

Functions that don't require processors registers are easily written and
tested on the PC, using the same tool set.
For instance linked lists, queues, malloc/free, and my stdlib were tested on
Linux, with gcc treating warnings as error. Everything compiled and ran
perfectly when compiled for ARM -- LPC2148.

With Linux and the GNU tools, you learn one set of tools, and use them for
development on the PC and the target system. I can't emphasize how much
this raises code productivity and quality.

DaveS

On Sun, May 9, 2010 at 2:39 AM, wrote:

> Guys,
>
> Anyone using Linux on their computer as a development environment for ARM?
> Which IDE and which schematics software are you using?
>
> I am tired of using Windows systems, and thinking of moving to Linux
> gradually..
>
On Sunday, May 09, 2010 05:39:38 am d...@hotmail.com wrote:
> Anyone using Linux on their computer as a development environment for ARM?
> Which IDE and which schematics software are you using?

I am using CodeSourcery's GCC compiler (free version) and just any old text
editor. It's absolutely wonderful having a "plug and play" compiler,
assembler, linker and debugger, and since it's just standard GNU, it works
with any IDE or graphical debugging tools. This means that if you like you
can use Eclipse, KDevelop, DDD, you name it.

-A.

On Sun, May 9, 2010 at 3:09 PM, wrote:

> Guys,
>
> Anyone using Linux on their computer as a development environment for ARM?
> Which IDE and which schematics software are you using?
>
> I am tired of using Windows systems, and thinking of moving to Linux
> gradually..
>

Here is one nice tutorial
http://www.m2uu.com/elektronika:blueboard-arm-lpc2148 to get started. Hope
this helps.

--
Warm regards
Ashwin
NGX Technologies Pvt. Ltd.
http://code.google.com/p/blueboard-lpc214x/
On Sunday 09 May 2010 15:09:38 d...@hotmail.com wrote:
> Guys,
>
> Anyone using Linux on their computer as a development environment
> for ARM? Which IDE and which schematics software are you using?
Distro: Debian Lenny
IDE: none
Schematis: GEDA
PCB: PCB

>
> I am tired of using Windows systems, and thinking of moving to
> Linux gradually..

--
Rgds
JTD
On Sun, May 9, 2010 at 5:39 PM, wrote:
> Anyone using Linux on their computer as a development environment
> for ARM? Which IDE and which schematics software are you using?
>
> I am tired of using Windows systems, and thinking of moving to Linux gradually..
>

I will think Windows is still the easiest OS to work with for
MCU development. But probably you can use Linux as well,
especially with ARM since you have gcc, OpenOCD, Eclipse, etc.
Arm is probably much better than many other MCU platforms if
you want to work under Linux. of ARM. But It all depends on your
specific requirement.

Same thing for the Electronics side. You can probably use
Linux if things like Eagle is good enough for you. For my
day-time work, I do not think Linux can be used any time soon
since the major software packages do not work under Linux at
all. On the other hand, I am learning to set up a proper
ARM development environment under Linux and it seems
to be usable for my personal experiments (mostly USB/libusb
related). For PIC, I still need to go back to Windows.

--
Xiaofan http://mcuee.blogspot.com
On Monday 10 May 2010 14:35:28 Xiaofan Chen wrote:
> On Sun, May 9, 2010 at 5:39 PM, wrote:
> > Anyone using Linux on their computer as a development environment
> > for ARM? Which IDE and which schematics software are you using?
> >
> > I am tired of using Windows systems, and thinking of moving to
> > Linux gradually..

>
> Same thing for the Electronics side. You can probably use
> Linux if things like Eagle is good enough for you. For my
> day-time work, I do not think Linux can be used any time soon
> since the major software packages do not work under Linux at
> all.

Strange. None of the major linux packages work under windows either.
So windows is unuseable. Well actually it's unuseable anyway.

Windows and GNU/Linux are totally different universes and like the
above statement, there are no simple answers.

IMO linux pays handsome dividends the longer you work with it. No
forced upgrades (well, most of the time), no upfront costs, no per
seat licences etc.
On the rare occasion one might find some "compelling" excuse or the
other to stay with doze, but it will always come back to byte.

On the down side, there is a learning curve, especially if you have
not used a unixish OS.

I must add NXP support for linux is as bad as it can get.
I am switching to marvell or TI.

--
Rgds
JTD
On Mon, May 10, 2010 at 5:50 PM, jtd wrote:
> On Monday 10 May 2010 14:35:28 Xiaofan Chen wrote:
>>
>> Same thing for the Electronics side. You can probably use
>> Linux if things like Eagle is good enough for you. For my
>> day-time work, I do not think Linux can be used any time soon
>> since the major software packages do not work under Linux at
>> all.
>
> Strange. None of the major linux packages work under windows either.
> So windows is unuseable. Well actually it's unuseable anyway.

Not so sure what you mean by major Linux packages. However,
in the universe of ARM development, major Linux packages
do work under Windows: Eclipse, GCC, OpenOCD, etc.

> Windows and GNU/Linux are totally different universes and like the
> above statement, there are no simple answers.
>
> IMO linux pays handsome dividends the longer you work with it. No
> forced upgrades (well, most of the time), no upfront costs, no per
> seat licences etc.

This does not apply for ARM side of things. You get the same
benefits even under Windows when using the open source
toolchains.

> On the rare occasion one might find some "compelling" excuse or the
> other to stay with doze, but it will always come back to byte.
>
> On the down side, there is a learning curve, especially if you have
> not used a unixish OS.

I am comfortable with both Windows and Linux. I am just
stating that at my work (leading PLC company), it is not
possible to work under Linux as the major software packages
we need to get job done do not work under Linux.

> I must add NXP support for linux is as bad as it can get.
> I am switching to marvell or TI.
>

You probably work in the embedded Linux areas. In the
smaller MCU space, I do not see TI any better than
NXP in terms of Linux support. Basically no major vendors
support Linux, Atmel may be a bit different in that it supports
Linux for AVR32.
--
Xiaofan http://mcuee.blogspot.com
I moved almost all of my development work (hobby level) to Linux several years ago. I do only Xilinx FPGA development under WinXP and then only because Xilinx doesn't have device programming drivers for any current version of Linux (and last time I looked, the Linux version of WebPack ISE was ugly). Unless you use Red Hat Enterprise 4, you can't get there from here.

Rowley CrossWorks for ARM works VERY WELL under Linux and it is identical under Windows. I have started using it with my Win7 x64 machine simply because I have a 23" display. Some IDEs can really benefit from a wide screen.

As to Windows: YAGARTO installs easily for Arm development and includes enough stuff to make complete projects. WinARM is another possibility. It is often necessary to install cygwin to provide a Unix like environment. That's good news as the more of the important command line utilities will be available.

There is certainly Windows software for Microchip and Atmel available for Windows of some flavor. Sometimes there is a lag in getting x64 drivers to market. Xilinx is one of these - I have to use my old P4.

For Linux: Again Rowley Crossworks runs well. Eclipse is another good IDE and has the advantage that it is target neutral. You can create Atmel, Blackfin, PC, ARM, projects because Eclipse doesn't care what toolchain you use. As long as 'make' works, everything will be fine.

The advantage of Linux is in the other tools: rm, sed, awk and other utilities that allow makefiles to do some pretty neat things. Sure, there may be Windows work-alikes but they're never really the same because Windows just isn't oriented toward the command line interface. By definition, makefiles are command line oriented. Cygwin may overcome this.

A couple of my projects require non-FAT file systems to be created on a compact flash. The Linux 'dd' utility is PERFECT. There's nothing like it when you want to manipulate the raw data on a disk drive.

I am not an evangelist for Linux. I don't personally want to support it because it can be a struggle for new users. However, there is a strong support community for most distros including Ubuntu. Every question that has ever come up in my working with Linux has been answered by someone else.

I currently have Ubuntu 9.10 on my main development PC and on a laptop. I tried to install 10.04 and my results were dismal. I did install 10.04 Server on a system and it works pretty well. But I think they blew the 10.04 Desktop release.

Word to the wise, try to find Ubuntu 9.10 and wait a while before upgrading to 10.04. The bad news is that the .10 releases do not get Long Term Support (LTS). That is reserved for the .04 releases.

When I started with Linux, I bought a pretty high end workstation (for the time) with dual 19" LCDs. Having documentation on one screen and an IDE on the other is pretty nice. None of my Windows machines have dual displays although I am getting close to upgrading one of them. It came with Red Hat Enterprise WS and I eventually migrated through Fedora and arrived at Ubuntu.

BTW, Linux minicom tends to work a lot better than Hyperterminal. But it doesn't have all the features. But it works...

I prefer to do development under Linux but if WinXP or Win7 was all I had, I wouldn't feel strained.

Take your pick!

Richard

Thank you guys,

It looks like I need to stick with windows for a while, as IDE's are much
available for it.

From: l... [mailto:l...] On Behalf Of
rtstofer
Sent: 10 May, 2010 17:12
To: l...
Subject: [lpc2000] Re: LPC development and Linux environment

I moved almost all of my development work (hobby level) to Linux several
years ago. I do only Xilinx FPGA development under WinXP and then only
because Xilinx doesn't have device programming drivers for any current
version of Linux (and last time I looked, the Linux version of WebPack ISE
was ugly). Unless you use Red Hat Enterprise 4, you can't get there from
here.

Rowley CrossWorks for ARM works VERY WELL under Linux and it is identical
under Windows. I have started using it with my Win7 x64 machine simply
because I have a 23" display. Some IDEs can really benefit from a wide
screen.

As to Windows: YAGARTO installs easily for Arm development and includes
enough stuff to make complete projects. WinARM is another possibility. It is
often necessary to install cygwin to provide a Unix like environment. That's
good news as the more of the important command line utilities will be
available.

There is certainly Windows software for Microchip and Atmel available for
Windows of some flavor. Sometimes there is a lag in getting x64 drivers to
market. Xilinx is one of these - I have to use my old P4.

For Linux: Again Rowley Crossworks runs well. Eclipse is another good IDE
and has the advantage that it is target neutral. You can create Atmel,
Blackfin, PC, ARM, projects because Eclipse doesn't care what
toolchain you use. As long as 'make' works, everything will be fine.

The advantage of Linux is in the other tools: rm, sed, awk and other
utilities that allow makefiles to do some pretty neat things. Sure, there
may be Windows work-alikes but they're never really the same because Windows
just isn't oriented toward the command line interface. By definition,
makefiles are command line oriented. Cygwin may overcome this.

A couple of my projects require non-FAT file systems to be created on a
compact flash. The Linux 'dd' utility is PERFECT. There's nothing like it
when you want to manipulate the raw data on a disk drive.

I am not an evangelist for Linux. I don't personally want to support it
because it can be a struggle for new users. However, there is a strong
support community for most distros including Ubuntu. Every question that has
ever come up in my working with Linux has been answered by someone else.

I currently have Ubuntu 9.10 on my main development PC and on a laptop. I
tried to install 10.04 and my results were dismal. I did install 10.04
Server on a system and it works pretty well. But I think they blew the 10.04
Desktop release.

Word to the wise, try to find Ubuntu 9.10 and wait a while before upgrading
to 10.04. The bad news is that the .10 releases do not get Long Term Support
(LTS). That is reserved for the .04 releases.

When I started with Linux, I bought a pretty high end workstation (for the
time) with dual 19" LCDs. Having documentation on one screen and an IDE on
the other is pretty nice. None of my Windows machines have dual displays
although I am getting close to upgrading one of them. It came with Red Hat
Enterprise WS and I eventually migrated through Fedora and arrived at
Ubuntu.

BTW, Linux minicom tends to work a lot better than Hyperterminal. But it
doesn't have all the features. But it works...

I prefer to do development under Linux but if WinXP or Win7 was all I had, I
wouldn't feel strained.

Take your pick!

Richard