Uff (Povzdech) [ Was Kernel 2.4.18-17.7.x nejde prelozit s glibc-kernheaders-2.4-7.16 ]

Stanislav Meduna stano-cznews na meduna.org
Úterý Říjen 29 20:31:31 CET 2002


On Tue, 29 Oct 2002 14:25:44 +0000 (UTC), Miroslav BENES wrote:

:> A3: For starters, you should never use kernel headers directly from user
:> space programs.

: Nemel bych .. ale proc ??

O tomto boli na l-k dlhe thready a dlhe prispevky od Linusa
a Ulricha Dreppera. Ked tak si ich vyhladajte - je to
zaujimave citanie.

Ja som to pochopil takto: Userspace aplikacia je prekladana
a linkovana proti glibc. Nie proti jadru. Takze by mala
pouzivat to, co pozna glibc. A glibc pozna to, proti
comu bola kompilovana a nie to, co je prave na masine.
Takze ked uz priamo alebo nepriamo potrebujete nieco
z hlaviciek jadra, tak potrebujete tie, ktore tam boli
v case kompilacie glibc.

Co by sa stalo keby je zlozitejsia otazka. V prvom rade
by sa vam nemuselo podarit aplikaciu ani prelozit. Treba
si uvedomit, ze glibc je robena tak, aby fungovala proti
jadru 2.2 aj 2.4. Chcete naozaj pri preklade definovat,
co je prave dnes /usr/include/asm?

Jadro viac (stabilne verzie) ci menej (prechod medzi
verziami) garantuje rozhranie na urovni syscallov.
Na urovni header suborov je garancia daleko mensia,
ak vobec nejaka.

Urcite existuju aj zapeklitejsie problemy (matne si spominam
na nieco okolo lstat), ale guru na tuto oblast nie som.

:> ... or include the kernel headers
:> (or just the parts of the headers) you need directly in your source for
:> compilation. Only this way can you ensure a consistent state.

: Tuto cast jsem asi nepochopil. mohl by to nekdo rozvest ?

Ze si proste tie potrebne hlavicky strcite do svojich zdrojakov
namiesto toho, aby ste ich hladali na aktualnom systeme.

Zdravi
-- 
                                         Stano



Další informace o konferenci Linux