[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[microblaze-uclinux] Compilation error - mbvanilla code still being built afteruClinux_auto_6_30_b "patch"
A search for this exact error will pull up recent posts with the same
problem. Unfortunately, 404 errors occur whenever any of them are
accessed, and the cached search results show no sign of resolution, but
just the suggestion that the auto platform be used instead of mbvanilla.
Thus, I'll try too and be a bit more specific than prior requests for
assistance:
When I try a "make" on the uClinux-dist, I get the following error:
arch/microblaze/kernel/kernel.o: In function `mach_setup':
/usr/src/uClinux/uClinux-2.4.x/arch/microblaze/kernel/mbvanilla.c:207:
undefined reference to `xmbrs_console_init'
drivers/char/char.o: In function `write_mem':
/usr/src/uClinux/uClinux-2.4.x/drivers/char/mem.c:120: undefined
reference to `xmbrs_console_init'
make[1]: *** [linux] Error 1
make[1]: Leaving directory `/usr/src/uClinux/uClinux-2.4.x'
make: *** [linux] Error 1
Here is my process to get it working, following the procedures I find
scattered about the web site and READMEs:
I do a 'make distclean' in the uClinux-dist tree, then a cvs update.
I put the edk_user_repository (BSP package) directory in /opt,
alongside /opt/xilinx-edk-6.3p2 and /opt/xilinx-ise-6.3p3
I ensure that all my environment variables are set properly to point to
the Xilinx binaries/libraries, cross-compiler, etc.
I (re)build the uClinux_auto_6_30_b fresh from the tarball. (A note on
this: the README file says to do a 'make init_bram' and 'make libs';
however, nothing is to be done for 'make libs' - it is apparently
already done by 'make init_bram')
I copy the auto-config.in file into the platform/uclinux-auto directory,
overwriting what was previously there.
In the uClinux-dist tree, I run 'make menuconfig', make no alterations,
and exit, saving the .config (as the README file cryptically instructs).
As it exits, I hit enter for the default on all prompts.
A 'make dep' fails when trying to find an ARM cross-compiler:
# using defaults found in .config
...
Target Architecture
...
> 2. arm (TARGET_arm)
...
You get the gist. This is apparently a lapse in the instructions - I
find the whole workflow rather convoluted and obsolete (referring all
the time to mbvanilla and renamed/inconsistent directory structures).
The "first" and "next" steps aren't particularly clear in many cases,
even following (what I assume is) John's otherwise excellent (albeit
outdated) process.
Next, I 'make menuconfig' and set the vender/product to
Insight/XCV21K_Microblaze (that's the board I'm using), and 'make dep'
works, but I'm back to the same error as at the top of this message.
Setting "Default all settings" and/or "Update default vendor settings"
makes no difference - neither does actually selecting mbvanilla, or
going back through the whole process with any of a number of subtle
alterations, like the placement of the BSP package.
Am I missing a step? Should I be bothering to customize the settings?
Is it necessary to somehow manually select the "auto" platform? Is
there something else anyone could suggest I should check?
Any assistance would be greatly appreciated.
Once I get this working, I think I could help out by putting down the
whole procedure in detail - if nothing else, it could serve as a nice
addition to the FAQ: something for the hobbyist, researcher, or
evaluator who isn't yet to the point of contributing to the development.
Josiah England
Advanced Computing Laboratory
Los Alamos National Labs
___________________________
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/