gcc 3.3.1 for ARM?

Hi all,

I'd like to compile my own set of tools for ARM developing, that is gcc, possibly 3.3.1 (the latest). I need to get ahold of some tutorial on how to build a gcc cross-compiler for ARM on Linux, or Windows 2000.

I had tried to build gcc-arm with gcc 3.2, but it failed to compile properly. Only gcc 3.0.3 seemed to work, but I want a more recent gcc.

Any pointers?

Thanks.

Reply to
Guillaume
Loading thread data ...

It is possible to build gcc 3.3 for ARM, I actively use it. (thumb, big endian)

What problem do you exactly get?

Wumpus

Reply to
Wumpus

Maybe it's the fact that I'm trying to use 'newlib'.

What C standard library do you use?

Reply to
Guillaume

I think that's the problem, I never tried compiling newlib. (it should be possible though, but you need to patch some stuff)

I use the one that's with eCos.

Wumpus

Reply to
Wumpus

I'm in the process of compiling gcc 3.3.1 for ARM. I've been successful compiling 3.3 under Cygwin with Newlib. So I don't think that's the problem. But without any diagnostics it's really hard to help...

Andras Tantos

Reply to
Andras Tantos

These are the steps I use for ARM7TDMI default. It also works for other arm targets changing the respective modifiers. This works under Linux and CygWin with the latest GCC/Binutils/Newlib toolchain (3.3.1/2.14/1.11.0). For MingW32 a lot of online patching is needed, so I don't recommend using it. Beware that there are still some gcc compilation glitches for ARM targets in the GCC 3.3 series.

Binutils: % cd {BINUTILS_BUILDDIR} % {BINUTILS_SOURCEDIR}/configure --prefix={INSTALL_PREFIX}

--target=arm-thumb-elf % make % make install

GCC (compiler only): % export PATH="$PATH:{INSTALL_PREFIX}/bin" % cd {GCC_BUILDDIR} % {GCC_SOURCEDIR}/configure --prefix={INSTALL_PREFIX}

--target=arm-thumb-elf --enable-targets=arm-elf --with-cpu=arm7tdmi

--enable-interwork --enable-multilib --with-newlib --disable-threads

--disable-shared --with-gcc --with-gnu-ld --with-gnu-as --with-stabs

--with-headers={NEWLIB_SOURCEDIR}/newlib/libc/include

--enable-languages=c,c++,java % make all-gcc % make install-gcc

Newlib: % cd {NEWLIB_BUILDDIR} % {NEWLIB_SOURCEDIR}/configure --prefix={INSTALL_PREFIX}

--target=arm-thumb-elf --with-cpu=arm7tdmi --enable-multilib

--enable-interwork --disable-threads --disable-shared --with-gnu-ld

--with-gnu-as --enable-targets=arm-elf % make % make install

GCC (full build now): % cd {GCC_BUILDDIR} % make all % make install

So that's it. It ain't rocket science after all!

Cheers.

-- /"I knew then (in 1970) that a 4-kbyte minicomputer PabloBleyerKocik / would cost as much as a house. So I reasoned that after pbleyer / college, I'd have to live cheaply in an apartment and @embedded.cl / put all my money into owning a computer." - Steve Wozniak

Reply to
Pablo Bleyer Kocik

I am a hardware engineer and not at all familiar with linux or GNU or Cygwin, etc. I would like to be able to use the tools without having to build them. If anyone wishes to provide binaries for Win2k and/or other versions, I should be able to host them on my web site for others to download. I know I am not the only one to want these tools without having to learn how to build them.

--

Rick "rickman" Collins

rick.collins@XYarius.com
Ignore the reply address. To email me use the above address with the XY
removed.

Arius - A Signal Processing Solutions Company
Specializing in DSP and FPGA design      URL http://www.arius.com
4 King Ave                               301-682-7772 Voice
Frederick, MD 21701-3110                 301-682-7666 FAX
Reply to
rickman

You can download the 3.3 binaries from my website:

formatting link
These are Win binaries hosted under Cygwin, but hopefully all required DLLs are packed in so you're ready to go.

Regards, Andras Tantos

gcc,

how to

Reply to
Andras Tantos

Thanks, downloading them right now. Unfortunately, it failed to compile properly on my Cygwin: kept crashing very early during the 'make' of binutils. No idea why... so if you can tell me how you built them (what sources you used, which host gcc version...)

Reply to
Guillaume

Hmmm. It was quite some time. I guess I've used the options, documented on the page. I've used some 3.0 compiler I think. The one that normally comes with cygwin should do though it does not contain the ADA compiler so you won't get ADA out of your sources if you use that. I have never had problems compiling binutils so I really don't know what went wrong in your case. I wasn't successful in compiling an ARM cross toolset with the coff object format. Some source says it's not supported, some says it is, so I'm a bit confused there. The sources I've grabbed from the gcc and binutils website, respectively. I got the newlib sources from their CVS repository.

Regrads, Andras Tantos

go.

Reply to
Andras Tantos

go.

Please show us the failure message if you still have them.

Tauno Voipio tauno voipio @ iki fi

Reply to
Tauno Voipio

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.