Nowe posty

xx Problem ze sterownikami. (5)
2024-04-13, 21:25:16
xx Instalacja xfce4 (2)
2024-04-13, 16:20:17
xx Serie kompilacji bez instalacji dla “emerge” w Gentoo (2)
2024-04-08, 18:40:04
xx Plasma 6 w Neonie ssie trochę mniej ... (17)
2024-04-05, 10:03:46
xx Problem z Linux Lite po instalacji (3)
2024-04-03, 14:23:40
xx Jak właczyć num locka przy starcie systemu debian 12? (12)
2024-04-02, 17:43:54
xx Brak dźwieku w systemie. (5)
2024-04-02, 16:13:41
xx Dystrybucja pod HP Omen (7)
2024-03-29, 11:33:05
xx [Poradnik] Wyszukiwanie Sterowników (2)
2024-03-27, 21:08:23
xx Ile pingwinów? (1)
2024-03-27, 08:59:24

Autor Wątek: Instalacja modułu omnibook  (Przeczytany 6622 razy)

  • Gość
Instalacja modułu omnibook
« dnia: 2008-01-15, 19:17:18 »
Witam. W czasie kompilacji modułu omnibook dostaję komunikat:

root@Adam:/home/adam/omnibook-2.20070211# make
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/adam/omnibook-2.20070211 modules
make[1]: Wejście do katalogu `/usr/src/linux-headers-2.6.22-14-generic'
  CC [M]  /home/adam/omnibook-2.20070211/lcd.o
/home/adam/omnibook-2.20070211/lcd.c:37: error: unknown field ‘owner’ specified in initializer
/home/adam/omnibook-2.20070211/lcd.c:37: warning: initialization makes integer from pointer without a cast
/home/adam/omnibook-2.20070211/lcd.c:38: error: unknown field ‘get_brightness’ specified in initializer
/home/adam/omnibook-2.20070211/lcd.c:38: warning: initialization makes integer from pointer without a cast
/home/adam/omnibook-2.20070211/lcd.c:39: error: unknown field ‘update_status’ specified in initializer
/home/adam/omnibook-2.20070211/lcd.c:39: warning: initialization makes integer from pointer without a cast
/home/adam/omnibook-2.20070211/lcd.c: In function ‘omnibook_set_backlight’:
/home/adam/omnibook-2.20070211/lcd.c:58: error: invalid type argument of ‘->’
/home/adam/omnibook-2.20070211/lcd.c: In function ‘omnibook_brightness_init’:
/home/adam/omnibook-2.20070211/lcd.c:131: warning: passing argument 4 of ‘backlight_device_register’ from incompatible pointer type
make[2]: *** [/home/adam/omnibook-2.20070211/lcd.o] Błąd 1
make[1]: *** [_module_/home/adam/omnibook-2.20070211] Błąd 2
make[1]: Opuszczenie katalogu `/usr/src/linux-headers-2.6.22-14-generic'
make: *** [omnibook.ko] Błąd 2
Przy kompilacji najprostszego programu pojawiają się błędy:
/tmp/ccjxNsfI.o: In function `__static_initialization_and_destruction_0(int, int)':
adam.cpp:(.text+0x23): undefined reference to `std::ios_base::Init::Init()'
/tmp/ccjxNsfI.o: In function `__tcf_0':
adam.cpp:(.text+0x6c): undefined reference to `std::ios_base::Init::~Init()'
/tmp/ccjxNsfI.o: In function `main':
adam.cpp:(.text+0x8e): undefined reference to `std::cout'
adam.cpp:(.text+0x93): undefined reference to `std::basic_ostream >& std::operator<< >(std::basic_ostream >&, char const*)'
/tmp/ccjxNsfI.o:(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status
Program
#include 
using namespace std;
int main()
{
cout << "!!!!!!!!!";
return 0;
}
Wiecie, jak można się z tym uporać? Wiem, że trzeba zainstalować jakieś pakiety.

chmooreck

  • Gość
Instalacja modułu omnibook
« Odpowiedź #1 dnia: 2008-01-15, 19:41:36 »
Cytat: adam.chyla
/home/adam/omnibook-2.20070211/lcd.c:37: error: unknown field ‘owner’ specified in initializer
To mi wygląda na błąd w źródłach...

Cytat: adam.chyla
Przy kompilacji najprostszego programu pojawiają się błędy:
/tmp/ccjxNsfI.o: In function `__static_initialization_and_destruction_0(int, int)':
adam.cpp:(.text+0x23): undefined reference to `std::ios_base::Init::Init()'
/tmp/ccjxNsfI.o: In function `__tcf_0':
adam.cpp:(.text+0x6c): undefined reference to `std::ios_base::Init::~Init()'
/tmp/ccjxNsfI.o: In function `main':
adam.cpp:(.text+0x8e): undefined reference to `std::cout'
adam.cpp:(.text+0x93): undefined reference to `std::basic_ostream >& std::operator<< >(std::basic_ostream >&, char const*)'
/tmp/ccjxNsfI.o:(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status
Program
#include 
using namespace std;
int main()
{
cout << "!!!!!!!!!";
return 0;
}
Wiecie, jak można się z tym uporać? Wiem, że trzeba zainstalować jakieś pakiety.
Skąd ten wniosek ? ;-)

