acerhk-source - kompilacja
: 13 maja 2008, 03:24
Pobrałem sobie z repozytorium paczkę ze źródłami modułu do obsługi klawiszy specjalnych dla Acer - acerhk-source. Próbuję ją skompilować, przeszukałem wszystko co mogłem i kończą mi się pomysły. Ale po kolei.
Kopiuję sobie tą paczkę na pulpit (dla ułatwienia działań
) i dalej:
Czyli wypakowanie idzie ok, i dalej:
I tutaj występuje problem taki że w konsoli wyskakuje nowa linia (bez znaku zachęty czy jak to się w Linuksie nazywa) i nic się nie dzieje. Przez chwilę myślałem że to kompilacja tyle trwa ale w wykazie procesów nie wykazuje mi na konsoli żadnej aktywności. Dodam że normalnie mogę wpisywać znaki z klawiatury w tej konsoli. Nie jest to więc jakiś zwis. Po naciśnięciu ctrl+c wyskakuje z powrotem do linii poleceń. Ale po kompilacji ani śladu. Jakby mi mógł ktoś krok po kroku wytłumaczyć co robię nie tak. Albo polecić jakiś dobry poradnik jak kompilować ze źródeł, tylko nie taki na zasadzie (wpisz ./configure dalej make i gra, bo takie to znalazłem w sieci bez problemu
). Załączam jeszcze źródło mojego Makefile:
Z góry dzięki za wszelkie wskazówki i odpowiedzi.
Uprzedzając pytanie, w README nie ma nic na temat kompilacji
Dopiero teraz się kapnąłem, że umieściłem tego posta nie w tym temacie, przyznaje się karnie do błędu ale na usprawiedliwienie siebie napiszę, że sugerowałem się tym:
[ Dodano: 2008-05-13, 20:56 ]
Problemem okazał się brak pakietów:
co prawda doinstalowałem jeszcze gcc 4.1 (4.2 i 4.3 miałem) ale nie wiem na ile było to pomocne. Co do powyższych pakietów natomiast jestm pewien.
Podsumowanie: Po krótkiej walce z modułem acerhk (sprawiłem aby uruchamiał się przy starcie systemu ale dalej już mi się nie chciało z nim użerać) przypadkiem znalazłem inne rozwiązanie problemu z klawiszami specjalnymi w Fujitsu-Siemens:
W KDE z menu -> ustawienia -> regionalność i dostępność -> układ klawiatury
W okienku zaznaczasz "Włącz układy klawiatury", dodatkowo musiałem przerzucić układ PL i zlikwidowałem sobie US. Pozostaje przypisać odpowiednie funkcje do poszczególnych klawiszy. Mi chodziło głównie o regulację głośności w Kmix.
Wszystkim którzy udzieli mi pomocy serdecznie dziękuję :-x
[ Dodano: 2008-05-13, 20:57 ]
Co dalej z wątkiem pozostawiam w gestii moderatora.
Kopiuję sobie tą paczkę na pulpit (dla ułatwienia działań

Kod: Zaznacz cały
# tar -xjvf acerhk.tar.bz2
modules/
modules/acerhk/
modules/acerhk/acerhk.c
modules/acerhk/debian/
modules/acerhk/debian/control.modules.in
modules/acerhk/debian/changelog
modules/acerhk/debian/copyright
modules/acerhk/debian/rules
modules/acerhk/debian/compat
modules/acerhk/debian/docs
modules/acerhk/README
modules/acerhk/acerhk.h
modules/acerhk/Makefile
modules/acerhk/doc/
modules/acerhk/doc/keycodes
modules/acerhk/doc/FAQ
modules/acerhk/doc/IOCTL
modules/acerhk/doc/md95400.def
modules/acerhk/doc/acertm.def
modules/acerhk/NEWS
darkstar:/home/thor/Desktop/acerhk# ls
acerhk.tar.bz2 modules
Kod: Zaznacz cały
darkstar:/home/thor/Desktop/acerhk# ls
acerhk.tar.bz2 modules
darkstar:/home/thor/Desktop/acerhk# cd modules
darkstar:/home/thor/Desktop/acerhk/modules# cd acerhk/
darkstar:/home/thor/Desktop/acerhk/modules/acerhk# ls
acerhk.c acerhk.h debian doc Makefile NEWS README
darkstar:/home/thor/Desktop/acerhk/modules/acerhk# make

Kod: Zaznacz cały
# change KERNELSRC to the location of your kernel build tree only if
# autodetection does not work
#KERNELSRC=/usr/src/linux
KERNELSRC?=/lib/modules/`uname -r`/build
# Starting with 2.6.18, the kernel version is in utsrelease.h instead of version.h, accomodate both cases
KERNELVERSION=$(shell awk -F\" '/REL/ {print $$2}' $(shell grep -s -l REL $(KERNELSRC)/include/linux/version.h $(KERNELSRC)/include/linux/utsrelease.h))
KERNELMAJOR=$(shell echo $(KERNELVERSION)|head -c3)
# next line is for kernel 2.6, if you integrate the driver in the kernel tree
# /usr/src/linux/drivers/acerhk - or something similar
# don't forget to add the following line to the parent dir's Makefile:
# (/usr/src/linux/drivers/Makefile)
# obj-m += acerhk/
CONFIG_ACERHK?=m
obj-$(CONFIG_ACERHK) += acerhk.o
EXTRA_CFLAGS+=-c -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe
INCLUDE=-I$(KERNELSRC)/include
ifeq ($(KERNELMAJOR), 2.6)
TARGET := acerhk.ko
else
TARGET := acerhk.o
endif
SOURCE := acerhk.c
all: $(TARGET)
help:
@echo Possible targets:
@echo -e all\\t- default target, builds kernel module
@echo -e install\\t- copies module binary to /lib/modules/$(KERNELVERSION)/extra/
@echo -e clean\\t- removes all binaries and temporary files
# this target is only for me, don't use it yourself (Olaf)
export:
sh export.sh
acerhk.ko: $(SOURCE) acerhk.h
$(MAKE) -C $(KERNELSRC) SUBDIRS=$(PWD) modules
acerhk.o: $(SOURCE) acerhk.h
$(CC) $(INCLUDE) $(CFLAGS) -DMODVERSIONS -DMODULE -D__KERNEL__ -o $(TARGET) $(SOURCE)
asm: $(SOURCE)
ifeq ($(KERNELMAJOR), 2.6)
$(CC) $(INCLUDE) $(INCLUDE)/asm-i386/mach-default $(CFLAGS) -fverbose-asm -S -DMODVERSIONS -DMODULE -D__KERNEL__ $(SOURCE)
else
$(CC) $(INCLUDE) $(CFLAGS) -fverbose-asm -S -DMODVERSIONS -DMODULE -D__KERNEL__ $(SOURCE)
endif
clean:
rm -f *~ *.o *.s *.ko .acerhk* *.mod.c
load: $(TARGET)
insmod $(TARGET)
unload:
rmmod acerhk
install: $(TARGET)
mkdir -p /lib/modules/$(KERNELVERSION)/extra
cp -v $(TARGET) /lib/modules/$(KERNELVERSION)/extra/
depmod -a
Uprzedzając pytanie, w README nie ma nic na temat kompilacji

Dopiero teraz się kapnąłem, że umieściłem tego posta nie w tym temacie, przyznaje się karnie do błędu ale na usprawiedliwienie siebie napiszę, że sugerowałem się tym:
Takie coś znajduje się w "/Lektura Obowiązkowa/Dla początkujących", a skoro jest tam mowa o sterownikach to stwierdziłem że obsługa klawiszy specjalnych podlega pod sterowniki....Instalacja sterowników
• Nvidia
• ATI zamknięte (fglrx), otwarte
• Opisz swój problem w dziale: Desktop ...

[ Dodano: 2008-05-13, 20:56 ]
Problemem okazał się brak pakietów:
Kod: Zaznacz cały
linux-headers-2.6.24-1-686
linux-source-2.6.24
Podsumowanie: Po krótkiej walce z modułem acerhk (sprawiłem aby uruchamiał się przy starcie systemu ale dalej już mi się nie chciało z nim użerać) przypadkiem znalazłem inne rozwiązanie problemu z klawiszami specjalnymi w Fujitsu-Siemens:
W KDE z menu -> ustawienia -> regionalność i dostępność -> układ klawiatury
W okienku zaznaczasz "Włącz układy klawiatury", dodatkowo musiałem przerzucić układ PL i zlikwidowałem sobie US. Pozostaje przypisać odpowiednie funkcje do poszczególnych klawiszy. Mi chodziło głównie o regulację głośności w Kmix.
Wszystkim którzy udzieli mi pomocy serdecznie dziękuję :-x
[ Dodano: 2008-05-13, 20:57 ]
Co dalej z wątkiem pozostawiam w gestii moderatora.