Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
14 years ago

uClinux kernel for NIOSII build error

Hello,

I have been using the "test-nios2" build release for my uClinux kernel. I can make a successful build when I do a fresh git checkout. I can make modifications via make menuconfig and have been able to get network communication working, create a kernel driver to work with my hardware and read data from my board. However, on several occasions now, if I go into menuconfig to add something new to the kernel such as POSIX Message Queues which is what I did this last time. I get the following build error. It is always the same. The mm.h file is being included and on line 599, I get" implicit declaration of function `virt_to_phys'" see below.

In file included from /home/jkealty/nios2-linux/linux-2.6/arch/nios2/kernel/traps.c:33:

/home/jkealty/nios2-linux/linux-2.6/include/linux/mm.h: In function `lowmem_page_address':

/home/jkealty/nios2-linux/linux-2.6/include/linux/mm.h:599: error: implicit declaration of function `phys_to_virt'

/home/jkealty/nios2-linux/linux-2.6/include/linux/mm.h:599: error: implicit declaration of function `virt_to_phys'

/home/jkealty/nios2-linux/linux-2.6/include/linux/mm.h:599: warning: return makes pointer from integer without a cast

make[3]: *** [arch/nios2/kernel/traps.o] Error 1

make[3]: *** Waiting for unfinished jobs....

make[2]: *** [init] Error 2

make[2]: *** Waiting for unfinished jobs....

make[2]: *** [arch/nios2/kernel] Error 2

make[2]: *** wait: No child processes. Stop.

make[1]: *** [sub-make] Error 2

make[1]: Leaving directory `/home/jkealty/nios2-linux/linux-2.6'

The only way I can resolve this is to remove my nios2-linux folder and all folders underneath and extract from the tar file and git checkout the test-nios2 branch for /nios2-linux/linux-2.6 and /nios2-linux/uClinux-dist. Again!

I can then start off with a basic make menuconfig, make Vendors_HWSelect SYSPTF= my hardware image ptf, then a final make. I then bring back in my kernel driver and user app source code.

So, my question to the forum: Is anyone else getting this same type of behaviour?

If so, what did you do to resolve it? What is causing the problem with mm.h?

Thanks,

John
No RepliesBe the first to reply