Re: problems compiling enbd-2.4.32pre and fr1-2.16 under kernel 2.6.8.1

[email protected] (Peter T. Breuer)
Newsgroups gmane.linux.enbd.general
Message-ID <[email protected]>
In article <[email protected]> you wrote:
> > yours is (throughout the file) and all should be OK (crosses fingers).
> > Let me know what happens! I'd like very much to know.
> 
> i'm sorry, but i'm unable to do that 'cause i'm not a programmer. i just have
> a tiny little knowledge of c. to me, touching the Makefile could be a nightmare.

Well, as I said, swapping the references would do it, but I've had a go
at updating the Makefile for 2.6.8.1 (I use 2.6.3 and it works fine
there), and it mostly compiles in situ now - mostly, apart from the
final ld ... -o enbd.ko, which the Makefile emits but doesn't seem to
do. Mysterious. But you can do it by hand, since the lines are obvious
on the screen :-). 

Really the problem is that the Makefile comes from 2.6.3, and they
changed the 2.6.8.1 one in a subtle way that I haven't completely
sussed yet. I might just swap in the new one, and not try to support
the older one.

It (the revised makefile) should be in the current 2.4.32 archive - I
flushed from my portable to the archive a little while ago.

  betty:/usr/oboe/ptb/lang/c/nbd/nbd-2.4.32% sudo make ARCH=um LINUXDIR=/usr/local/src/linux-2.6.8.1-uml 
  make -C /tmp VPATH=/home/oboe/ptb/lang/c/nbd/nbd-2.4.32/nbd \
  ...
  gcc -Wp,-MD,/tmp/linux-2.6.x/drivers/block/enbd/.enbd.mod.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude  -D__KERNEL__ -Iinclude  -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -U__i386__ -Ui386  -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE -Iarch/um/include -Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/tt/include -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/skas/include  -Os -fomit-frame-pointer  -DUM_FASTCALL -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE -I/usr/local/src/linux-2.6.8.1-uml/arch/um/include -Derrno=kernel_errno -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/tt/include -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/skas/include
  -DKBUILD_BASENAME=enbd -DKBUILD_MODNAME=enbd -DMODULE -c -o /tmp/linux-2.6.x/drivers/block/enbd/enbd.mod.o /tmp/linux-2.6.x/drivers/block/enbd/enbd.mod.c
  ld  -r -o /tmp/linux-2.6.x/drivers/block/enbd/enbd.ko /tmp/linux-2.6.x/drivers/block/enbd/enbd.o /tmp/linux-2.6.x/drivers/block/enbd/enbd.mod.o
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  Do this by hand

  gcc -Wp,-MD,/tmp/linux-2.6.x/drivers/block/enbd/.enbd_ioctl.mod.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -D__KERNEL__ -Iinclude  -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -U__i386__ -Ui386  -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE -Iarch/um/include -Derrno=kernel_errno -Dsigprocmask=kernel_sigprocmask -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/tt/include -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/skas/include -Os -fomit-frame-pointer  -DUM_FASTCALL -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE -I/usr/local/src/linux-2.6.8.1-uml/arch/um/include -Derrno=kernel_errno -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/tt/include -I/usr/local/src/linux-2.6.8.1-uml/arch/um/kernel/skas/include -DKBUILD_BASENAME=enbd_ioctl -DKBUILD_MODNAME=enbd_ioctl -DMODULE -c -o /tmp/linux-2.6.x/drivers/block/enbd/enbd_ioct
 l.mod.o /tmp/linux-2.6.x/drivers/block/enbd/enbd_ioctl.mod.c
  ld  -r -o /tmp/linux-2.6.x/drivers/block/enbd/enbd_ioctl.ko /tmp/linux-2.6.x/drivers/block/enbd/enbd_ioctl.o /tmp/linux-2.6.x/drivers/block/enbd/enbd_ioctl.mod.o
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  And this

  make[1]: Leaving directory `/usr/local/src/linux-2.6.8.1-uml'
  cp: cannot stat `/tmp/linux-2.6.x/drivers/block/enbd/*.ko':
  No such file or directory
  *************************************
  * please apply kernel patch instead *
  *************************************

I don't know why those ld's don't get done. They work fine when I cut and
paste. Sigh. I'll see what the 2.6.8.1 Makefile does.


Peter
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.