Hi Paul,

Paul Romero wrote:
I am now sure there is a problem with Rules.make file
in  linux-2.4.x/arch/platform/m68knommu/5249/ and suspect
there is some kind of problem with paths to include
directories in general. Perhaps, some symbolic link
is wrong.

Executing "make dep" with the "New Tool Chain" installed
does not work. However, it can be made to work with some
manual modifications to Rules.make which are described
below.  Executing a normal make does not work after
the manual modifications and the problems are outlined
below.

For reference these are the relevant components.
The UC Linux distribution is 2.4.27 with the 2.4.x kernel

As I have pointed out before 2.4.27 is a kernel version,
not the version of any uClinux-dist package. It is quite possible
that more than one uClinux-dist contained a 2.4.27 kernel -
so you need to report what the uClinux-dist version is you
are using for the above problem descriptions to be useful.


and it configured for the M5249C3. (i.e. That is m68knommu
with  5249 as the platform.)
The "Old Tool Chain"  is the one distributed in
m68k-elf-tools-20030314.sh binary of the GNU Elf tool chain.
The "New Tool Chain"  is the one distributed in
m68k-elf-tools-20061214.sh binary of the GNU Elf tool chain.

I am not at all surprised that using a relatively modern toolchain
package on an older uClinux-dist package doesn't compile. Newer
versions of gcc are almost always better at picking up compile problems,
and sometimes other variations in acceptable syntax (to assembler or
linker files) will cause build failures.

As I (or others) generate new binary toolchains I (and others)
fix the current linux-2.4.x kernel code to go along with it.
So, you would need a much more upto date version of linux-2.4.x
to use with a newer binary tool chain package. 2.4.27 looks to
be at least 3 years old. It has been superseded a few times
over that time with newer 2.4.x versions.

You will most likely find that many of the changes you have had
to make have been made in more modern linux-2.4.x uClinux codes
(check easily at cvs.uclinux.org).

Regards
Greg



Also the following files are attached for your
convenience:

make.dep.bad.txt:  A log from an unsuccessful "make dep" with
the "New Tool Chain".

make.dep.good.txt: A log from a successful "make dep" with
the "New Tool Chain" and a hacked Rules.make.

make.bad.txt: A log for an unsuccessful normal make with
the "New Tool Chain" and a hacked Rules.make.

A description of the problem and modifications to the
Rules.make file is as follows:

The obvious problem is that the Rules.make file does not
specify the right path to the tool chain lib/ and include/
directories and can not automatically infer them.
These changes circumvent the problem and allow "make dep"
to succeed.

1) Substitute the following path definitions

   GCC_DIR = /usr/local/m68k-uclinux/lib
   MY_GCC_INC = /usr/local/m68k-uclinux/include

For the following one

   GCC_DIR = $(shell $(CC) -v 2>&1 | grep specs | sed -e
 's/.* \(.*\)specs/\1\./')

2) Substitute the following CFLAGS definition

   CFLAGS := -fno-builtin -nostdinc $(CFLAGS) -I$(MY_GCC_INC) -pipe
 -DNO_MM -DNO_FPU -m5200 -Wa,-S -Wa,-m5200 -D__ELF__ -DMAGIC_ROM_PTR
 -DUTS_SYSNAME=\"uClinux\" -D__linux__

For the following one

   CFLAGS := -fno-builtin -nostdinc $(CFLAGS) -I$(INCGCC) -pipe
 -DNO_MM -DNO_FPU -m5200 -Wa,-S -Wa,-m5200 -D__ELF__ -DMAGIC_ROM_PTR
 -DUTS_SYSNAME=\"uClinux\" -D__linux__


Attempting to perform a normal make after a successful
"make dep" with the modified Rules.make and the
"New Tool Chain"  fails as follows.
First, stdarg.h can not be found while attempting to
compile init/main.c. I think the version of stdarg.h
in lib/libc/include/m68k/ in the distribution tree
is the right one but I am not sure.

The "Old Tool Chain" finds stdarg.h in
/usr/local/lib/gcc-lib/m68k-elf/2.95.3/include/ and
that version is much different than the one in the
distribution tree.

Please let me know if this information is consistent with
any problem you know about.

Best Regards,

Paul R.


--
Paul Romero

RCOM Communications Software

Phone/Fax: (510)339-2628
E-Mail: [EMAIL PROTECTED]



------------------------------------------------------------------------
Greg Ungerer  --  Chief Software Dude       EMAIL:     [EMAIL PROTECTED]
Secure Computing Corporation                PHONE:       +61 7 3435 2888
825 Stanley St,                             FAX:         +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia         WEB: http://www.SnapGear.com

_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to