[linux-ileri] Re: Kernel 2.6 - Yardim Araniyor..

---------

From: Bayram Tamer GUNES (btgunes@eso-es.net)
Date: Sun 05 Jan 2003 - 11:07:58 EST

  • Next message: Yüksel ÖZCAN: "[linux-ileri] txt dosyasi yazdirma"

    Murat Koc wrote:
    > Selam,
    >
    >
    >>>gerek yok ama tavsiye edilmiyor diye birsey sozkonusu degil.
    >>
    >>peki bu ne anlama geliyor ?
    >>
    >>Do NOT use the /usr/src/linux area! This area has a (usually
    >> incomplete) set of kernel headers that are used by the library header
    >> files. They should match the library, and not get messed up by
    >> whatever the kernel-du-jour happens to be.
    >
    >
    > Himm esasen dogru bir tanimlama evet. Su anlama geliyor.
    >
    > /usr/include/asm, /usr/include/linux, /usr/include/scsi turu dizinler
    > esasen glibc e ait dosyalari. fakat esasen bunlar
    > /usr/src/linux/include/{asm,linux,scsi} dizinleri ile senkronize
    > olmalari gerekiyor. baktiginiz zaman bu dosyalarin sizin kernel source
    > icindeki dizinlerdeki dosyalarla ayni dosyalar oldugunu goreceksiniz.
    >
    > Fakat degisen kernel versiyonlarina istinaden bu dosyalarda
    > degismektedir. Dolayisi ile esasen
    >
    > ln -s /usr/include/asm /usr/src/linux/include/asm
    > ln -s /usr/include/asm-generic /usr/src/linux/include/asm-generic
    > ln -s /usr/include/linux /usr/src/linux/include/linux
    >
    > yapilmasi gerekmektedir. Ki zaten dagitimlar bu dosyalari
    > kernel-headers veya benzeri isimlerde tutmaktalar ve boylece olasi
    > sorunlari engellemis olmaktalar.

    aslinda burayi tam anlayamadim benim sistemimde (Slack91)

    /usr/include/asm -> /usr/include/asm-i386
    /usr/include/asm-generic [yok]
    /usr/include/linux ise glibc'nin derlendigi kernel headerlari var.
    yani (linux-2.4.23 calisan) Slak91 icin

    bayram@c1-host109:~# uname -r
    2.4.23

    ve
    bayram@c1-host109:~# cat /usr/include/linux/version.h
    #define UTS_RELEASE "2.4.22"
    #define LINUX_VERSION_CODE 132118
    #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))

    daha dune kadar Slack kernel guncellemelerinde kernel-headers paketini
    de sagliyordu yani yeni kernel ile /usr/include/linux/version.h'daki
    bilgiler ayni oluyordu ama artik header'lar guncellenmiyor..

    2.4.22 -> 2.4.23 guncellemesinde header'lar gelmedi bunu sebebi ile
    ilgili de soyle bir yazi var.. (LFS-5.0)

    ......
    Why we copy the kernel headers and don't symlink them
     
     
      In the past it was common practice to symlink the /usr/include/{linux,asm}
    directories to /usr/src/linux/include/{linux,asm}. This was a bad
    practice, as the following extract from a post by Linus Torvalds to the
    Linux Kernel Mailing List points out:
     

    I would suggest that people who compile new kernels should:
     

    - not have a single symbolic link in sight (except the one that the
    kernel build itself sets up, namely the "linux/include/asm" symlink
    that is only used for the internal kernel compile itself)
     

    And yes, this is what I do. My /usr/src/linux still has the old 2.2.13
    header files, even though I haven't run a 2.2.13 kernel in a _loong_
    time. But those headers were what Glibc was compiled against, so those
    headers are what matches the library object files.
     

    And this is actually what has been the suggested environment for at
    least the last five years. I don't know why the symlink business keeps
    on living on, like a bad zombie. Pretty much every distribution still
    has that broken symlink, and people still remember that the linux
    sources should go into "/usr/src/linux" even though that hasn't been
    true in a _loong_ time.
     

    The essential part is where Linus states that the header files should be
    the ones which Glibc was compiled against. These are the headers that
    should be used when you later compile other packages, as they are the
    ones that match the object-code library files. By copying the headers,
    we ensure that they remain available if later you upgrade your kernel.
     

    Note, by the way, that it is perfectly all right to have the kernel
    sources in /usr/src/linux, **as long as you don't have the
    /usr/include/{linux,asm} symlinks.**

    (LFS-5.0)

    >
    > Benzer sekilde /lib/modules/'uname -r'/build dizinin include edilmesi
    > oncelikli olarak bu tur sorunlarin ozellikle sonradan modul derleme
    > islemleri icin asilmasini saglamaktadir.

    evte burasi tamam, mesela XFeee86 DRI..

    >
    > Ne yaptiginizi bildiginiz surece /usr/src/linux dizinini kullanmanizin
    > hicbir mahsuru yoktur.
    >
    >
    >
    >
    >
    >


  • Next message: Yüksel ÖZCAN: "[linux-ileri] txt dosyasi yazdirma"

    ---------

    Bu arsiv hypermail 2.1.6 tarafindan uretilmistir.