[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Compile errors building Etrax 82 tools



I have some tips, take them at your own risk, I have limited experience
and these are just based on my observations. First tip, create an
axis.sh file the same as init_env and add it to /etc/profile.d/ and
change profile.d to run the axis.sh script. That way you can be sure
each new bash you start has those variable set, whether it be root or a
normal user.

My second tip is: upgrade. When your kernel is older than the one your
trying to cross-compile, to me that seems a little odd. So your gcc,
rpm, and other things are probably all old.

Third: try not to be root when you do this stuff. Unless you have too
(when install rpm). And then, you might want to chown user:user -R dir/ .

Details about my own experience getting the SDK going: You seem to have
a better grip on things than I do, but I did have a little bit of
trouble when I was using the devboard_82_R1-92 package. I did the kernel
patch like you did, etc. The patch seemed to upload to the box just fine
as well. I had issues when I was doing make install and make files after
doing the demo "Hello World" program. Sometimes it seemed to randomly
crap out after I don't remember having made any changes. After that
happened and I re-followed the SDK install, I began to make tar backups
of my axis directory.

----- Original Message -----
From: "Mark Richards" <mark.richards@xxxxxxx.com>
Date: Thursday, July 1, 2004 8:15 pm
Subject: Compile errors building Etrax 82 tools

> I am evaluating an AXIS 82 board as a platform for our application.
> Actually, a new board will be developed using the ETRAX.
> 
> I have the CRIS tools installed and see that init_env takes care of 
> settingup the path for it, etc.
> 
> I also untar'd the 2.4.26 kernel. I have a fresh copy from 
> kernel.org that
> is on CD and that I use whenever building.
> 
> The RPM put CRIS wherever it is supposed to go with no errors. I 
> put the
> devboard_82-R1_92.tar.gz in my /home/dev/ directory and unzipped it 
> there.
> I did . ./init_env without a problem and checked the SET list to make
> certain
> 
> I ran ./install and pointed to the os/linux-2.4.26.
> 
> The patches seemed to go off fine...
> 
> I then told it to go ahead and build. Here's where things went 
> bad... Some
> of the errors seem fundamentally wrong...
> 
> Do you want to build the software now (default y)? y
> *** Building software
> make tools
> make[1]: Entering directory `/home/dev/axis/devboard_82'
> make -C tools/build install
> make[2]: Entering directory `/home/dev/axis/devboard_82/tools/build'
> make -C ccdv install 
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"make[3]: 
> Entering directory `/home/dev/axis/devboard_82/tools/build/ccdv'
> gcc -Wall -Wshadow -I/home/dev/axis/devboard_82/target/host/include 
> -O0 -g
> -fno-omit-frame-pointer -
> L/home/dev/axis/devboard_82/target/host/lib ccdv.c
> -o ccdv
> install -p -d /home/dev/axis/devboard_82/tools/build/bin
> install -p -m 0755 ccdv @ccdv 
> /home/dev/axis/devboard_82/tools/build/binmake[3]: Leaving 
> directory `/home/dev/axis/devboard_82/tools/build/ccdv'
> make -C scripts install 
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"make[3]: 
> Entering directory `/home/dev/axis/devboard_82/tools/build/scripts'
> 
> install -p -d /home/dev/axis/devboard_82/tools/build/bin
> install -p -m 0755 arpping axls.pl axrequires boot_argus boot_elinux
> boot_linux buildsrc compiler-version convertcomments.pl cris-sym-tab
> cvs_diff cvs2cl.pl diff_prodspec find-needed-shlibs.pl fix_cvsroot 
> gcc_crisgenindex init_env_elinux.pl install_elinux ksymoops-cris 
> meta_name2nbrmke2fs_elinux mkfdscript mknod_elinux mkprod mkptable 
> mkswinfo multiflash
> optlibs padflashimage prodspec.pm prodspec2configure remotecmd 
> strrpl.pl/home/dev/axis/devboard_82/tools/build/bin
> ln -sfn gcc_cris 
> /home/dev/axis/devboard_82/tools/build/bin/arm_linux_gccmake[3]: 
> Leaving directory `/home/dev/axis/devboard_82/tools/build/scripts'
> make -C axis_internal_scripts install
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"
> make[3]: Entering directory
> `/home/dev/axis/devboard_82/tools/build/axis_internal_scripts'
> install_elinux -p -d /home/dev/axis/devboard_82/tools/build/bin
> install_elinux -p -m 0755 axis2sf cvsget.cgi jasm juliette_regs.pl 
> sf2axisTGasm.pl /home/dev/axis/devboard_82/tools/build/bin
> make[3]: Leaving directory
> `/home/dev/axis/devboard_82/tools/build/axis_internal_scripts'
> make -C genromfs install 
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"
> make[3]: Entering directory
> `/home/dev/axis/devboard_82/tools/build/genromfs'
> gcc -Wall -Wshadow -I/home/dev/axis/devboard_82/target/host/include 
> -O0 -g
> -fno-omit-frame-pointer -c -o genromfs.o genromfs.c
> genromfs.c: In function `processdir':
> genromfs.c:690: warning: declaration of `dirfd' shadows global 
> declarationgenromfs.c:692: warning: declaration of `link' shadows 
> global declaration
> genromfs.c: In function `main':
> genromfs.c:839: warning: implicit declaration of function `time'
> genromfs.c:839: warning: long unsigned int format, unsigned int arg 
> (arg 3)
> gcc -L/home/dev/axis/devboard_82/target/host/lib genromfs.o -o
> genromfs_elinux install_elinux -p -d
> /home/dev/axis/devboard_82/tools/build/bin
> install_elinux -p -m 0755 genromfs_elinux
> /home/dev/axis/devboard_82/tools/build/bin
> make[3]: Leaving directory 
> `/home/dev/axis/devboard_82/tools/build/genromfs'
> make -C imgsum install 
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"make[3]: 
> Entering directory `/home/dev/axis/devboard_82/tools/build/imgsum'
> gcc -Wall -Wshadow -I/home/dev/axis/devboard_82/target/host/include 
> -O0 -g
> -fno-omit-frame-pointer -L/home/dev/axis/devboard_82/target/host/lib
> imgsum.c -o imgsum
> install_elinux -p -d /home/dev/axis/devboard_82/tools/build/bin
> install_elinux -p -m 0755 imgsum 
> /home/dev/axis/devboard_82/tools/build/binmake[3]: Leaving 
> directory `/home/dev/axis/devboard_82/tools/build/imgsum'
> make -C mkcramfs install 
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"
> make[3]: Entering directory
> `/home/dev/axis/devboard_82/tools/build/mkcramfs'
> gcc -Wall -Wshadow -I/home/dev/axis/devboard_82/target/host/include 
> -O0 -g
> -fno-omit-frame-pointer -I. -
> L/home/dev/axis/devboard_82/target/host/libmkcramfs.c -lz -o 
> mkcramfs gcc -Wall -Wshadow
> -I/home/dev/axis/devboard_82/target/host/include -O0 -g
> -fno-omit-frame-pointer -I. -
> L/home/dev/axis/devboard_82/target/host/libcramfsck.c -lz -o 
> cramfsck In file included from /usr/include/linux/fs.h:12,
> 
> from cramfsck.c:56:
> /usr/include/linux/wait.h:4: warning: `WNOHANG' redefined
> /usr/include/bits/waitflags.h:26: warning: this is the location of the
> previous definition
> /usr/include/linux/wait.h:5: warning: `WUNTRACED' redefined
> /usr/include/bits/waitflags.h:27: warning: this is the location of the
> previous definition
> cramfsck.c: In function `usage':
> cramfsck.c:110: warning: declaration of `stream' shadows global 
> declarationcramfsck.c: At top level:
> cramfsck.c:376: warning: declaration of `fd' shadows global 
> declarationcramfsck.c: In function `do_uncompress':
> cramfsck.c:377: warning: declaration of `fd' shadows global 
> declarationcramfsck.c: In function `do_file':
> cramfsck.c:510: warning: declaration of `fd' shadows global 
> declarationinstall_elinux -p -d 
> /home/dev/axis/devboard_82/tools/build/bininstall_elinux -p -m 0755 
> mkcramfs cramfsck
> /home/dev/axis/devboard_82/tools/build/bin
> make[3]: Leaving directory 
> `/home/dev/axis/devboard_82/tools/build/mkcramfs'
> make -C mkfs.jffs install
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"
> make[3]: Entering directory
> `/home/dev/axis/devboard_82/tools/build/mkfs.jffs'
> gcc -Wall -Wshadow -I/home/dev/axis/devboard_82/target/host/include 
> -O0 -g
> -fno-omit-frame-pointer -L/home/dev/axis/devboard_82/target/host/lib
> mkfs.jffs.c -o mkfs.jffs
> mkfs.jffs.c: In function `write_file':
> mkfs.jffs.c:230: warning: unused variable `size'
> install_elinux -p -d /home/dev/axis/devboard_82/tools/build/bin
> install_elinux -p -m 0755 mkfs.jffs
> /home/dev/axis/devboard_82/tools/build/bin
> make[3]: Leaving directory
> `/home/dev/axis/devboard_82/tools/build/mkfs.jffs'
> make -C mkfs.jffs2 install
> BINDIR="/home/dev/axis/devboard_82/tools/build/bin"
> make[3]: Entering directory
> `/home/dev/axis/devboard_82/tools/build/mkfs.jffs2'
> cc -I. -O2 -Wall -c -o crc32.o crc32.c
> gcc: No input files
> make[3]: *** [crc32.o] Error 1
> make[3]: Leaving directory
> `/home/dev/axis/devboard_82/tools/build/mkfs.jffs2'
> make[2]: *** [mkfs.jffs2] Error 2
> make[2]: Leaving directory `/home/dev/axis/devboard_82/tools/build'
> make[1]: *** [tools] Error 2
> make[1]: Leaving directory `/home/dev/axis/devboard_82'
> make: *** [everything] Error 2
> 
> 
> What seems strange is that the stock GCC is invoked as the 
> compiler.  Maybe
> there's something wrong with the environment.  Shouldn't the CRIS-
> GCC be
> invoked?
> 
> I checked everything I could think of. The only issue I found was 
> that in
> the Makefile, the statement:
> 
> PATH := $(PATH):/usr/local/cris/r56
> 
> is set. However the r56 directory does not exist under cris. The ls 
> of cris
> is:
> 
> The path is:
>
PATH=/home/dev/axis/devboard_82/tools/build/bin:/home/dev/axis/devboard_82/t
> ools
>
/build/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr
> /X11
> R6/bin:/root/bin:/usr/local/cris:/usr/local/cris
> 
> which puts the /usr/local/cris at the end of the parsed path.  Even 
> thisdoesn't point to bin, which is another level down.  Also 
> there's no link
> file to gcc in the cris directory (or bin) to replace the cris 
> compiler with
> gcc.
> 
> I'm building on a Linux 7.2 box with a 2.4.7-10 kernel.
> 
> Maybe the RPM install of CRIS didn't work (although it indicated 
> success) or
> perhaps I should do a binary build?  I'm beginning to suspect this 
> is at
> least part of the problem.
> 
> Anyone have any suggestions?
> 
> 
>