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

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

 



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/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux