Compiling shfs on kernel 2.6.17 with gcc 4.03 (on Ubuntu 6.06 Dapper thanks to Gentoo) [but not installed]

module-assistant build shfs
failed complaining about a missing Makefile.cpu so I copied it over

cp /usr/src/linux-2.6.17-beyond2.2_2/arch/i386/Makefile.cpu /usr/src/kernel-headers-2.6.17-beyond2.2-2/arch/i386/

it also complained about a missing Module.symvers so I copied it over too

cp /usr/src/linux-2.6.17-beyond2.2_2/Module.symvers /usr/src/kernel-headers-2.6.17-beyond2.2-2/

Then it just failed with

cannot stat `Linux-2.6/shfs.ko’: No such file or directory

so I tried to compile it manually and got the following:

make[2]: Entering directory `/usr/src/linux-2.6.17-beyond2.2_2′ CC [M] /usr/src/modules/shfs/Linux-2.6/dcache.o /usr/src/modules/shfs/Linux-2.6/dcache.c: In function ‘shfs_invalidate_dircache_entries’: /usr/src/modules/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ /usr/src/modules/shfs/Linux-2.6/dcache.c:71: warning: type defaults to ‘int’ in declaration of ‘__mptr’ /usr/src/modules/shfs/Linux-2.6/dcache.c:71: warning: initialization from incompatible pointer type /usr/src/modules/shfs/Linux-2.6/dcache.c:71: error: ‘struct dentry’ has no member named ‘d_child’ /usr/src/modules/shfs/Linux-2.6/dcache.c: In function ‘shfs_dget_fpos’:
/usr/src/modules/shfs/Linux-2.6/dcache.c:104: error: ‘struct dentry’ has no member named ‘d_child’
/usr/src/modules/shfs/Linux-2.6/dcache.c:104: warning: type defaults to ‘int’ in declaration of ‘__mptr’
/usr/src/modules/shfs/Linux-2.6/dcache.c:104: warning: initialization from incompatible pointer type
/usr/src/modules/shfs/Linux-2.6/dcache.c:104: error: ‘struct dentry’ has no member named ‘d_child’

I found that the good folks at gentoo solved it with Miroslav Spousta’s patch in shfs-0.35-r3.ebuild: http://atrey.karlin.mff.cuni.cz/~qiq/src/shfs/shfs-0.35/d_entry-2.6.16.diff

patch -p0 <d_entry-2.6.16.diff

I don’t know how to make module-assistant happy with it, I tried packing it up to make it look the same but it failed with the good old:

cannot stat `Linux-2.6/shfs.ko`

but I can insmod it and it works just fine

I filed a bug report on:

https://launchpad.net/distros/ubuntu/+source/shfs/+bug/56575

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s