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

Can't get "make O=" with external module to work



I'm trying to compile an external module and use the O= kbuild option, but it's not working for me:

make -C /usr/ammasso/src/sles9/2.6.5-32smp SUBDIRS=/home/ttabi/sb/starcore/software/host/linux/sys/devccil O=/home/ttabi/sb/starcore/software/host/linux/sys/devccil/obj_2.6.5-32smp_debug
make[1]: Entering directory `/usr/ammasso/src/sles9/2.6.5-32smp'
/usr/ammasso/src/sles9/2.6.5-32smp/Makefile:438: .config: No such file or directory


WARNING: Symbol version dump /home/ttabi/sb/starcore/software/host/linux/sys/devccil/obj_2.6.5-32smp_debug/Module.symvers is missing, modules will have CONFIG_MODVERSIONS disabled.

CC [M] /home/ttabi/sb/starcore/software/host/linux/sys/devccil/devnet.o
/bin/sh: line 1: scripts/basic/fixdep: No such file or directory
make[3]: *** [/home/ttabi/sb/starcore/software/host/linux/sys/devccil/devnet.o] Error 1


As you can see, it just falls apart. In order to get the effect I want, I have to do this:

rm -rf .tmp_versions ${TARGET_DIR}
mkdir -p ${TARGET_DIR}
${MAKE} -C ${LINUX} SUBDIRS=${CURDIR}
mv *.o *.ko ${TARGET_DIR}

In addition to being just ugly, it also has the drawback that it needs to rebuild the entire driver every time I run make. I know I could make it more intelligent, but that's not the point. The point is that I can't get O= to work, and I'd like to know why.

I'm using kernel version 2.6.5-52, as shipped with Suse Enterprise Linux 9.

--
Timur Tabi
Staff Software Engineer
timur.tabi@xxxxxxxxxxx

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/