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

Re: [microblaze-uclinux] Kernel/Dist source checkout -and- kernel build under new toolset



Hi again John,

Did a clean CVS checkout of the current -dist and -2.4.x trees.  Did a clean 
download and un-tar of the new toolset.  Did not apply any patches (David 
Banas' or otherwise).  Setup the symbolic link "linux-2.4.x".  Made sure 
tools were in the PATH.  Left the original auto-config.in in the 
.../uclinux-auto/ directory.

make clean <-- completed after I got rid of uClinux-dist/images/CVS.. same 
as last time
make menuconfig <-- selected Xilinx/uClinux-auto as target, Customize 
Kernel.., Customize Vendor... completed
make dep <-- completed
make <-- asked a bunch of new questions, accepted defaults, completed.

Couldn't test the results, as not for my target, but at least it compiled 
<g>.

Then i un-tar-ed David Banas' NuHo_S3-2000_uClinux_config.tar to get the 
NuHo board configs installed.
Also copied in my current auto-config.in file.

make clean <-- completed
make menuconfig <-- selected Customize Kernel.., Customize Vendor..., 
confirmed proper config options were imported, completed
make dep <-- completed
make <-- failed as before trying to compile init/main.c

Then I put back the original auto-config.in file and..... (drumroll please) 
..... the @#$%@ thing compiled sucessfully!

SO.... back to Windows and the Xilinx EDK, noted that the MicroBlaze was 
still deprecated to version 3, so I set it to the new version 4, which the 
new tools are supposed to like.  Also updated S/W side EMAC to v 1.00.f. 
Several moments later (ok, I had a brief nap, so it seemed like moments), I 
had the new auto-config.in in place on the Linux side of things...

make clean <-- completed
delete the microblaze_defs.d and .h files just in case per John
make menuconfig <-- selected Customize Kernel.., Customize Vendor..., 
confirmed proper config options were imported, completed
make dep <-- completed
make <--- and it failed in the same usual place <argh!>

Included are the ORIGauto-config.in that came with the distribution, and my 
current auto-config.in, with my extra GPIO, but all else fairly plain and 
matching the NuHo board, as far as I can see.  Also included is the make 
output.

Any and all thoughts appreciated.

Jim


----- Original Message ----- 
From: "John Williams" <jwilliams@itee.uq.edu.au>
To: <microblaze-uclinux@itee.uq.edu.au>
Sent: Monday, September 26, 2005 2:20 AM
Subject: Re: [microblaze-uclinux] Kernel/Dist source checkout -and- kernel 
build under new toolset


> Hi Jim,
>
> It is my understanding that the current CVS head (both uClinux-dist and
> uClinux-2.4.x) kernel build cleanly for the ml401 and uclinux-auto
> platform, with the latest gcc-3.4 toolchain, without any patches required.
>
> If anybody has experienced otherwise, I'd really like to hear about it.
>
> It is curious as to why you would have problems with the newer tools,
> but not the older ones.
>
> Just to be sure, you should do a full make clean (or even, "make
> distclean") when you toggle compiler versions, and also delete the files
> mentioned in my earlier post:
>
> "delete the files linux-2.4.x/arch/microblaze/kernel/microblaze_defs.d
> and .h, the first time you build with the new compiler."
>
> To David Banas - have you had a chance to test your patches with the new
> tools and latest CVS?  If you can generate some clean and known-good
> patches we can get them committed into the SnapGear tree.
>
> Regards,
>
> John
>
>
>
> Jim Law wrote:
>
>> Hi all,
>>
>> Just like to get some comments on whether or not I'm using a
>> "new-enough" kernel/dist source checkout.  Trying out the new toolchain
>> per John's instructions, and having some bumps.
>>
>> I've got:
>>
>> cd /opt
>> cvs -d:pserver:anonymous@cvs.uclinux.org:/var/cvs login
>> cvs -z3 -d:pserver:anonymous@cvs.uclinux.org:var/cvs co
>> -ruClinux-dist-20041215 uClinux-dist
>> cvs -z3 -d:pserver:anonymous@cvs.uclinux.org:var/cvs co
>> -rbefore-snapgear-code-sync-20050504 uClinux-2.4.x
>> cd /opt/uClinux-2.4.x
>> cvs update -d -D'July 12 2005'
>> cd /opt/uClinux-dist
>> ln -s ../uClinux-2.4.x linux-2.4.x
>>
>> Then I apply David Banas' patches for the NuHo S3-2000 board:
>>
>> patch -p 0 -b < NuHo_S3-2000_uClinux-2.4.x.patch
>> patch -p 0 -b < NuHo_S3-2000_uClinux-dist.patch
>>
>> ... and unzip his config setups:
>>
>> tar xf NuHo_S3-2000_uClinux_config.tar
>>
>> With the old toolchain, can build a kernel just fine.  With the new
>> toolchain, I do:
>>
>> make clean
>> ... delete the microblaze_defs.d and .h per John's instructions
>> make menuconfig
>> make dep
>> make
>> <-- and it craps out early in make while trying to compile "init/main.c"
>> giving:
>> /opt/uClinux-2.4.x/include/linux/autoconf.h:42: error: parse error
>> before ')' token
>> ... and a bunch of follow-on similar stuff
>>
>> ... put the old toolchain back, and all is cool.
>>
>> Thots anyone??
>>
>> Jim Law
>> Iris Power
>>
>>
>> ___________________________
>> microblaze-uclinux mailing list
>> microblaze-uclinux@itee.uq.edu.au
>> Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
>> Mailing List Archive :
>> http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
>
>
> -- 
> Dr John Williams, Research Fellow,
> Embedded Systems Group / Reconfigurable Computing
> School of ITEE, The University of Queensland, Brisbane, Australia
> (p) +61 7 33652185  (f) +61 7 33654999 (m) +61 403969243
> ___________________________
> microblaze-uclinux mailing list
> microblaze-uclinux@itee.uq.edu.au
> Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
> Mailing List Archive : 
> http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
>
> 

Attachment: ORIGauto-config.in
Description: Binary data

Attachment: auto-config.in
Description: Binary data

<a bunch of early stuff clipped>

/opt/uClinux-2.4.x/.hdepend:3714: warning: overriding commands for target `/opt/uClinux-2.4.x/include/net/sctp/tsnmap.h'
/opt/uClinux-2.4.x/.hdepend:3714: warning: ignoring old commands for target `/opt/uClinux-2.4.x/include/net/sctp/tsnmap.h'
/opt/uClinux-2.4.x/.hdepend:3718: warning: overriding commands for target `/opt/uClinux-2.4.x/include/net/sctp/user.h'
/opt/uClinux-2.4.x/.hdepend:3718: warning: ignoring old commands for target `/opt/uClinux-2.4.x/include/net/sctp/user.h'
/opt/uClinux-2.4.x/.hdepend:3725: warning: overriding commands for target `/opt/uClinux-2.4.x/include/math-emu/soft-fp.h'
/opt/uClinux-2.4.x/.hdepend:3725: warning: ignoring old commands for target `/opt/uClinux-2.4.x/include/math-emu/soft-fp.h'
scripts/split-include include/linux/autoconf.h include/config
mb-gcc -D__KERNEL__ -I/opt/uClinux-2.4.x/include  -Wall -Wstrict-prototypes -Wno-trigraphs -O1 -g -fno-strict-aliasing -fno-common -DPLATFORM=uclinux-auto -O2 -fno-builtin -DNO_MM -DNO_FPU -D__ELF__ -DUTS_SYSNAME=\"uClinux\" -D__linux__ -I/usr/local/MicroBlaze-elf-tools/bin/../lib/gcc/microblaze/3.4.1/./include -mxl-barrel-shift -mno-xl-soft-div -mno-xl-soft-mul   -DKBUILD_BASENAME=main -c -o init/main.o init/main.c
In file included from /opt/uClinux-2.4.x/include/linux/config.h:4,
                 from init/main.c:14:
/opt/uClinux-2.4.x/include/linux/autoconf.h:45: error: parse error before ')' token
/opt/uClinux-2.4.x/include/linux/autoconf.h:47: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:49: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:51: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:125: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:127: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:129: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:138: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:140: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:142: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:151: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:153: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:155: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:163: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:269: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:271: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:273: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:291: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:293: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:297: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:299: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:305: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:330: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:332: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:334: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:336: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:356: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:358: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:362: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:372: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:392: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:394: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:396: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:406: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:426: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:428: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:430: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:452: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:481: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:483: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:487: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:495: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:541: error: missing terminating " character
/opt/uClinux-2.4.x/include/linux/autoconf.h:543: error: missing terminating " character
In file included from /opt/uClinux-2.4.x/include/asm/bitops.h:10,
                 from /opt/uClinux-2.4.x/include/asm/posix_types.h:19,
                 from /opt/uClinux-2.4.x/include/linux/posix_types.h:46,
                 from /opt/uClinux-2.4.x/include/linux/types.h:15,
                 from /opt/uClinux-2.4.x/include/linux/capability.h:16,
                 from /opt/uClinux-2.4.x/include/linux/binfmts.h:4,
                 from /opt/uClinux-2.4.x/include/linux/sched.h:9,
                 from /opt/uClinux-2.4.x/include/linux/mm.h:4,
                 from /opt/uClinux-2.4.x/include/linux/slab.h:14,
                 from /opt/uClinux-2.4.x/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/opt/uClinux-2.4.x/include/asm/system.h:40:44: missing ')' in expression
In file included from /opt/uClinux-2.4.x/include/linux/prefetch.h:14,
                 from /opt/uClinux-2.4.x/include/linux/list.h:6,
                 from /opt/uClinux-2.4.x/include/linux/wait.h:14,
                 from /opt/uClinux-2.4.x/include/linux/fs.h:12,
                 from /opt/uClinux-2.4.x/include/linux/capability.h:17,
                 from /opt/uClinux-2.4.x/include/linux/binfmts.h:4,
                 from /opt/uClinux-2.4.x/include/linux/sched.h:9,
                 from /opt/uClinux-2.4.x/include/linux/mm.h:4,
                 from /opt/uClinux-2.4.x/include/linux/slab.h:14,
                 from /opt/uClinux-2.4.x/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/opt/uClinux-2.4.x/include/asm/cache.h:25:45: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/cache.h:31:45: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/cache.h:41:63: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/cache.h:94:41: missing ')' in expression
In file included from /opt/uClinux-2.4.x/include/linux/string.h:20,
                 from /opt/uClinux-2.4.x/include/linux/fs.h:23,
                 from /opt/uClinux-2.4.x/include/linux/capability.h:17,
                 from /opt/uClinux-2.4.x/include/linux/binfmts.h:4,
                 from /opt/uClinux-2.4.x/include/linux/sched.h:9,
                 from /opt/uClinux-2.4.x/include/linux/mm.h:4,
                 from /opt/uClinux-2.4.x/include/linux/slab.h:14,
                 from /opt/uClinux-2.4.x/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/opt/uClinux-2.4.x/include/asm/string.h:25:41: missing ')' in expression
In file included from /opt/uClinux-2.4.x/include/linux/proc_fs.h:5,
                 from init/main.c:15:
/opt/uClinux-2.4.x/include/linux/slab.h:52: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:52: warning: type defaults to `int' in declaration of `kmem_find_general_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:52: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:53: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:54: error: parse error before "kmem_cache_t"
/opt/uClinux-2.4.x/include/linux/slab.h:54: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:55: error: parse error before "kmem_cache_t"
/opt/uClinux-2.4.x/include/linux/slab.h:55: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:55: warning: type defaults to `int' in declaration of `kmem_cache_create'
/opt/uClinux-2.4.x/include/linux/slab.h:55: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:56: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:56: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:57: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:57: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:58: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:58: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:59: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:59: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:60: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:60: warning: function declaration isn't a prototype
/opt/uClinux-2.4.x/include/linux/slab.h:71: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:71: warning: type defaults to `int' in declaration of `vm_area_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:71: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:72: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:72: warning: type defaults to `int' in declaration of `mm_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:72: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:73: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:73: warning: type defaults to `int' in declaration of `names_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:73: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:74: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:74: warning: type defaults to `int' in declaration of `files_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:74: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:75: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:75: warning: type defaults to `int' in declaration of `filp_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:75: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:76: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:76: warning: type defaults to `int' in declaration of `dquot_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:76: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:77: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:77: warning: type defaults to `int' in declaration of `bh_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:77: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:78: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:78: warning: type defaults to `int' in declaration of `fs_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:78: warning: data definition has no type or storage class
/opt/uClinux-2.4.x/include/linux/slab.h:79: error: parse error before '*' token
/opt/uClinux-2.4.x/include/linux/slab.h:79: warning: type defaults to `int' in declaration of `sigact_cachep'
/opt/uClinux-2.4.x/include/linux/slab.h:79: warning: data definition has no type or storage class
In file included from /opt/uClinux-2.4.x/include/linux/highmem.h:5,
                 from /opt/uClinux-2.4.x/include/linux/pagemap.h:16,
                 from /opt/uClinux-2.4.x/include/linux/locks.h:8,
                 from /opt/uClinux-2.4.x/include/linux/blk.h:5,
                 from init/main.c:25:
/opt/uClinux-2.4.x/include/asm/pgalloc.h:28:44: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/pgalloc.h:46:44: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/pgalloc.h:72:44: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/pgalloc.h:92:44: missing ')' in expression
/opt/uClinux-2.4.x/include/asm/pgalloc.h:116:45: missing ')' in expression
make[1]: *** [init/main.o] Error 1
make[1]: Leaving directory `/opt/uClinux-2.4.x'
make: *** [linux] Error 1
[root@localhost uClinux-dist]#