Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Asentaminen ja käyttöönotto => Aiheen aloitti: koomikko - 21.12.06 - klo:22.59
-
Terve
Voiskohan joku vähän valaista laite asennusta ubuntussa?
Asensin kaverin Toshiba kannettavaan Dapperin, asennus sujui ongelmitta ja kaikki toimi hienosti. Nyt tarttis saada Wlan ja mahdollisesti GPRS toimimaan, eli Nokian D211 PCMCIA kortti ollut Wintoosa puolella käytössä.
Laitteelle on Linux ajuri ja asennusohje, mutta en ole ennen asentanut ulkopuolisia ohjelmia, eikä toi yleiskansallinen kieli ole hyvin hallinnassa. Voisko joku kertoa mitä asennetaan, mihin ja missä järjestyksessä, niin pääsis kokeilemaan asennusta.
Koitin ohjekirjaa suomentamalla saada hommasta jonkinlaisen käsityksen, mutta luultavasti homma ei tällä tietämyksellä onnistu.
Käyttöohje:http://koti.phnet.fi/karistom/d211_linuxguide.pdf
Ajuriohjelmisto:http://koti.phnet.fi/karistom/nokia_d211-linux-1.06.tar.gz
(http://koti.phnet.fi/karistom/nokia_d211-linux-1.06.tar.gz)
Kuvakaappaukset puretusta paketista:
http://koti.phnet.fi/karistom/Kuvakaappaus-1.png
http://koti.phnet.fi/karistom/Kuvakaappaus-2.png
http://koti.phnet.fi/karistom/Kuvakaappaus-3.png
-
No nyt olis kone paikalla ja yrittänyt laitteen ohjekirjan kanssa touhuta ja yrittänyt etsiä muita ohjeita, mutta ei meinaa onnistua. Paketin purkaminen kyllä onnistuu onnistuu, mutta siitä eteenpäin ei meinaa päästä. Onko joitain ominaisuuksia asentamatta, vai onko ymmärryksessä vikaa, kun homma ei tällä ohjeella toimi.
http://www.raja-antura.org/index.php?option=com_content&task=view&id=6976&Itemid=10
Tähän pysähtyy:
# Valmistellaan paketti configure-skriptillä
tuxu@linux$: ./configure
Löytyiskö jostain toimivampaa ohjetta?
Ubuntu tunnistaa kortin laitehallinnassa.
Perusteet vielä pahasti hukassa, mutta jospa tätä pikkuhiljaa oppis
-
Tähän pysähtyy:
# Valmistellaan paketti configure-skriptillä
tuxu@linux$: ./configure
Niin oletkos asentanut build-essential paketin ennen kääntämistä?
sudo apt-get install build-essential
-
Enpä ollut totakaan tiennyt asentaa, mutta nyt on asennettu paketinhallinnan kautta, ei auta
Olen Nokian ohjeen mukaan kopioinut ja purkanut paketin /usr/src hakemistoon, kopioinut ja nimennyt uudelleen config.mk.orig tiedoston.
tt@tt-laptop:~$ cd /usr/src/d211
tt@tt-laptop:/usr/src/d211$ ./configure
bash: ./configure: Tiedostoa tai hakemistoa ei ole
tt@tt-laptop:/usr/src/d211$
Ei ymmärrä
tt@tt-laptop:/usr/src/d211$ ls
bin config.mk.orig INSTALL LICENSE-NOKOS README ui
CHANGES.txt control LEGAL Makefile scripts
config.mk docs LICENSE-MOZILLA NAAP src
tt@tt-laptop:/usr/src/d211$
Onko homma täysin hukassa, vai kertoisko joku miten pitää edetä
-
Meneppäs kyseiseen hakemistoon
cd /usr/src/d211/
Ja katso mitä asennusohjeet sanovat:
cat INSTALL
-
Toi kiekitaito hiukka heikkoa, tällästä tarjoilee
tt@tt-laptop:/usr/src/d211$ cat INSTALL
This is the short INSTALL help file for the Linux driver of Nokia D211
multimode radio card.
Read the LICENSES before installing.
For troubleshooting, see docs/d211_linux_guide.pdf.
Required items:
-The binary part of the driver untarred on top of the source part
-Kernel sources
-System V IPC support in the kernel
-PCMCIA must be compiled and installed properly, check the documentation that
came with the PCMCIA sources
-PPP support, check the documentation in your Linux distribution
To compile and create the module:
- Rename the config.mk.orig file to config.mk
- Edit the config.mk file to match your system configuration
- type: make all; make install
- To copy the default nokia_cs script and settings,
type: make config_install. This will overwrite your previous settings,
and therefore it is recommended to be run only when installing for
the first time.
The module is now loadable. Next, the configuration
files must be edited.
/etc/pcmcia/nokia_cs.opts: This file determines the behaviour of the card
as it is initialized.
For GSM/GPRS data connection you need to setup the PPP parameters.
- Edit /etc/pcmcia/nokia_cs not to start WLAN i.e. MODE=GSM
- Enable GSM by giving your PIN code ('nokia_ctl enable_gsm') after
you have inserted the card. You have to do this every time you insert
the card or reset the phone. Enable GSM radio by giving command
'nokia_ctl gsm enableGSMradio'.
- Edit the PPP parameters according to your needs. We have included
a sample options file in the scripts directory. Change the username to
your real username in the network.
Also a sample wvdial.conf is included if you plan to use the wvdial program.
These files are not installed by default.
- Start the connection. If you use wvdial you may need to reset the phone if
some error occurs because it does not always properly stop the PPP
connection.
- Always check the corrert parameters from your network provider
For simple adhoc WLAN network, edit the nokia_cs.opts as following:
MODE=WLAN
# WLAN settings
PROFILE=WLAN_profile
NETWORK_START=yes
# WLAN profiles
[WLAN_profile]
mode=adhoc
restrictchannel=
ssid=Nokia WLAN
shared_key1=
active_key=
Then restart the pcmcia
/etc/rc.d/init.d/pcmcia restart
and it should work.
After the card has been inserted you can check the status of the card from
/proc/net/nokia_cs and from kernel log messages.
Note: If you are updating from an older version, the
make config_install command will overwrite the scripts in the
/etc/pcmcia directory and name the old ones as XXXX.old.
If you wish to to return to these, simply replace them accordingly.
tt@tt-laptop:/usr/src/d211$
-
Ohjeessa lukea tojottaa seuraavaa:
#cp config.mk.orig config.mk
Editoi ensin confik.mk sopivaksi
Sen jälkeen :
make all
make install
config.mk:n editointi voikin olla hieman kimurantimpaa.
# User Settings EDIT THESE TO MATCH YOUR CONFIGURATION!
# LINUX = /usr/src/linux # Linux is here
# OS_RELEASE=2.6.17-10 # Kernel version for module inst.
# INSTDIR=/sbin # Install tools here
# ROOTDIR=/ # Root for kernel module installation
# SMAC2=d211fw.bin # Firmware for the card
Elikkäs vaatinee asennettavaksi käytetyn kernelin headerit
Omassa tapauksessani
#apt-get install linux-headers-2.6.17-10
Tarkista mikä kerneli sinulla on käytössä esim.
#uname -r
linkitä sitten
#ln -s /usr/src/linux-headers-2.6.17-10 /usr/src/linux
-
1Laitoin conf tiedostoon käytettävän kernel version:
# User Settings EDIT THESE TO MATCH YOUR CONFIGURATION!
# LINUX = /usr/src/linux # Linux is here
# OS_RELEASE=2.4.12 # Kernel version for module inst.
# INSTDIR=/sbin # Install tools here
# ROOTDIR=/ # Root for kernel module installation
# SMAC2=d211fw.bin # Firmware for the card
LINUX = /usr/src/linux
OS_RELEASE=2.6.15-27
ROOTDIR=/
SMAC2=d211fw.bin
# Compiler Settings
CROSS_COMPILE=
LD = $(CROSS_COMPILE)ld
CC = $(CROSS_COMPILE)gcc
CPP = $(CROSS_COMPILE)g++
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
2jonka jälkeen tein linkityksen:
tt@tt-laptop:~$ cd /usr/src/d211
tt@tt-laptop:/usr/src/d211$ ln -s /usr/src/linux-headers-2.6.15-27 /usr/src/linux
/usr/src alle muodostui linux niminen linkki, kohteena /usr/src/linux-headers-2.6.15-27.
Kun katson hakemiston sisältöä tiedostoselaimella, niin näyttää tyypiksi linkki(rikki)
tt@tt-laptop:/usr/src$ ls
d211 linux nokia_d211-linux-1.06.tar.gz
3make all tulostaa:
tt@tt-laptop:/usr/src/d211$ make all
set -e; for d in src ui control; do make -C $d ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211/src"
gcc -O2 -Wall -Wstrict-prototypes -fomit-frame-pointer -pipe -D__KERNEL__ -DMODULE -I../include -I/usr/src/linux/include -c dllc.c
In file included from /usr/include/linux/sched.h:16,
from /usr/include/linux/module.h:9,
from nokia_info.h:41,
from dllc.c:29:
/usr/include/linux/signal.h:2:2: warning: #warning "You should include <signal.h>. This time I will do it for you."
In file included from /usr/include/linux/resource.h:4,
from /usr/include/linux/sched.h:79,
from /usr/include/linux/module.h:9,
from nokia_info.h:41,
from dllc.c:29:
/usr/include/linux/time.h:9: error: redefinition of ‘struct timespec’
/usr/include/linux/time.h:15: error: redefinition of ‘struct timeval’
/usr/include/linux/time.h:20: error: redefinition of ‘struct timezone’
/usr/include/linux/time.h:47: error: redefinition of ‘struct itimerval’
In file included from nokia_info.h:41,
from dllc.c:29:
/usr/include/linux/module.h:41: error: field ‘attr’ has incomplete type
/usr/include/linux/module.h:49: error: field ‘kobj’ has incomplete type
In file included from dllc.c:29:
nokia_info.h:48:25: error: linux/delay.h: Tiedostoa tai hakemistoa ei ole
In file included from /usr/include/asm-i386/hardirq.h:5,
from /usr/include/asm/hardirq.h:11,
from /usr/include/linux/interrupt.h:9,
from nokia_info.h:51,
from dllc.c:29:
/usr/include/linux/irq.h:17:27: error: linux/cpumask.h: Tiedostoa tai hakemistoa ei ole
In file included from /usr/include/asm/irq.h:11,
from /usr/include/linux/irq.h:19,
from /usr/include/asm-i386/hardirq.h:5,
from /usr/include/asm/hardirq.h:11,
from /usr/include/linux/interrupt.h:9,
from nokia_info.h:51,
from dllc.c:29:
/usr/include/asm-i386/irq.h:15:25: error: irq_vectors.h: Tiedostoa tai hakemistoa ei ole
/usr/include/asm-i386/irq.h:16:29: error: asm/thread_info.h: Tiedostoa tai hakemistoa ei ole
In file included from /usr/include/asm-i386/hardirq.h:5,
from /usr/include/asm/hardirq.h:11,
from /usr/include/linux/interrupt.h:9,
from nokia_info.h:51,
from dllc.c:29:
/usr/include/linux/irq.h:47: error: syntax error before ‘cpumask_t’
/usr/include/linux/irq.h:67: error: syntax error before ‘spinlock_t’
/usr/include/linux/irq.h:68: error: ‘CONFIG_X86_L1_CACHE_SHIFT’ undeclared here (not in a function)
/usr/include/linux/irq.h:68: error: requested alignment is not a constant
/usr/include/linux/irq.h:70: error: syntax error before ‘irq_desc’
/usr/include/linux/irq.h:70: error: ‘NR_IRQS’ undeclared here (not in a function)
In file included from /usr/include/asm/hw_irq.h:11,
from /usr/include/linux/irq.h:72,
from /usr/include/asm-i386/hardirq.h:5,
from /usr/include/asm/hardirq.h:11,
from /usr/include/linux/interrupt.h:9,
from nokia_info.h:51,
from dllc.c:29:
/usr/include/asm-i386/hw_irq.h:15:27: error: linux/profile.h: Tiedostoa tai hakemistoa ei ole
/usr/include/asm-i386/hw_irq.h:18:26: error: asm/sections.h: Tiedostoa tai hakemistoa ei ole
In file included from /usr/include/asm/hw_irq.h:11,
from /usr/include/linux/irq.h:72,
from /usr/include/asm-i386/hardirq.h:5,
from /usr/include/asm/hardirq.h:11,
from /usr/include/linux/interrupt.h:9,
from nokia_info.h:51,
from dllc.c:29:
/usr/include/asm-i386/hw_irq.h:27: error: ‘NR_IRQ_VECTORS’ undeclared here (not in a function)
In file included from /usr/include/asm/hardirq.h:11,
from /usr/include/linux/interrupt.h:9,
from nokia_info.h:51,
from dllc.c:29:
/usr/include/asm-i386/hardirq.h:12: error: requested alignment is not a constantIn file included from nokia_info.h:51,
from dllc.c:29:
/usr/include/linux/interrupt.h:36: error: syntax error before ‘cpumask_t’
/usr/include/linux/interrupt.h:42: error: syntax error before ‘}’ token
/usr/include/linux/interrupt.h:61: error: syntax error before ‘cli’
/usr/include/linux/interrupt.h:65: error: syntax error before ‘sti’
/usr/include/linux/interrupt.h:69: error: syntax error before ‘save_flags’
/usr/include/linux/interrupt.h: In function ‘save_flags’:
/usr/include/linux/interrupt.h:71: error: syntax error before ‘unsigned’
/usr/include/linux/interrupt.h: At top level:
/usr/include/linux/interrupt.h:74: error: syntax error before ‘restore_flags’
/usr/include/linux/interrupt.h: In function ‘restore_flags’:
/usr/include/linux/interrupt.h:76: error: syntax error before ‘unsigned’
/usr/include/linux/interrupt.h: At top level:
/usr/include/linux/interrupt.h:79: error: syntax error before ‘save_and_cli’
In file included from dllc.c:29:
nokia_info.h:55:24: error: linux/slab.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:56:26: error: linux/string.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:57:25: error: linux/timer.h: Tiedostoa tai hakemistoa ei ole
In file included from /usr/include/asm/io.h:11,
from nokia_info.h:62,
from dllc.c:29:
/usr/include/asm-i386/io.h:1:2: warning: #warning "You should include <sys/io.h>. This time I will do it for you."
In file included from dllc.c:29:
nokia_info.h:69:31: error: linux/etherdevice.h: Tiedostoa tai hakemistoa ei ole
In file included from nokia_info.h:70,
from dllc.c:29:
/usr/include/linux/skbuff.h:24:26: error: net/checksum.h: Tiedostoa tai hakemistoa ei ole
In file included from nokia_info.h:70,
from dllc.c:29:
/usr/include/linux/skbuff.h:115: error: syntax error before ‘spinlock_t’
/usr/include/linux/skbuff.h:140: error: variable-size type declared outside of any function
In file included from dllc.c:29:
nokia_info.h:76:28: error: pcmcia/version.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:77:29: error: pcmcia/cs_types.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:78:27: error: pcmcia/cistpl.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:79:23: error: pcmcia/cs.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:80:27: error: pcmcia/cisreg.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:81:23: error: pcmcia/ds.h: Tiedostoa tai hakemistoa ei ole
nokia_info.h:82:28: error: pcmcia/ciscode.h: Tiedostoa tai hakemistoa ei ole
In file included from nokia_info.h:89,
from dllc.c:29:
dllc.h:47: error: field ‘timer’ has incomplete type
In file included from nokia_info.h:90,
from dllc.c:29:
dserial.h:53: error: syntax error before ‘spinlock_t’
dserial.h:53: warning: no semicolon at end of struct or union
dserial.h:54: warning: type defaults to ‘int’ in declaration of ‘dser_t’
dserial.h:54: warning: data definition has no type or storage class
In file included from dllc.c:29:
nokia_info.h:107: error: syntax error before ‘dev_link_t’
nokia_info.h:107: warning: no semicolon at end of struct or union
nokia_info.h:108: warning: type defaults to ‘int’ in declaration of ‘node’
nokia_info.h:108: warning: data definition has no type or storage class
nokia_info.h:113: error: syntax error before ‘wld_wait’
nokia_info.h:113: warning: type defaults to ‘int’ in declaration of ‘wld_wait’
nokia_info.h:113: warning: data definition has no type or storage class
nokia_info.h:117: error: syntax error before ‘}’ token
nokia_info.h:117: warning: type defaults to ‘int’ in declaration of ‘nokia_cs_t’nokia_info.h:117: warning: data definition has no type or storage class
dllc.c:50: error: syntax error before ‘tx_lock’
dllc.c:50: warning: type defaults to ‘int’ in declaration of ‘tx_lock’
dllc.c:50: error: ‘SPIN_LOCK_UNLOCKED’ undeclared here (not in a function)
dllc.c:50: warning: data definition has no type or storage class
dllc.c: In function ‘dllc_new’:
dllc.c:58: warning: implicit declaration of function ‘kmalloc’
dllc.c:58: error: ‘GFP_KERNEL’ undeclared (first use in this function)
dllc.c:58: error: (Each undeclared identifier is reported only once
dllc.c:58: error: for each function it appears in.)
dllc.c:58: warning: assignment makes pointer from integer without a cast
dllc.c:60: warning: implicit declaration of function ‘memset’
dllc.c:60: warning: incompatible implicit declaration of built-in function ‘memset’
dllc.c:68: warning: implicit declaration of function ‘init_timer’
dllc.c:76: error: invalid application of ‘sizeof’ to incomplete type ‘device_t’
dllc.c:76: warning: assignment makes pointer from integer without a cast
dllc.c:78: error: invalid application of ‘sizeof’ to incomplete type ‘device_t’
dllc.c:82: error: dereferencing pointer to incomplete type
dllc.c:85: error: dereferencing pointer to incomplete type
dllc.c:86: error: dereferencing pointer to incomplete type
dllc.c:87: error: dereferencing pointer to incomplete type
dllc.c:88: error: dereferencing pointer to incomplete type
dllc.c:89: error: dereferencing pointer to incomplete type
dllc.c:90: error: dereferencing pointer to incomplete type
dllc.c:91: error: dereferencing pointer to incomplete type
dllc.c: In function ‘dllc_register’:
dllc.c:107: warning: implicit declaration of function ‘ether_setup’
dllc.c:109: warning: implicit declaration of function ‘register_netdev’
dllc.c: In function ‘dllc_delete’:
dllc.c:125: warning: implicit declaration of function ‘del_timer_sync’
dllc.c:128: error: invalid application of ‘sizeof’ to incomplete type ‘device_t’
dllc.c: In function ‘dllc_unregister’:
dllc.c:138: warning: implicit declaration of function ‘unregister_netdev’
dllc.c: In function ‘dllc_devopen’:
dllc.c:155: warning: implicit declaration of function ‘netif_start_queue’
dllc.c: At top level:
dllc.c:162: error: syntax error before ‘stop_queue’
dllc.c:162: warning: type defaults to ‘int’ in declaration of ‘stop_queue’
dllc.c:162: warning: data definition has no type or storage class
dllc.c: In function ‘dllc_devstop’:
dllc.c:169: warning: implicit declaration of function ‘netif_stop_queue’
dllc.c:173: warning: implicit declaration of function ‘wake_up_interruptible’
dllc.c: In function ‘dllc_devhard_start_xmit’:
dllc.c:189: error: dereferencing pointer to incomplete type
dllc.c:196: warning: implicit declaration of function ‘netif_running’
dllc.c:199: warning: implicit declaration of function ‘spin_lock_bh’
dllc.c:201: error: dereferencing pointer to incomplete type
dllc.c:214: warning: implicit declaration of function ‘dev_kfree_skb’
dllc.c:230: warning: implicit declaration of function ‘mod_timer’
dllc.c:234: warning: implicit declaration of function ‘spin_unlock_bh’
dllc.c: In function ‘dllc_timer’:
dllc.c:268: warning: implicit declaration of function ‘netif_wake_queue’
dllc.c: In function ‘dllc_devgetstats’:
dllc.c:344: error: dereferencing pointer to incomplete type
dllc.c: In function ‘dllc_devset_multicast_list’:
dllc.c:368: error: dereferencing pointer to incomplete type
dllc.c:369: error: dereferencing pointer to incomplete type
dllc.c:375: error: dereferencing pointer to incomplete type
dllc.c:379: error: dereferencing pointer to incomplete type
dllc.c:379: error: dereferencing pointer to incomplete type
dllc.c:385: error: dereferencing pointer to incomplete type
dllc.c:388: error: dereferencing pointer to incomplete type
dllc.c:390: warning: implicit declaration of function ‘memcpy’
dllc.c:390: warning: incompatible implicit declaration of built-in function ‘memcpy’
dllc.c:390: error: dereferencing pointer to incomplete type
dllc.c:391: error: dereferencing pointer to incomplete type
dllc.c:394: error: dereferencing pointer to incomplete type
dllc.c:395: error: dereferencing pointer to incomplete type
dllc.c:398: error: dereferencing pointer to incomplete type
dllc.c: In function ‘dllc_rxframe’:
dllc.c:431: warning: implicit declaration of function ‘dev_alloc_skb’
dllc.c:431: warning: assignment makes pointer from integer without a cast
dllc.c:435: warning: implicit declaration of function ‘skb_reserve’
dllc.c:437: error: dereferencing pointer to incomplete type
dllc.c:443: warning: implicit declaration of function ‘skb_put’
dllc.c:445: warning: incompatible implicit declaration of built-in function ‘memcpy’
dllc.c:450: warning: implicit declaration of function ‘eth_type_trans’
dllc.c:455: warning: implicit declaration of function ‘netif_rx’
dllc.c: In function ‘dllc_get_my_mac_addr’:
dllc.c:464: warning: incompatible implicit declaration of built-in function ‘memcpy’
dllc.c:464: error: dereferencing pointer to incomplete type
dllc.c: In function ‘dllc_set_my_mac_addr’:
dllc.c:473: error: dereferencing pointer to incomplete type
dllc.c: In function ‘dllc_init_queue’:
dllc.c:530: error: ‘GFP_KERNEL’ undeclared (first use in this function)
dllc.c:530: warning: assignment makes pointer from integer without a cast
dllc.c: In function ‘dllc_close_queue’:
dllc.c:550: warning: implicit declaration of function ‘kfree’
make[1]: *** [dllc.o] Virhe 1
make[1]: Poistutaan hakemistosta "/usr/src/d211/src"
make: *** [all] Virhe 2
tt@tt-laptop:/usr/src/d211$
Keksiikö tästä mitä teen väärin, tai puuttuuko joitain kilkkeitä.
Jos viitsitte neuvoa, niin mielummin silleen, että ymmärtää tämmöinen vasta alkaja. Päätteen käyttökin melko outoa touhua vielä.
-
No ensimmäinen mikä tuossa nyt pistää silmään on tuo:
tt@tt-laptop:/usr/src/d211$ ln -s /usr/src/linux-headers-2.6.15-27 /usr/src/linux
Eli tuo tarvitsee mitä luultavimminkin sudon toimiakseen, eli siis:
sudo ln -s /usr/src/linux-headers-2.6.15-27 /usr/src/linux
Toisaalta, tuohon conffi filuunkin varmaan voisi laittaa suoraan kohtaan "LINUX = /usr/src/linux" tilalle: (??)
LINUX = /usr/src/linux-headers-2.6.15-27
Toinen mikä tuossa konffi filussa pikkusen mietityttää on tuo kohta:
# ROOTDIR=/ # Root for kernel module installation
Eli mitähän tuossa nyt tarkalleen haetaan.. ? Kuuluisikohan siihen laittaa "ROOTDIR=/lib/modules" vai mitä hemmettiä tuo haluaa.. (??!)
Jos viitsitte neuvoa, niin mielummin silleen, että ymmärtää tämmöinen vasta alkaja. Päätteen käyttökin melko outoa touhua vielä.
Täytyy myöntää että melko mielenkiintoisen projektin olet valinnut itsellesi.. :) Varsinkin jos olet vasta-alkaja..
Noh, kokeile eri vaihtoehtoja, kokeile mitä google tarjoaa.. en oikein tähän hätään osaa parempiakaan neuvoja antaa.. :-\
-
Samallaisen linkin tekee sudona ja ilman, kokeilin muutkin noista vaihtoehdoista, ei skulaa.
Mitäköhän meinaa, kun tässä Slackware ohjeessa paketti puretaan /usr/local/src hakemistoon?
http://tuxmobil.org/nokia_d211.html
-
1.06
- Changed kernel module location to /lib/modules/<KERNEL_VERSION>/kernel/drivers/net/pcmcia if the directory exists
Eli kokeiles vaihtaa siihen konffi filuun:
ROOTDIR=/lib/modules/2.6.15-27/kernel/drivers/net/pcmcia
(Ja tarkista vielä että tuo hakemisto varmasti löytyy koneeltasi!)
Kokeiles ennen kääntämistä antaa seuraava komento:
make config_install
Mitäköhän meinaa, kun tässä Slackware ohjeessa paketti puretaan /usr/local/src hakemistoon?
Eipä tuolla nyt mitään merkitystä pitäisi olla..
-
Google-jelppaa
Nuo nokian puolivillaiset ajurit kelpaavat vain 2.4 sarjan kernelille. Joku taitava sielu on kuitenkin saanu tehtyä uudet ajurit.
http://sourceforge.net/projects/d211
Mitään hajua ei ole ylläolevan projektin toimivuudesta. Asennus näyttäisi menevän kutakuinkin samalla lailla kuin noilla nokian alkuperäisillä ajureilla.
Tietolähde:
http://www.tablix.org/~avian/blog/archives/cat_3/index-page2.html
Google hakusana:
nokia d211 2.6 kernel
-
Juu taidatpa muuten olla oikeassa:
http://discussion.forum.nokia.com/forum/archive/index.php/t-81833.html
Jännä että en löytänyt tuosta itse ajuripaketin mukana tulleista ohjeista mitään mainintaa asiasta.. (Tai sitten olen vain sokea?) Noh, tässä sen taas näkee miten hienosti Nokia tukee Linuxia.. :(
-
Nyt pitäis olla toi älykkäämpi ajuri harjoittelu välineenä
1.config. mk:
# User Settings EDIT THESE TO MATCH YOUR CONFIGURATION!
# LINUX = /usr/src/linux # Linux is here
# OS_RELEASE=2.4.12 # Kernel version for module inst.
# INSTDIR=/sbin # Install tools here
# ROOTDIR=/ # Root for kernel module installation
# SMAC2=d211fw.bin # Firmware for the card
LINUX = /usr/src/linux-headers-2.6.15-27-386
OS_RELEASE=2.6.15-27-386
ROOTDIR=/lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia
SMAC2=d211fw.bin
# Compiler Settings
CROSS_COMPILE=
LD = $(CROSS_COMPILE)ld
CC = $(CROSS_COMPILE)gcc
CPP = $(CROSS_COMPILE)g++
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
2.config.mk:
LINUX = /usr/src/linux
OS_RELEASE=2.6.15-27-386
ROOTDIR=/lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia
SMAC2=d211fw.bin
+
tt@tt-laptop:/usr/src/d211_2_6$ sudo ln -s /usr/src/linux-headers-2.6.15-27-386 /usr/src/linux
linkki(rikki) muodostui samallainen, kun ennenkin
molemmilla vaihtoehdoilla kokeillut
tt@tt-laptop:/usr/src/d211_2_6$ make config_install
set -e; for d in scripts; do make -C $d install ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/scripts"
if [ -r /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/nokia_cs.conf ] ; then cp -f /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/nokia_cs.conf /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/nokia_cs.conf.old ; fi ;
if [ -r /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/nokia_cs.opts ] ; then cp -f /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/nokia_cs.opts /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/nokia_cs.opts.old ; fi ;
cp -f nokia_cs.conf /lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/
cp: target "/lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/" is not a directory: Tiedostoa tai hakemistoa ei ole
make[1]: *** [install] Virhe 1
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/scripts"
make: *** [config_install] Virhe 2
Jokohan pitää heittää Nokialaiset seinään, vai vieläkö tähän löytyy lääkettä?
-
cp: target "/lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia/etc/pcmcia/" is not a directory: Tiedostoa tai hakemistoa ei ole
Yrittääpi kopioida hakemistoon jota ei ole olemassakaan. Hmmhmm.. kuuluisikohan tuon scriptin sitten tehdä tuollainen hakemisto mutta siihen ei ole oikeuksia? Koklaapa vaikka sudolla josko lähtis..
sudo make config_install
-
Toi anto saman tulosteen
Hakemiston oikeudet laitoin jo alussa kaikille vapaiksi, varmistaakseni ettei niistä tule ongelmia.
Alkaa vaikutta siltä, että tää homma vaatii taitoja ja tietoa huomattavasti enemmän, kun mitä multa löytyy. Ehkä tässä vielä jotain oppii aikaa myöten, mutta tämä projekti tuntuu nyt melko epätoivoiselle.
Kiitoksia avusta.
Jos vielä vinkkejä löytyy, niin olen valmis jatkamaan niin kauan kunnes kaveri hakee koneensa pois.
Toisena vaihtoehtona Wlan käyttöön olis Belkin usb-palikka, johon kyselin neuvoa toisessa aiheessa, ei luultavasti yhtä hankala homma, mutta eipä onnistu sekään.
Olis yksi tyytyväinen Linuxiin siirtyjä, kun sais toisen näistä Wlan-kilkkeistä toimimaan, tai sitten täytyy ehdotella uusien varusteitten hankintaa.
http://forum.ubuntu-fi.org/index.php?topic=7741.0
-
On nää wlanit hauskoja.. noh, jatekaan sitten tuolla toisessa ketjussa..
-
Noudatithan noita INSTALL ohjeita eli meniko make käsky config-tiedoston editoinnin jälkeen OK ???
Kääntäminenhän sujuisi INSTALL-ohjeen mukaan:
#make
jos menee ilman isompia erroreita niin sen jälkeen
#make install
Jos nämä onnistuivat niin tarvittavat modulit on tehty eli homma on jo aika hyvässä mallissa. Sen jälkeen pitäisi kopioida tarvittavat konffikset.
make config_install kopioi vaan tarvittavat etc-tiedostot ja näemmä skripti on vähän hölmö kun kopioi etc-tuhkat tuonne moduleiden alle. Ne voi kuitenkin yhtä hyvin kopioida käsin asennushakemistosta.
Piti oikein itte kokeilla kääntää noita 2.6 paketteja.
Komensin ensin
#make clean
Sitten joutui hieman kikkailemaan kun mandraken kerneli-viittaus on kovakoodattu käännösskriptiin
src-hakemiston Makefile:ssä on kohta
KERNEL_SRC joka piti vaihtaa osoittamaan
KERNEL_SRC = /usr/src/linux
Tämän jälkeen
#make
Modulit kääntyivät OK mutta sattuneesta syystä en pääse niitä kokeilemaan enkä viitsi tälle masiinalle heittää make install:ia.
-
Koitan illalla päästä kokeilemaan kokonaan uudelleen asennusta puhtaalle käyttikselle.
-
tt@tt-laptop:/usr/src/d211_2_6$ sudo make
set -e; for d in src ui control; do make -C $d ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/src"
make -C /usr/src/linux-2.6.3-15mdk SUBDIRS=/usr/src/d211_2_6 modules
make: Siirrytään tuntemattomaan hakemistoon
make: *** /usr/src/linux-2.6.3-15mdk: Tiedostoa tai hakemistoa ei ole. Seis.
make: Poistutaan tuntemattomasta hakemistosta
make[1]: *** [modules] Virhe 2
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/src"
make: *** [all] Virhe 2
tt@tt-laptop:/usr/src/d211_2_6$
mitä toi mdk meinaa?
tt@tt-laptop:/usr/src$ ls
d211_2_6 linux linux-headers-2.6.15-27-386
d211_2_6.zip linux-headers-2.6.15-27
LINUX = /usr/src/linux
OS_RELEASE=2.6.15-27-386
ROOTDIR=/lib/modules/2.6.15-27-386/kernel/drivers/net/pcmcia
SMAC2=d211fw.bin
Onkohan toi d211fw.bin niin kun pitäis, vai pitäiskö se olla d211_2_6fw.bin? Noi hakemistojen nimet on ainakin erilaiset tässä ja siinä Nokian alkuperäisessä paketissa.
-
linux-2.6.3-15mdk:
Niinkuin edellisessä viestissä jo vastasin on kovakoodattu src/Makefile tiedostoon muuta se alla olevaksi:
KERNEL_SRC kohta piti vaihtaa osoittamaan
KERNEL_SRC = /usr/src/linux
-
/usr/src/d211_2_6/src, makefilen sisältö:
#
# Copyright (c) Nokia 2002. All Rights Reserved.
#
# Nokia is a registered trademark of Nokia Corporation.
# Other product and company names mentioned herein may be
# trademarks or tradenames of their respective owners.
KERNEL_SRC = /usr/src/linux
INCDIRS = -I../include -I.
CFLAGS = -Wstrict-prototypes -fomit-frame-pointer -pipe -DKBUILD_MODNAME="nokia_cs"
#-Wno-cast-qual -Wno-strict-prototypes
all: modules
obj-m := nokia_cs.o
objs = dllc.o dmodule.o dtools.o dserial.o
srcs = dllc.c dmodule.c dtools.c dserial.c
hdrs = $(wildcard *.h)
$(srcs) : $(hdrs)
nokia_cs-y := dhw.o dmgr.o slip.o
nokia_cs-y += $(objs)
#nokia_cs-objs := dhw.o dmgr.o slip.o
#nokia_cs-objs += $(objs)
modules:
$(MAKE) -C $(KERNEL_SRC) SUBDIRS=$(PWD) modules
clean:
rm -f core *.o *.ko *~
# Locations ##############################################
#ALL_O := $(objs) $(L_TARGET)
# Targets ################################################
#$(objs) : $(srcs)
# $(CC) $(REALOPTS) -c $(patsubst %.o, %.c, $@)
# chmod -x $@
#nokia_cs.o : $(objs) $(L_TARGET)
# $(LD) -r -o $@ $(ALL_O)
# chmod -x $@
tt@tt-laptop:~$ cd /usr/src/d211_2_6/
tt@tt-laptop:/usr/src/d211_2_6$ sudo make
Password:
set -e; for d in src ui control; do make -C $d ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/src"
make -C /usr/src/linux SUBDIRS=/usr/src/d211_2_6 modules
make[2]: Siirrytään hakemistoon "/usr/src/linux-headers-2.6.15-27"
WARNING: Symbol version dump /usr/src/linux-headers-2.6.15-27/Module.symvers
is missing; modules will have no dependencies and modversions.
Building modules, stage 2.
MODPOST
/bin/sh: scripts/mod/modpost: Tiedostoa tai hakemistoa ei ole
make[3]: *** [__modpost] Virhe 127
make[2]: *** [modules] Virhe 2
make[2]: Poistutaan hakemistosta "/usr/src/linux-headers-2.6.15-27"
make[1]: *** [modules] Virhe 2
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/src"
make: *** [all] Virhe 2
tt@tt-laptop:/usr/src/d211_2_6$ sudo make install
set -e; for d in src ui control; do make -C $d install ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/src"
make[1]: *** Kohteen "install" tuottamiseen ei ole sääntöä. Seis.
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/src"
make: *** [install] Virhe 2
tt@tt-laptop:/usr/src/d211_2_6$
En osaa hahmottaa mikä mättää.
-
Toimithan riittävin oikeuksin käännöksen aikana eli olet komentanut vaikkapa
#sudo bash
Ennenkuin aloit kääntämään make:lla.
Pelkistetyt vaiheet käännöksessä.
1) sudo bash
2) editoi config.mk + src/Makefile sen jälkeen tee symbolinen linkki /usr/src/linux osoittaa 2.6.17-10-386 headereihin. Tarkista vielä että /usr/src/linuxin alla on tavaraa
3) make clean
4) make
5) make install
Alla on oma config.mk
LINUX = /usr/src/linux
OS_RELEASE=2.6.17-10-386
ROOTDIR=/lib/modules
SMAC2=d211fw.bin
# Compiler Settings
CROSS_COMPILE=
LD = $(CROSS_COMPILE)ld
CC = $(CROSS_COMPILE)gcc
CPP = $(CROSS_COMPILE)g++
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
-
/usr/src/d211_2_6/config.mk:
LINUX = /usr/src/linux
OS_RELEASE=2.6.15-27-386
ROOTDIR=/lib/modules
SMAC2=d211fw.bin
# Compiler Settings
CROSS_COMPILE=
LD = $(CROSS_COMPILE)ld
CC = $(CROSS_COMPILE)gcc
CPP = $(CROSS_COMPILE)g++
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
Linkki:
root@tt-laptop:/usr/src/linux# ls
arch fs lib mm usr
block include linux-headers-2.6.15-27-386 net
cluster init linux-headers-2.6.17-10-386 scripts
crypto ipc linux-headers.revision security
drivers kernel Makefile sound
root@tt-laptop:/usr/src/linux#
Linkin kohde:
/usr/src/linux-headers-2.6.15-27-386
Haittaako toi linkki 2.6.17-10 tuolla hakemistossa?
tt@tt-laptop:~$ sudo bash
root@tt-laptop:~# ln -s /usr/src/linux-headers-2.6.17-10-386 /usr/src/linux
root@tt-laptop:~# cd /usr/src/d211_2_6/
root@tt-laptop:/usr/src/d211_2_6# make clean
set -e;
for d in src ui control; do make -C $d clean ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/src"
rm -f core *.o *.ko *~
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/src"
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/ui"
make[1]: Kohteelle "clean" ei tarvitse tehdä mitään.
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/ui"
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/control"
make[1]: Kohteelle "clean" ei tarvitse tehdä mitään.
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/control"
rm -f *~
root@tt-laptop:/usr/src/d211_2_6# make
set -e; for d in src ui control; do make -C $d ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/src"
make -C /usr/src/linux SUBDIRS=/usr/src/d211_2_6 modules
make[2]: Siirrytään hakemistoon "/usr/src/linux-headers-2.6.15-27"
WARNING: Symbol version dump /usr/src/linux-headers-2.6.15-27/Module.symvers
is missing; modules will have no dependencies and modversions.
Building modules, stage 2.
MODPOST
/bin/sh: scripts/mod/modpost: Tiedostoa tai hakemistoa ei ole
make[3]: *** [__modpost] Virhe 127
make[2]: *** [modules] Virhe 2
make[2]: Poistutaan hakemistosta "/usr/src/linux-headers-2.6.15-27"
make[1]: *** [modules] Virhe 2
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/src"
make: *** [all] Virhe 2
root@tt-laptop:/usr/src/d211_2_6# make install
set -e; for d in src ui control; do make -C $d install ; done
make[1]: Siirrytään hakemistoon "/usr/src/d211_2_6/src"
make[1]: *** Kohteen "install" tuottamiseen ei ole sääntöä. Seis.
make[1]: Poistutaan hakemistosta "/usr/src/d211_2_6/src"
make: *** [install] Virhe 2
Pystyykö tämän asennuksen osia siivoamaan helposti, jos vaikka kokeilis alkaa alusta?
-
Jotenkaan meikäläisen jakeluun ei nyt oikeen mee se miksei se löydä noita: ?
WARNING: Symbol version dump /usr/src/linux-headers-2.6.15-27/Module.symvers
is missing; modules will have no dependencies and modversions.
/bin/sh: scripts/mod/modpost: Tiedostoa tai hakemistoa ei ole
Ja onhan linux-headers paketti varmasti asennettu? on varmaan koska tuo /usr/src/linux-headers-XXX hakemisto kuitenkin löytyy.. merkillistä..
-
Ei tule enää mieleen kuin tämä.
Itse poistaisin headerit ja varmistaisin vielä että kyseiset tiedostot on varmasti poissa. Sinulla näytti olevan header hakemistosssa omituisia hakemistoja:
(esim. linux-headers-2.6.15-27-386 linux-headers-2.6.17-10-386 linux-headers.revision )
Poisto:
#sudo bash
#rm -rRf /usr/src/linux
#apt-get --purge remove linux-headers-2.6.15-27-386
#apt-get --purge remove linux-headers-2.6.17-10-386
Mene vielä /usr/src hakemistoon ja tarkista että header-hakemistot ovat hävinneet.
Sitten asenna uudelleen oikeat headerit esim.
#apt-get install linux-headers-2.6.15-27-386
Sitten symbolinen linkki kuntoon
#ln -s /usr/src/linux-headers-2.6.15-27-386 /usr/src/linux
ja eiko kääntämään...
Tämän jälkeen en enää uskalla antaa neuvoja :) Omituista että minulla kääntyi tällä koneella modulit OK.
-
Täytyy koittaa siivota pöytä puhtaaksi ja aloittaa alusta, jos konetta ei vielä tartte luovuttaa pois, taikka sitten pitää palata aiheeseen myöhemmin.
Kiitoksia tässä vaiheessa avusta.
Jos pääsen hommaa vielä jatkamaan, niin viesti ketju jatkuu, toivottavasti niin, että seuraavaksi voisin ilmoittaa asennuksen onnistuneen ja laitteen toimivan.
-
Ei ikävä kyllä onnistu toi D211 ajurit 2.6 kerneliin
-
Tämä on kai tehty uudemmille kerneleille
http://sourceforge.net/projects/d211
En päässyt enää tällä kertaa yrittämään enempää, kun piti kaverin kone luovuttaa pois.
Ootko touhunnut samaisen laitteen kanssa?
-
Jos haluat vielä omalla koneellas treenata ton asentamista niin voithan vielä kokeilla kääntää noita moduleita. Et siis asenna vaan ainoastaan käännät ne:
make
Jos kääntäminen menee läpi ilman virheilmoituksia niin asentamisenkin pitäisi kaiken järjen mukaan onnistua sen jälkeen. Mut toi kääntäminen ei vielä asenna koneellesi mitään. Eli et voi saada konettasi sekaisin sillä..
-
Tämä on kai tehty uudemmille kerneleille
http://sourceforge.net/projects/d211
En päässyt enää tällä kertaa yrittämään enempää, kun piti kaverin kone luovuttaa pois.
Ootko touhunnut samaisen laitteen kanssa?
Mielenkiintoista.. Joo mäkin touhuilen sen kans. tutkin vähän ja palaan asiaan muutaman päivän päästä
-
No niin... Nokian jakamat ajurit on siis tehty 2.4 kernelille ja jakelu on osittain binäärijakelu. Tuo sourceforgessa oleva 2.6 projekti näyttäisi muuttavan sourcejakeluna olevaa osaa 2.6 yhteensopivaksi (en ole kernel-asiantuntija), toivottavasti binäärijakeluna olevassa osassa ei ole kiinteitä dependenssejä
Mutta tuo sun löytämäs buildiongelma ei varsinaisesti liity kernelin 2.4 -> 2.6 muutoksiin vaan jostain syystä tämä kernelin modulibuildi näyttäis olevan rikki.
Ja niin, pitää olla myös linux kernel sorsat konella.
Tämä D211 moduli (d211_2_6/src:ssa) buildataan kernelin makefileillä ja kontekstissa mutta tuossa buildauksessa on ainakin seuraavia ongelmia kun kerneliä ei oo buildattu:
- .config yms tiedostoja puuttuu /usr/src/kernel:istä kun sitä ei oo koskaan buildattu -- häkkäsin ne vaan kopioimalla kernel-headersin kernel-sourcen päälle.
- Osa tarvittavista h-fileistä on hakemistossa /usr/src/linux/include/asm/mach-default mutta ei oikein kätevästi pysty välittämään tuota -I$(LINUX_SRC)/include/asm/mach-default tuonne kernelin makefilelle -- tarvii kikkailla jotenkin, häkkäsin sen nyt vaan kernelin Makefile:een LINUXINCLUDE:een
- sitten tuo mihin säkin törmäsit: kernelin buildausjärjestelmä ei jostain syystä osaa tehdä tuota scripts/mod/modpost executablea. SIellä scripts/mod hakemistossa on Makefile joka näyttäis olevan tarkoitettu ajettavaksi jonkun ylemmän Makefilen ohjauksessa mutta mikään scripts hakemiston Makefileistä ei riipu scrpits/mod/modpost:ista eikä scripts/mod hakemistolle ole build rulea.
Eli summarynä, onko kellään havaintoa miten tuon mod/modpost buildaantuu? Etenkin T.M oletko saanut tämän joskus tehtyä?
No joo, tää on kyllä tähän väär foorumi. Tarviipa kysäistä ohjelmointipuoleltakin
-
No niin...
häkkäilin kernelin Makefileen säännöt jotta se buildaa tuon puuuttuvan modpostin ja nyt näytti buildaavan loppuun asti tuon src/nokia_cs.ko kernelmokkulan.
Tässä patch jos kiinnostusta riittää# cd /usr/src/linux-source-2.6.15
# patch -p0 <<\!
*** Makefile 2006-05-18 17:41:55.000000000 +0300
--- Makefile.jty 2007-01-19 09:20:16.000000000 +0200
***************
*** 351,356 ****
--- 351,357 ----
# Use LINUXINCLUDE when you must reference the include/ directory.
# Needed to be compatible with the O= option
LINUXINCLUDE := -Iinclude \
+ -I/usr/src/linux/include/asm/mach-default \
$(if $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include) \
-include include/linux/autoconf.h
***************
*** 391,396 ****
--- 392,406 ----
# To avoid any implicit rule to kick in, define an empty command.
scripts/basic/%: scripts_basic ;
+ #jty
+ # Anoyther helper built in scripts/
+ .PHONY: scripts_mod
+ scripts_mod:
+ $(Q)$(MAKE) $(build)=scripts/mod
+
+ # To avoid any implicit rule to kick in, define an empty command.
+ scripts/mod/%: scripts_mod ;
+
.PHONY: outputmakefile
# outputmakefile generate a Makefile to be placed in output directory, if
# using a seperate output directory. This allows convinient use
***************
*** 453,459 ****
include $(srctree)/arch/$(ARCH)/Makefile
export KBUILD_DEFCONFIG
! config %config: scripts_basic outputmakefile FORCE
$(Q)mkdir -p include/linux
$(Q)$(MAKE) $(build)=scripts/kconfig $@
--- 463,469 ----
include $(srctree)/arch/$(ARCH)/Makefile
export KBUILD_DEFCONFIG
! config %config: scripts_basic scripts_mod outputmakefile FORCE
$(Q)mkdir -p include/linux
$(Q)$(MAKE) $(build)=scripts/kconfig $@
***************
*** 467,477 ****
# Carefully list dependencies so we do not try to build scripts twice
# in parrallel
.PHONY: scripts
! scripts: scripts_basic include/config/MARKER
$(Q)$(MAKE) $(build)=$(@)
scripts_basic: include/linux/autoconf.h
!
# Objects we will link into vmlinux / subdirs we need to visit
init-y := init/
drivers-y := drivers/ sound/ cluster/
--- 477,487 ----
# Carefully list dependencies so we do not try to build scripts twice
# in parrallel
.PHONY: scripts
! scripts: scripts_basic scripts_mod include/config/MARKER
$(Q)$(MAKE) $(build)=$(@)
scripts_basic: include/linux/autoconf.h
!
# Objects we will link into vmlinux / subdirs we need to visit
init-y := init/
drivers-y := drivers/ sound/ cluster/
***************
*** 990,997 ****
--- 1000,1010 ----
# Directories & files removed with 'make mrproper'
MRPROPER_DIRS += include/config include2
+
+ #jty elfconfig.h to be removed
MRPROPER_FILES += .config .config.old include/asm .version \
include/linux/autoconf.h include/linux/version.h \
+ scripts/mod/eflconfig.h \
Module.symvers tags TAGS cscope*
# clean - Delete most, but leave enough to build external modules
!
Mutta perskeles kun tästä paketista näyttäis olevan riisuttu kaikki muut tuon d211 tarvitsemat (usermode) roippeet... tukimukset jatkuvat...
-
Eli summarynä, onko kellään havaintoa miten tuon mod/modpost buildaantuu? Etenkin T.M oletko saanut tämän joskus tehtyä?
En noin syvällistä tutkimusta tehnyt eli kokeilin vaan että buildaantui ilman virheilmoituksia make:lla. Niin ja ihan vaan uteliaisuuttani kokeilin eli minulla ei ole kyseistä korttia käytössä, aikonaan oli harkinnassa ostaa moinen vekotin joten siitä uteliaisuus:
Alla on käännös eli ilmeisesti tuo ei kuitenkaan tee mitään :) No olisi pitäny tutkia tarkemmin:
joku@laatu:~/roska/nokia/d211_2_6# make
set -e; for d in src ui control; do make -C $d ; done
make[1]: Entering directory `/home/joku/roska/nokia/d211_2_6/src'
make -C /usr/src/linux SUBDIRS=/home/joku/roska/nokia/d211_2_6 modules
make[2]: Entering directory `/usr/src/linux-headers-2.6.17-10-386'
Building modules, stage 2.
MODPOST
make[2]: Leaving directory `/usr/src/linux-headers-2.6.17-10-386'
make[1]: Leaving directory `/home/joku/roska/nokia/d211_2_6/src'
make[1]: Entering directory `/home/joku/roska/nokia/d211_2_6/ui'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/joku/roska/nokia/d211_2_6/ui'
make[1]: Entering directory `/home/joku/roska/nokia/d211_2_6/control'
make[1]: `all' is up to date.
make[1]: Leaving directory `/home/joku/roska/nokia/d211_2_6/control'
-
Eli summarynä, onko kellään havaintoa miten tuon mod/modpost buildaantuu? Etenkin T.M oletko saanut tämän joskus tehtyä?
En noin syvällistä tutkimusta tehnyt eli kokeilin vaan että buildaantui ilman virheilmoituksia make:lla. Niin ja ihan vaan uteliaisuuttani kokeilin eli minulla ei ole kyseistä korttia käytössä, aikonaan oli harkinnassa ostaa moinen vekotin joten siitä uteliaisuus:
Alla on käännös eli ilmeisesti tuo ei kuitenkaan tee mitään :) No olisi pitäny tutkia tarkemmin:
joku@laatu:~/roska/nokia/d211_2_6# make
set -e; for d in src ui control; do make -C $d ; done
make[1]: Entering directory `/home/joku/roska/nokia/d211_2_6/src'
make -C /usr/src/linux SUBDIRS=/home/joku/roska/nokia/d211_2_6 modules
make[2]: Entering directory `/usr/src/linux-headers-2.6.17-10-386'
Building modules, stage 2.
MODPOST
make[2]: Leaving directory `/usr/src/linux-headers-2.6.17-10-386'
make[1]: Leaving directory `/home/joku/roska/nokia/d211_2_6/src'
make[1]: Entering directory `/home/joku/roska/nokia/d211_2_6/ui'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/joku/roska/nokia/d211_2_6/ui'
make[1]: Entering directory `/home/joku/roska/nokia/d211_2_6/control'
make[1]: `all' is up to date.
make[1]: Leaving directory `/home/joku/roska/nokia/d211_2_6/control'
Sulla toi MODPOST menee läpi, ootko buildannu kernelin aiemmin kokonaan? Näin noviisin vinkkelistä näyttäis että se /usr/src/kernel*/scripts/mod/modpost buildaantuu maagisesti kernelbuildaamisen sivutuotteena (en oo vielä tutustunut tuohon kbuild-osastoon).
Mutta valitettavasti tällä ei vielä pitkälle pötki. Niinkuin Nokian dokumenteissa on niin tuo (http://europe.nokia.com/A4164022?url=http://nds1.nokia.com/phones/files/software/nokia_d211-linux-1.06-bin-gcc3.2.tar.gz) D211 binääridistro tarvii pudottaa samaan hakemistoon kuin tämä (http://nds1.nokia.com/phones/files/software/nokia_d211-linux-1.06.tar.gz) sorsadistro. Tässä d211_2_6:ssa (joka on siis sourceforgesta napattu modifioitu Nokian sorsadistro) on muutettu d211_2_6/src hakemistossa olevaa ladattavaa kernelmodulia 2.6 mukaisesti mutta Makefile on aika häkätty simppelimmäksi eikä enää toimi yhdessä Nokia d211_2_6 hakemistossa olevan Makefilen kanssa (koska siinä ei edes ole install: targettia).
Nyt kun vielä ymmärrän miten nää modulit tässä 2.6:ssa ladataan ja miten se tehtiin aiemmin niin pääsen kokeilemaan tuota nokia_cs.ko:ta. Kokonaan toinen juttu on sitten kuinka redhat 8:lle (kernel 2.4) buildatut nokian binääridistron usermoden roippeet pelaa. Kommunikointi näyttää menevän System V viestijonoilla joten olen toiveikas.
-
Sulla toi MODPOST menee läpi, ootko buildannu kernelin aiemmin kokonaan? Näin noviisin vinkkelistä näyttäis että se /usr/src/kernel*/scripts/mod/modpost buildaantuu maagisesti kernelbuildaamisen sivutuotteena (en oo vielä tutustunut tuohon kbuild-osastoon).
Ihan Edgy:n vakio kernelillä toimin eli en ole kääntänyt omaa kerneliä. Myöskään kernel-src:ia ei ole asennettu vain headerit linux-headers-2.6.17-10-386.
-
Väliaikatietoja...
Taidan heittää pyyhkeen kehään. Epäilen että tuota driveria ei ole oikeasti kukaan koskaan pannut toimimaan. Pääsin siihen asti että sain modulin käännettyä hirveiden häkkien kautta. Sain myös kaiveltua mihin po. modulit pitäää pukata että lataisi oikeasti ja mihin pcmcia kofiguraatiotiedostot pitää lykätä (mielenkiintoista kyllä pcmcia(5) sanoo että katso cardmgr(8) mutta tuo cardmgr ei näyttänyt olevan tässä ubuntussa aktiivinen joten jotain on sielläkin muuttunut.
No nyt siis oon siinä jamassa että kernel tajuaa mikä moduli pitäisi ladata kun kortin tökkää sisään mutta se failaa kun *keleen "version magic" on eri tuossa kernel-source paketissa kuin ajossa olevassa ubuntussa. Eli jostain syystä kun tossa kernel-source-2.6.15:ssa buildaa niin siihen tulee vermagiciksi "2.6.15.7-ubuntu1 SMP preempt PENTIUM4 gcc-4.0". Äh ei jaksa.
-
Hirveellä häkkäilyillä buildasin siitä p*run kernelmodulista nyt semmosien että menee kernelin modversiotarkistuksesta läpi. Sen jälkeen tarvi taas muuttaa tuota sourceforgesta ongittua koodia siten että uskon ettei kukaan ole tätä saanut ikinä toimiaan ainakaan 2.6.15 (tai uudemmalla) versiolla -- mm. eräs pcmcia kernelfunktio on poistettu jakorvattu uudella ja tämä koodi käytti vielä vanhaa.
Nyt driveri jo latas mutta kaatui omiin sisäisiin tarkistuksiinsa.
[17187134.020000] pccard: PCMCIA card inserted into slot 0
[17187134.020000] pcmcia: registering new device pcmcia0.0
[17187134.216000] D211: ----------------------------------------------------------------
[17187134.216000] D211: - Nokia D211 multimode radio card driver
[17187134.216000] D211: - Version 1.06 (Wed Apr 16 12:26:36 EEST 2003).
[17187134.216000] D211: ----------------------------------------------------------------
[17187134.220000] pcmcia: nokia_cs lacks a requisite callback function
[17187134.220000] D211: Card Inserted. Initializing...
[17187134.220000] D211_Error: SMAC version not supported by the driver. Bailing out...
[17187134.220000] D211_Error: No hw instance.
[17187134.252000] D211_Error: bd NULL
[17187134.252000] ds: unable to create instance of 'nokia_cs'!
[17187134.252000] nokia_cs: probe of 0.0 failed with error -22
[17187222.676000] pccard: card ejected from slot 0
[17187233.212000] pccard: PCMCIA card inserted into slot 0
[17187233.212000] pcmcia: registering new device pcmcia0.0
[17187233.368000] D211: Card Inserted. Initializing...
[17187233.368000] D211_Error: SMAC version not supported by the driver. Bailing out...
[17187233.368000] D211_Error: No hw instance.
[17187233.396000] D211_Error: bd NULL
[17187233.396000] ds: unable to create instance of 'nokia_cs'!
[17187233.396000] nokia_cs: probe of 0.0 failed with error -22
-
Olen aloittelija, olen asentamassa d211 ubuntulle. Ensimmäinen ongelma tuli ajuri paketin purkamisessa /usr/src kansioon, miten siis onnistun siinä (ilmeisesti pitää käyttää root oikeuksia, mutta miten). Alusta uskon selviäväni näiden avulla http://www.valtanen.com/files/d211/install_d211 (http://www.valtanen.com/files/d211/install_d211), http://www.valtanen.com/files/d211/wvdial.conf (http://www.valtanen.com/files/d211/wvdial.conf) sekä http://www.valtanen.com/files/d211/gprs (http://www.valtanen.com/files/d211/gprs). Miten "make all" , "make config install" ja "make install" tehdään? Mitä konffaamisessa pitää laittaa, kun haluan toimimaan vain suojatun wlan yhteyden? Miten tuota käytetään jos sen saa toimimaan?
-
Kuten jty tuossa jo totesikin:
uskon ettei kukaan ole tätä saanut ikinä toimiaan ainakaan 2.6.15 (tai uudemmalla) versiolla
Eli jos käytät vähänkään uudempaa Linux jakelua niin nuo ajurit eivät tule toimimaan koneessasi. Eli ne eivät siis toimi myöskään Ubuntussa.
Miten "make all" , "make config install" ja "make install" tehdään?
Kuten tuossa ketjun alussa mainitsinkin niin kääntämiseen tarvitaan paketti: build-essential
-
Kuten jty tuossa jo totesikin:
uskon ettei kukaan ole tätä saanut ikinä toimiaan ainakaan 2.6.15 (tai uudemmalla) versiolla
Eli jos käytät vähänkään uudempaa Linux jakelua niin nuo ajurit eivät tule toimimaan koneessasi. Eli ne eivät siis toimi myöskään Ubuntussa.
Itse asiassa minulla on asennettuna Ubuntusta versio 5.10, mahtaakohan se olla riittävän vanha?
Jos noita ajureita ei saa toimimaan, niin onko mahdollista ääritapauksessa vaikkapa emuloida windowsille tarkoitettuja (windowsilla ajurina toimii d211:n hallinta softa)?
-
Itse asiassa minulla on asennettuna Ubuntusta versio 5.10, mahtaakohan se olla riittävän vanha?
2.6.X kerneli taitaa olla joten ei ole tarpeeksi wanha.
Jos noita ajureita ei saa toimimaan, niin onko mahdollista ääritapauksessa vaikkapa emuloida windowsille tarkoitettuja (windowsilla ajurina toimii d211:n hallinta softa)?
Käy Googlettelemassa josko joku olisi tuon saanut Linuxissa toimimaan 2.6 kernelillä. Mutta epäilen hyvin wahvasti että ei.