kernel modules cross compiling
Vangelis Pothos
vp at enet.gr
Fri May 23 13:54:06 EEST 2008
Καλημέρα
Προσπαθώ να κάνω cross compile τον TUN/TAP device driver για ένα Western
Digital MyBook (NAS είναι) με arm cpu που τρέχει Linux, έτσι ώστε να μπορέσω
να τρέξω το Openvpn.
Αφού έχω κατεβάσει το GPL source code pack που δίνει η WD, το οποίο
περιλαμβάνει kernel source code και crosstool, αφού πείραξα λίγο με το χέρι
το .config και το Makefile, έκανα compile τα modules μόνο και πήρα το
παραγώμενο tun.ko και το έφερα στο MyBook.
Αφού έβαλα το path του module στο modules.dep, δοκίμασα να κάνω insmod, το
οποίο απέτυχε:
[root at MyBookWorld 2.6.17.14]# modprobe tun
insmod: cannot insert `/lib/modules/2.6.17.14/kernel/drivers/net/tun.ko':
Invalid module format (-1): Exec format error
To gcc version που έχει γίνει compile το module δείχνει να είναι ίδιο με το
gcc version του kernel του mybook.
vsuse:/tmp/tun # modinfo tun.ko
filename: tun.ko
description: Universal TUN/TAP device driver
author: (C) 1999-2004 Max Krasnyansky <maxk at qualcomm.com>
license: GPL
alias: char-major-10-200
vermagic: 2.6.17.14 mod_unload ARMv4 gcc-4.1
depends:
[root at MyBookWorld ~]# cat /proc/version
Linux version 2.6.17.14 (clarke at mccoy.oxsemi.com.asic.oxsemi.com) (gcc
version 4.1.0) #1 PREEMPT Mon Mar 26 12:36:33 BST 2007
Προφανώς κάτι δεν έχω καταλάβει σωστά για τη διαδικασία...
Έχει κανεις καμια ιδέα?
Ευχαριστώ,
Βαγγέλης
More information about the Linux-greek-users
mailing list