Może jeszcze podaj jak kompilujesz ten program ? nie używasz czasem gcc zamiast g++ ;-)
...to jest kod C++, a nie C

Obydwa problemy nie są ze sobą powiązane

Edit:
P.S. Nie pracuj spod root'a - taka drobna rada na przyszłość...

  • Gość
Instalacja modułu omnibook
« Odpowiedź #2 dnia: 2008-01-15, 19:57:34 »
Faktycznie używałem
gcc adam.cpp
, a kod jest C++.
Czym się różni gcc od g++?

Co  do omnibook to znalazłem paczki dla debiana:
http://packages.kirya.net/debian/pool/main/o/omnibook/

chmooreck

  • Gość
Instalacja modułu omnibook
« Odpowiedź #3 dnia: 2008-01-15, 20:30:17 »
Chociażby tym, że g++ (tzn gcc wywołany jako g++) linkuje biblioteki C++, a gcc nie :-)
Oczywiście to nie wszystko, polecam man gcc.

  • Gość
Instalacja modułu omnibook
« Odpowiedź #4 dnia: 2008-01-23, 22:20:41 »
root@Adam:/home/adam/omnibook-2.20070211# make
make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/adam/omnibook-2.20070211 modules
make[1]: Wejście do katalogu `/usr/src/linux-headers-2.6.22-14-generic'
  CC [M]  /home/adam/omnibook-2.20070211/lcd.o
/home/adam/omnibook-2.20070211/lcd.c:37: error: unknown field ‘owner’ specified in initializer
/home/adam/omnibook-2.20070211/lcd.c:37: warning: initialization makes integer from pointer without a cast
/home/adam/omnibook-2.20070211/lcd.c:38: error: unknown field ‘get_brightness’ specified in initializer
/home/adam/omnibook-2.20070211/lcd.c:38: warning: initialization makes integer from pointer without a cast
/home/adam/omnibook-2.20070211/lcd.c:39: error: unknown field ‘update_status’ specified in initializer
/home/adam/omnibook-2.20070211/lcd.c:39: warning: initialization makes integer from pointer without a cast
/home/adam/omnibook-2.20070211/lcd.c: In function ‘omnibook_set_backlight’:
/home/adam/omnibook-2.20070211/lcd.c:58: error: invalid type argument of ‘->’
/home/adam/omnibook-2.20070211/lcd.c: In function ‘omnibook_brightness_init’:
/home/adam/omnibook-2.20070211/lcd.c:131: warning: passing argument 4 of ‘backlight_device_register’ from incompatible pointer type
make[2]: *** [/home/adam/omnibook-2.20070211/lcd.o] Błąd 1
make[1]: *** [_module_/home/adam/omnibook-2.20070211] Błąd 2
make[1]: Opuszczenie katalogu `/usr/src/linux-headers-2.6.22-14-generic'
make: *** [omnibook.ko] Błąd 2
Aby zlikwidować ten błąd trzeba skompilować jądro z tymi modułami (nie sprawdzałem, czy działa):
-> Power management options
-> ACPI support
-> Sleep states
-> Processor type and features
-> Support for hot-pluggable cpus
- Jeżeli masz smp, upewnij się, że obsługa hotpluggable cpus jest włączona.

Link do forum, gdzie jest ten błąd poruszony:
http://www.linuxquestions.org/questions/linux-laptop-and-handheld-25/toshiba-a100-sk9-suspend-standby-hibernate-function-keys-495895/

  • Gość
Instalacja modułu omnibook
« Odpowiedź #5 dnia: 2008-01-25, 14:55:05 »
Chyba jednak nie działa, a wątek dotyczy innego błędu.

Znalazłem:
http://ubuntuforums.org/showthread.php?t=316358
i działa :)

chmooreck chyba miałeś rację, że ze źródłami jest coś nietak