From: ChrisQ on
ChrisQ wrote:


> from around 1992, using gcc2.7.2 cross to dragonball 68000:
^^^^

Correction, should be 2002...

Regards,

Chris
From: 42Bastian Schick on
On Tue, 03 Nov 2009 16:00:30 +0100, David Brown
<david(a)westcontrol.removethisbit.com> wrote:

>Which cpu? Code Sourcery gcc supports a large number of m68k family
>devices - there may be a closer match than -m68000.

It looks to me like a bug, a simple

x.c:
int main() { return 0; }

m68k-elf-gcc -o x.elf -m68000 x.c

gives also below error:

>> c:/program files/codesourcery/sourcery g++ lite/bin/../lib/gcc/m68k-
>> elf/4.2.1/../../../../m68k-elf/bin/ld.exe: m68k:isa-a:nodiv
>> architecture of input file `c:/program files/codesourcery/sourcery g++
>> lite/bin/../lib/gcc/m68k-elf/4.2.1\libgcc.a(_divsi3.o)' is
>> incompatible with m68k:68000 output

Jim, maybe you really need to check if 68000 is still supported by
newer gcc ?

--
42Bastian
Do not email to bastian42(a)yahoo.com, it's a spam-only account :-)
Use <same-name>@monlynx.de instead !
From: ChrisQ on
Jim wrote:

> lite/bin/../lib/gcc/m68k-elf/4.2.1\libgcc.a(_divsi3.o)' is
> incompatible with m68k:68000 output


Looking at that again, it looks like the libgcc.a, which is processor
specific and required by the compiler, iirc, to resolve some
instructions, is being pulled in from the wrong place.

On my makefile:

LIBGCC = $(CC68ROOT)/lib/gcc-lib/m68k-coff/2.7.2.3/m68000/libgcc.a

libgcc.a comes from a separate cpu specific directory. Have a look to
see if there is any similar directory structure for 4.2.1...

Regards,

Chris
From: Chris Burrows on
"Jim" <adirondackmtn(a)yahoo.com> wrote in message
news:342fac09-113a-4a00-8576-6cfabce7d3f0(a)p8g2000yqb.googlegroups.com...
>
> I'm using the free Code Sourcery Lite gcc for m68k for a home project
> that involves a micro with 68000 cpu core.
....
....
>
> CodeSourcery is "for" Coldfire which (I think) has a richer
> instruction set than the 68000 cpu I have. If this is true and that
> lib is built with that instruction set, it wouldn't be compatible with
> my object code. I think this is what the error is saying. I have an
> old Linux box with v2.2 Linux on it, so I COULD build my own cross
> compiler for WinXP, or I could try the cygwin deal and build it on
> WinXP, but let's face it, either would be a real pain. Does anyone
> have any better ideas?
>

Thinking outside the square ...

The 680x0 development tools I use include a cross-assembler running on DOS /
Windows, a Modula-2 compiler on MacOS, the Digital Research C compiler
running on CPM/68K and two Pascal compilers targeting Palm PDAs. I may be
able to advise better knowing more about your requirements:

Does your target system have an OS? If so what is it?

Is C an absolute requirement for the programming language?

Are you writing code from scratch, adapting existing code or hoping to just
recompile existing code?

What is the preferred format of the resulting object files / executables?

--
Chris Burrows
CFB Software
Armaide: ARM Oberon-07 Development System
http://www.armaide.com










From: David Brown on
42Bastian Schick wrote:
> On Tue, 03 Nov 2009 16:00:30 +0100, David Brown
> <david(a)westcontrol.removethisbit.com> wrote:
>
>> Which cpu? Code Sourcery gcc supports a large number of m68k family
>> devices - there may be a closer match than -m68000.
>
> It looks to me like a bug, a simple
>
> x.c:
> int main() { return 0; }
>
> m68k-elf-gcc -o x.elf -m68000 x.c
>
> gives also below error:
>
>>> c:/program files/codesourcery/sourcery g++ lite/bin/../lib/gcc/m68k-
>>> elf/4.2.1/../../../../m68k-elf/bin/ld.exe: m68k:isa-a:nodiv
>>> architecture of input file `c:/program files/codesourcery/sourcery g++
>>> lite/bin/../lib/gcc/m68k-elf/4.2.1\libgcc.a(_divsi3.o)' is
>>> incompatible with m68k:68000 output
>
> Jim, maybe you really need to check if 68000 is still supported by
> newer gcc ?
>

The 68000 certainly is still supported by gcc, and CodeSourcery's builds
of gcc support it fine for the compiler and binutils. However, it looks
like there are no pre-built libraries for the 68000 in their binaries
(at least, in the version I have installed on my machine). Assuming the
OP really is using a 68000 and not a different m68k device (such as a
68020), then I'd recommend asking on the CodeSourcery mailing list.
They'll be able to give more information, such as whether these
libraries are available pre-built in the paid-for versions of the tools,
or for tips on how to build the libraries yourself.