dasspapir Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Jeg skal kjøre make på en LCD driver på linux, men jeg får en feilmelding. Siden jeg ikke er så rå på verken linux eller c/c++ så spør jeg her. Hva er feil? Feilmeldinga ser sånn ut: (cd driver; make) make[1]: Entering directory `/usr/share/cajun/contrib/lcd/lcd/driver' gcc -DKERNEL21 -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -ffixed-8 -DMODULE -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -c lcd_module.c -o lcd.o lcd_module.c:1:13: /usr/src/linux/include/linux/modversions.h: Ingen slik fil eller filkatalog In file included from lcd_module.c:13: /usr/include/string.h:37: parse error before `?' /usr/include/string.h:55: parse error before `?' lcd_module.c: In function `init_module': lcd_module.c:585: warning: initialization from incompatible pointer type lcd_module.c:585: warning: initialization from incompatible pointer type lcd_module.c:586: warning: initialization from incompatible pointer type lcd_module.c:586: warning: initialization from incompatible pointer type make[1]: *** [lcd] Error 1 make[1]: Leaving directory `/usr/share/cajun/contrib/lcd/lcd/driver' make: *** [all] Error 2 Lenke til kommentar
t_man Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Han finner ikke /usr/src/linux/include/linux/modversions.h Kan ha noe med at du ønsker å innstalere en driver som ikke er skrevet for den kernelen du har ? Det du kan gjøre er å finne filen den ber om å legge den der "den skal være". Lykke til :smile: Lenke til kommentar
maggun Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Lurer litt på om han kun kompilerer driveren, eller om han faktisk kjører kompileringen drivere blant kildekoden til kjernens slik man skal. Kunne du fortalt oss nøyaktig hva du har gjort i forkant til kompileringen, versjoner av drivere og kernel ? Lenke til kommentar
dasspapir Skrevet 28. juni 2002 Forfatter Del Skrevet 28. juni 2002 Dette er en driver som gjør at jeg kan bruke et standard HD44780 kompatibelt LCD display på Lpt porten som en Matrix Orbital LCD (som vanligvis er på com porten). Jeg skal bruke den i forbindelse med cajun. Dette kjører jeg på en relativt strippa RedHat 7.2 (2.4.7) Utdrag fra README: Installation / compilation -------------------------- 1. choose the correct definition for Kernel 2.0.* or Kernel 2.1.* (use -DKERNEL21 for Kernel 2.2.* too). 2. edit the port address of the used parallel port in 'hardware.h' ! 3. choose the correct number of lines and columns in 'hardware,h' ! Now just type 'make' to build the module. Betyr dette at den ikke kan brukes med 2.4.* kjerna? Lenke til kommentar
dasspapir Skrevet 28. juni 2002 Forfatter Del Skrevet 28. juni 2002 Quote: Den 2002-06-28 13:25, t_man skrev:Han finner ikke /usr/src/linux/include/linux/modversions.hKan ha noe med at du ønsker å innstalere en driver som ikke er skrevet for den kernelen du har ?Det du kan gjøre er å finne filen den ber om å legge den der "den skal være".Lykke til :smile: Har prøvd å legge fila der, men får jeg denne: (cd driver; make) make[1]: Entering directory `/usr/share/cajun/contrib/lcd/lcd/driver' gcc -DKERNEL21 -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -ffixed-8 -DMODULE -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -c lcd_module.c -o lcd.o In file included from lcd_module.c:1: /usr/src/linux/include/linux/modversions.h:1:2: #error Modules should never use kernel-headers system headers, /usr/src/linux/include/linux/modversions.h:2:2: #error but rather headers from an appropriate kernel-source package. /usr/src/linux/include/linux/modversions.h:3:2: #error Change -I/usr/src/linux/include (or similar) to /usr/src/linux/include/linux/modversions.h:4:2: #error -I/lib/modules/$(uname -r)/build/include /usr/src/linux/include/linux/modversions.h:5:2: #error to build against the currently-running kernel. In file included from lcd_module.c:13: /usr/include/string.h:37: parse error before `?' /usr/include/string.h:55: parse error before `?' lcd_module.c: In function `init_module': lcd_module.c:585: warning: initialization from incompatible pointer type lcd_module.c:585: warning: initialization from incompatible pointer type lcd_module.c:586: warning: initialization from incompatible pointer type lcd_module.c:586: warning: initialization from incompatible pointer type make[1]: *** [lcd] Error 1 make[1]: Leaving directory `/usr/share/cajun/contrib/lcd/lcd/driver' make: *** [all] Error 2 Noen forslag? Lenke til kommentar
TiaZzz Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Quote: Installation / compilation--------------------------1. choose the correct definition for Kernel 2.0.* or Kernel 2.1.* (use -DKERNEL21 for Kernel 2.2.* too).2. edit the port address of the used parallel port in 'hardware.h' !3. choose the correct number of lines and columns in 'hardware,h' !Now just type 'make' to build the module.Betyr dette at den ikke kan brukes med 2.4.* kjerna? Det kan den sikkert. Men du mangler et kjernekildekodetre i /usr/src. mathiasm@marwin:/usr/src>ls -l total 22 -rw-r--r-- 1 root root 16758 Oct 5 2001 config lrwxrwxrwx 1 root src 12 Jan 24 19:10 linux -> linux-2.4.17 drwxr-xr-x 14 mathiasm mathiasm 720 Oct 18 2001 linux-2.4.10 drwxr-xr-x 14 573 573 720 Mar 19 01:45 linux-2.4.17 mathiasm@marwin:/usr/src>ls /usr/src/linux/include/linux/modversions.h /usr/src/linux/include/linux/modversions.h Lenke til kommentar
dasspapir Skrevet 28. juni 2002 Forfatter Del Skrevet 28. juni 2002 Dette blei jeg ikke mye klokere av.. Forklar? Lenke til kommentar
TiaZzz Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Quote: Den 2002-06-28 15:09, dasspapir skrev:Dette blei jeg ikke mye klokere av.. Forklar? Legg kildekoden til den kjørende kjernen din i "/usr/src/linux-2.4.X", der X er versjonsnumret. Gjør så en 'ln -s /usr/src/linux-2.4.X /usr/src/linux'. Prøv nå å kompiler. Lenke til kommentar
dasspapir Skrevet 28. juni 2002 Forfatter Del Skrevet 28. juni 2002 Får da dette når jeg kjører make: (cd driver; make) make[1]: Entering directory `/usr/share/cajun/contrib/lcd/lcd/driver' gcc -DKERNEL21 -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -ffixed-8 -DMODULE -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -c lcd_module.c -o lcd.o In file included from lcd_module.c:13: /usr/include/string.h:37: parse error before `?' /usr/include/string.h:55: parse error before `?' In file included from /usr/include/string.h:360, from lcd_module.c:13: /usr/include/bits/string2.h: In function `__strsep_g': /usr/include/bits/string2.h:1160: warning: implicit declaration of function `strpbrk' /usr/include/bits/string2.h:1160: warning: pointer/integer type mismatch in conditional expression /usr/include/bits/string2.h:1160: warning: pointer/integer type mismatch in conditional expression lcd_module.c: In function `init_module': lcd_module.c:585: warning: initialization from incompatible pointer type lcd_module.c:585: warning: initialization from incompatible pointer type lcd_module.c:586: warning: initialization from incompatible pointer type lcd_module.c:586: warning: initialization from incompatible pointer type make[1]: *** [lcd] Error 1 make[1]: Leaving directory `/usr/share/cajun/contrib/lcd/lcd/driver' make: *** [all] Error 2 Det som la seg i /usr/src når jeg installerte kjernekilden var to mapper som heter linux-2.4.7 og linux-2.4.7-10. (oppdatert: ser nå at de er linka) [ Denne Melding var redigert av: dasspapir på 2002-06-28 16:39 ] Lenke til kommentar
TiaZzz Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Quote: Den 2002-06-28 16:38, dasspapir skrev:Får da dette når jeg kjører make:(cd driver; make)make[1]: Entering directory `/usr/share/cajun/contrib/lcd/lcd/driver'gcc -DKERNEL21 -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -ffixed-8 -DMODULE -DMODVERSIONS -include /usr/src/linux/include/linux/modversions.h -c lcd_module.c -o lcd.oIn file included from lcd_module.c:13:/usr/include/string.h:37: parse error before `?'/usr/include/string.h:55: parse error before `?'In file included from /usr/include/string.h:360, from lcd_module.c:13:/usr/include/bits/string2.h: In function `__strsep_g':/usr/include/bits/string2.h:1160: warning: implicit declaration of function `strpbrk'/usr/include/bits/string2.h:1160: warning: pointer/integer type mismatch in conditional expression/usr/include/bits/string2.h:1160: warning: pointer/integer type mismatch in conditional expressionlcd_module.c: In function `init_module':lcd_module.c:585: warning: initialization from incompatible pointer typelcd_module.c:585: warning: initialization from incompatible pointer typelcd_module.c:586: warning: initialization from incompatible pointer typelcd_module.c:586: warning: initialization from incompatible pointer typemake[1]: *** [lcd] Error 1make[1]: Leaving directory `/usr/share/cajun/contrib/lcd/lcd/driver'make: *** [all] Error 2Det som la seg i /usr/src når jeg installerte kjernekilden var to mapper som heter linux-2.4.7 og linux-2.4.7-10. Er ikke denne feil: "-DKERNEL21" fra gcc? Ellers ser ikke koden bra ut. gcc rapporterer feil i koden. Lenke til kommentar
dasspapir Skrevet 28. juni 2002 Forfatter Del Skrevet 28. juni 2002 Jaja... Da får jeg granske koden og lære litt samtidig. Eller jeg får finne noe annet som duger... Lenke til kommentar
maggun Skrevet 28. juni 2002 Del Skrevet 28. juni 2002 Finn drivere som støtter din versjon av kernelen, vanligvis blir slik kode tilgjengelig ganske fort. Jeg er sikker på om du søker litt mer på nettet og njus så vil du sikkert finne ut om det er kommet, og i så fall hvor du kan hente det. Lenke til kommentar
nesquik Skrevet 30. juni 2002 Del Skrevet 30. juni 2002 Merkelig at ikke flere reagerte på at det stod om linux 2.0, 2.1 og "2.2". Uansett mangler du kernel sourcen i /usr/src/linux. Og som de andre sier: skaff en sikkelig driver som stammer fra denne siden av årtusenskiftet... (sånn ca.) ---trøtt--- Lenke til kommentar
dasspapir Skrevet 30. juni 2002 Forfatter Del Skrevet 30. juni 2002 Det virker som utviklingen av denne driveren har dødd. Alle sidene jeg har sett med denne driveren har verken hjemmeside til denne eller nyere verson enn den jeg har. Har forøvrig lagt kildekoden der den skal være. Lenke til kommentar
TiaZzz Skrevet 30. juni 2002 Del Skrevet 30. juni 2002 Quote: Den 2002-07-01 00:18, nesquik skrev:Merkelig at ikke flere reagerte på at det stod om linux 2.0, 2.1 og "2.2". Uansett mangler du kernel sourcen i /usr/src/linux. Og som de andre sier: skaff en sikkelig driver som stammer fra denne siden av årtusenskiftet... (sånn ca.)---trøtt--- 1. Jeg reagerte på det, takkskalduha. 2. Han sier han har lagt den der. 3. Siste 2.2 stammer vel fra denne siden av tusenårsskiftet. 4. Enig. google rundt litt og se om du finner den. ---me too--- Lenke til kommentar
nesquik Skrevet 1. juli 2002 Del Skrevet 1. juli 2002 Heia heia. Ting går tregt når man er trøtt ja. sjekk: nesquik@pluto:~/linux$ egrep HD44780 * -r Documentation/Configure.help:Etrax parallel LCD (HD44780) Driver Documentation/Configure.help:CONFIG_ETRAX_LCD_HD44780 Documentation/Configure.help: Adds support for a HD44780 controlled LCD connected to the parallel Med andre ord: Finn CONFIG_ETRAX_LCD_HD44780 på grafisk meny eller skru den på manuelt og du har det du trenger. Med andre ord: driveren ligger i standard kernel tarballen... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå