Custom kernel manually compile nvidia module

I have a working custom kernel.Now when i compile the standard NVIDIA....run package the compilation begins.However when i first extract the nvidia package to a source dir and try from then on to compile i get an error message saying i haven't compiled a kernel or can't find the kernel headers.
Any hint about what i could do next?

slytux wrote:
Do you have kernel headers for your custom kernel?  Check if your kernel build script has the following near the end:
# Choose what to package
pkgname=("${pkgbase}" "${pkgbase}-headers")
for _p in ${pkgname[@]}; do
eval "package_${_p}() {
_package${_p#${pkgbase}}
done
I downloaded the 3.8.2 vanilla kernel and patched it with grsecurity. The kernel install was traditional make && make modules_install ....
Are header files required when you have a full source tree btw?

Similar Messages

  • Need to compile nvidia driver for a custom kernel [SOLVED]

    I compiled a custom kernel following this wiki page: http://wiki.archlinux.org/index.php/Ker … rom_Source
    I can boot into it just fine.  I now want to compile an nvidia driver for use with it and followed the steps on this wiki page: http://wiki.archlinux.org/index.php/NVI … tom_kernel
    I run into a problem when makepkg trys to compile it.  Here is the output:
    $ cd ~/devel/abs/nvidia/
    $ makepkg -c
    ==> Making package: nvidia-my 190.42-1 x86_64 (Thu Nov 5 17:42:29 EST 2009)
    ==> Checking Runtime Dependencies...
    ==> Checking Buildtime Dependencies...
    ==> Retrieving Sources...
    -> Found NVIDIA-Linux-x86_64-190.42-pkg0.run in build dir
    ==> Validating source files with md5sums...
    NVIDIA-Linux-x86_64-190.42-pkg0.run ... Passed
    ==> Extracting Sources...
    ==> Entering fakeroot environment...
    ==> Starting build()...
    Creating directory NVIDIA-Linux-x86_64-190.42-pkg0
    Verifying archive integrity... OK
    Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 190.42..................................................................................................................................................
    If you are using a Linux 2.4 kernel, please make sure
    you either have configured kernel sources matching your
    kernel or the correct set of kernel headers installed
    on your system.
    If you are using a Linux 2.6 kernel, please make sure
    you have configured kernel sources matching your kernel
    installed on your system. If you specified a separate
    output directory using either the "KBUILD_OUTPUT" or
    the "O" KBUILD parameter, make sure to specify this
    directory with the SYSOUT environment variable or with
    the equivalent nvidia-installer command line option.
    Depending on where and how the kernel sources (or the
    kernel headers) were installed, you may need to specify
    their location with the SYSSRC environment variable or
    the equivalent nvidia-installer command line option.
    *** Unable to determine the target kernel version. ***
    make: *** [select_makefile] Error 1
    ==> ERROR: Build Failed.
    Aborting...
    The step it's choking on is (from the PKGBUILD), "make SYSSRC=/lib/modules/${_kernver}/build module || return 1"
    What am I doing wrong?
    My PKGBUILD:
    pkgname=nvidia-my
    pkgver=190.42
    _kernver='2.6.32-rc6-MINE'
    pkgrel=1
    pkgdesc="NVIDIA drivers for kernel26."
    arch=('i686' 'x86_64')
    [ "$CARCH" = "i686" ] && ARCH=x86
    [ "$CARCH" = "x86_64" ] && ARCH=x86_64
    url="http://www.nvidia.com/"
    depends=('kernel26>=2.6.31' 'kernel26<2.6.32' "nvidia-utils=${pkgver}")
    conflicts=('nvidia-96xx' 'nvidia-173xx')
    license=('custom')
    install=nvidia.install
    source=("http://download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run")
    md5sums=('f94806feee87de756d14fe3e9bcaf05a')
    [ "$CARCH" = "x86_64" ] && md5sums=('ae431ff849ec01446e6724f9fcfe3bb4')
    build() {
    cd $srcdir
    sh NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run --extract-only
    cd NVIDIA-Linux-$ARCH-${pkgver}-pkg0
    cd usr/src/nv/
    ln -s Makefile.kbuild Makefile
    make SYSSRC=/lib/modules/${_kernver}/build module || return 1
    mkdir -p $pkgdir/lib/modules/${_kernver}/kernel/drivers/video/
    install -m644 nvidia.ko $pkgdir/lib/modules/${_kernver}/kernel/drivers/video/
    sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/nvidia.install
    My nvidia.install
    post_install() {
    KERNEL_VERSION='2.6.32-rc6-MINE'
    depmod $KERNEL_VERSION
    post_upgrade() {
    post_install
    rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.'
    post_remove() {
    KERNEL_VERSION='2.6.32-rc6-MINE'
    depmod $KERNEL_VERSION
    Last edited by graysky (2009-11-07 10:54:33)

    Hello,
    I'm kind of a noob and am trying to get follow the directions from the Nvidia wiki on installing on a custom kernel.  I'm trying to use the abs method to install on kernel26rt version 2.6.33rt.  I followed directions exactly and am getting an error that I didn't find on any other posts.  Can you please take a look?  Here is my terminal:
    [jsadural@jlinux nvidia]$ makepkg -ci
    ==> Making package: nvidia-2633rt 270.30-3 (Wed Mar 30 08:53:08 PDT 2011)
    ==> Checking runtime dependencies...
    ==> Checking buildtime dependencies...
    ==> Retrieving Sources...
      -> Downloading NVIDIA-Linux-x86_64-270.30-no-compat32.run...
    --2011-03-30 08:53:08--  ftp://download.nvidia.com/XFree86/Linux … mpat32.run
               => “NVIDIA-Linux-x86_64-270.30-no-compat32.run.part”
    Resolving download.nvidia.com... 69.31.121.43
    Connecting to download.nvidia.com|69.31.121.43|:21... connected.
    Logging in as anonymous ... Logged in!
    ==> SYST ... done.    ==> PWD ... done.
    ==> TYPE I ... done.  ==> CWD (1) /XFree86/Linux-x86_64/270.30 ... done.
    ==> SIZE NVIDIA-Linux-x86_64-270.30-no-compat32.run ... 30037601
    ==> PASV ... done.    ==> RETR NVIDIA-Linux-x86_64-270.30-no-compat32.run ... done.
    Length: 30037601 (29M) (unauthoritative)
    100%[======================================>] 30,037,601   696K/s   in 42s     
    2011-03-30 08:53:50 (696 KB/s) - “NVIDIA-Linux-x86_64-270.30-no-compat32.run.part” saved [30037601]
    ==> Validating source files with md5sums...
        NVIDIA-Linux-x86_64-270.30-no-compat32.run ... Passed
    ==> Extracting Sources...
    ==> Starting build()...
    Creating directory NVIDIA-Linux-x86_64-270.30-no-compat32
    Verifying archive integrity... OK
    Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 270.30........................................................................................................................
    NVIDIA: calling KBUILD...
    test -e include/generated/autoconf.h -a -e include/config/auto.conf || (    \
        echo;                                \
        echo "  ERROR: Kernel configuration is invalid.";        \
        echo "         include/generated/autoconf.h or include/config/auto.conf are missing.";\
        echo "         Run 'make oldconfig && make prepare' on kernel src to fix it.";    \
        echo;                                \
        /bin/false)
    mkdir -p /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/.tmp_versions ; rm -f /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/.tmp_versions/*
    make -f scripts/Makefile.build obj=/home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel
      cc -Wp,-MD,/home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/.nv.o.d  -nostdinc -isystem /usr/lib/gcc/x86_64-unknown-linux-gnu/4.5.2/include -I/usr/src/linux-2.6.33-rt/arch/x86/include -Iinclude  -include include/generated/autoconf.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -m64 -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -fstack-protector -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -Wframe-larger-than=2048 -fomit-frame-pointer -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fno-dwarf2-cfi-asm -fconserve-stack -I/home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel -Wall -MD -Wsign-compare -Wno-cast-qual -Wno-error -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\"270.30\" -Wno-unused-function -mcmodel=kernel -mno-red-zone -UDEBUG -U_DEBUG -DNDEBUG  -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(nv)"  -D"KBUILD_MODNAME=KBUILD_STR(nvidia)"  -c -o /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.o /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c
    In file included from /usr/src/linux-2.6.33-rt/arch/x86/include/asm/uaccess.h:573:0,
                     from include/linux/poll.h:13,
                     from /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv-linux.h:84,
                     from /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:13:
    /usr/src/linux-2.6.33-rt/arch/x86/include/asm/uaccess_64.h: In function ‘copy_from_user’:
    /usr/src/linux-2.6.33-rt/arch/x86/include/asm/uaccess_64.h:35:6: warning: comparison between signed and unsigned integer expressions
    In file included from /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:13:0:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv-linux.h: At top level:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv-linux.h:251:35: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘nv_spinlock_t’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv-linux.h:1436:5: error: expected specifier-qualifier-list before ‘nv_spinlock_t’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c: In function ‘nv_alloc_file_private’:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:1993:5: error: implicit declaration of function ‘semaphore_init’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:1994:5: error: ‘nv_file_private_t’ has no member named ‘waitqueue’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:1995:5: error: implicit declaration of function ‘atomic_spin_lock_init’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:1995:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c: In function ‘nv_kern_poll’:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:2790:30: error: ‘nv_file_private_t’ has no member named ‘waitqueue’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:2793:5: error: implicit declaration of function ‘atomic_spin_lock_irqsave’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:2793:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:2804:5: error: implicit declaration of function ‘atomic_spin_unlock_irqrestore’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:2804:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c: In function ‘nv_kern_close_registry’:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:3595:18: error: ‘nv_file_private_t’ has no member named ‘off’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:3611:22: error: ‘nv_file_private_t’ has no member named ‘off’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c: In function ‘nv_kern_write_registry’:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:3703:51: error: ‘nv_file_private_t’ has no member named ‘off’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:3710:45: error: ‘nv_file_private_t’ has no member named ‘off’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:3720:9: error: ‘nv_file_private_t’ has no member named ‘off’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c: In function ‘nv_post_event’:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:4330:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:4347:5: error: ‘nv_file_private_t’ has no member named ‘waitqueue’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:4348:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c: In function ‘nv_get_event’:
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:4362:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:4365:9: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    /home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.c:4390:5: error: ‘nv_file_private_t’ has no member named ‘fp_lock’
    make[3]: *** [/home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel/nv.o] Error 1
    make[2]: *** [_module_/home/jsadural/devel/abs/nvidia/src/NVIDIA-Linux-x86_64-270.30-no-compat32/kernel] Error 2
    NVIDIA: left KBUILD.
    nvidia.ko failed to build!
    make[1]: *** [module] Error 1
    make: *** [module] Error 2
    ==> ERROR: A failure occurred in build().
        Aborting...
    thanks,
    jason

  • Nvidia module for custom kernel

    Hi all. I've compiled a custom kernel using abs according to the instructions on the wiki, but I'm having a hard time installing the nvidia module using the instructions on the Nvidia page of the wiki. The install always aborts complaining of not being able to find the kernel source. I do have the kernel-headers installed:
    [root@myhost greg]# pacman -Ss linux-headers
    core/linux-headers 3.1.5-1 [installed]
        Header files and scripts for building modules for linux kernel
    I've also edited the nvidia.install and PKGBUILD files to point to the correct version file:
    [greg@myhost ~]$ cat /lib/modules/3.1.5-1-test/extramodules/version
    3.1.5-1-test
    I've really searched hard, but can find no remedy. Any ideas?
    Thanks in advance.

    From what I can see, the only installable package that was built is linux-test-3.1.5-1-x86_64.pkg.tar.xz. That's with the PKGBUILD file supplied from /var/abs/core/linux as per the wiki.
    Last edited by pressman57 (2011-12-18 21:50:00)

  • Custom kernel 2.6.25 and nvidia

    I have compiled a custom kernel the 'traditional' way, that is, make and make modules_install and now I am having trouble getting the nvidia driver to work
    I usually just install it through pacman, but that doesn't work with the custom kernel.
    So my next step was to follow the wiki.
    I changed the kernel names in the PKGBUILD and nvidia.install that i got from my abs tree, and when I install with makepkg -i -c everything goes well.
    However, when I try to start X again, it crashes and says it cannot find the NVIDIA kernel module. I don't fully understand everything in the PKGBUILD and it is quite possible there is some other line or path that needs to be changed. Please, I am at my wit's end.
    Here are my PKGBUILD and nvidia.install
    # $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
    # Maintainer : Thomas Baechler <[email protected]>
    pkgname=nvidia-DarkTower
    pkgver=169.12
    _kernver='2.6.25-DarkTower'
    pkgrel=2
    pkgdesc="NVIDIA drivers for kernel26."
    arch=('i686' 'x86_64')
    [ "$CARCH" = "i686" ] && ARCH=x86
    [ "$CARCH" = "x86_64" ] && ARCH=x86_64
    url="http://www.nvidia.com/"
    depends=('kernel26>=2.6.24.3-4' 'kernel26<=2.6.25-0' 'nvidia-utils')
    conflicts=('nvidia-96xx' 'nvidia-71xx' 'nvidia-legacy')
    license=('custom')
    install=nvidia.install
    source=(http://us.download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run)
    md5sums=('e7aaca79c846e34cfe8111040bfee2d0')
    [ "$CARCH" = "x86_64" ] && md5sums=('843a1e8bc1923ba2e4b60f6fab31ad3b')
    build()
    # Extract
    cd $startdir/src/
    sh NVIDIA-Linux-$ARCH-${pkgver}-pkg0.run --extract-only
    cd NVIDIA-Linux-$ARCH-${pkgver}-pkg0
    # Any extra patches are applied in here...
    cd usr/src/nv/
    ln -s Makefile.kbuild Makefile
    make SYSSRC=/lib/modules/${_kernver}/build module
    # install kernel module
    mkdir -p $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/
    install -m644 nvidia.ko $startdir/pkg/lib/modules/${_kernver}/kernel/drivers/video/
    sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/*.install
    # arg 1: the new package version
    post_install() {
    KERNEL_VERSION='2.6.25-DarkTower'
    depmod -v $KERNEL_VERSION > /dev/null 2>&1
    # arg 1: the new package version
    # arg 2: the old package version
    post_upgrade() {
    post_install $1
    rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.'
    # arg 1: the old package version
    post_remove() {
    KERNEL_VERSION='2.6.25-DarkTower'
    depmod -v $KERNEL_VERSION > /dev/null 2>&1
    op=$1
    shift
    $op $*
    Last edited by ManOnONeWheel (2008-05-07 00:41:50)

    I don't use Arch package for nvidia as script is unable to install modules on several kernels at the same time and I want to boot to X irrelevant of kernel loaded. I never had any problems with custom kernels 2.6.25 and nvidia 169 or 173
    current status:
    $ find /lib/modules/ -name nvidia.ko
    /lib/modules/2.6.25-zen0-GIGUE/kernel/drivers/video/nvidia.ko
    /lib/modules/2.6.25-zen1-preview3-FADO/kernel/drivers/video/nvidia.ko
    /lib/modules/2.6.25-zen1-SARABANDE/kernel/drivers/video/nvidia.ko
    /lib/modules/2.6.25-zen1-GAVOTTE/kernel/drivers/video/nvidia.ko
    all boots fine, none crash/freeze. Never patched 169 or 173
    Well, it looks like the 169 installer would always put nvidia.ko in the /lib/modules/2.6.24 directory, no matter if i was currentlyusing a different kernel or not so im not sure what is going on there.
    must be some quirk on your box. Have not seen this.
    Last edited by broch (2008-05-08 01:43:13)

  • Some questions b4 i try to compile my first custom kernel

    Hi all, i'm tempted to try and configure my own custom kernel but i need to ask a few questions before i try...
    http://wiki2.archlinux.org/index.php/Ke … ompilation
    the first 5 instructions on this wiki were to do this:
    # cd /usr/src
    # mv linux-2.x.x linux-2.x.x.arch
    # mv /lib/modules/linux-2.x.x /lib/modules/linux-2.x.x.arch
    # mv /boot/vmlinuz2x vmlinuz-2.x.x.arch
    # mv /boot/System.map2x System.map-2.x.x.arch
    # mv /boot/kconfig2x /boot/kconfig-2.x.x.arch
    if i just want to compile a new, seperate kernel from my current one, why would i need to do this? if i followed these 5 commands, i wont be able to boot up back into my old kernel unless i use a rescue disk to copy the files back into their original locations, not?
    also, what other steps would i have to take to ensure that i dont accidentally overwrite my old kernel? Or other things i should look out for, for a first timer

    [LONG POST]
    There are two different kinds of people : those who prefer the /usr/src way, and those who use dibble's PKGBUILD.
    To my opinion, someone who's never compiled a kernel should first try to do it the manual way. What is PKGBUILD for if you don't understand what's in ?
    pacman -R kernel26
    cd /usr/src
    wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.8.tar.bz2
    tar -xvjf ./linux-2.6.11.8.tar.bz2
    ln -s linux-2.6.11.8 linux
    cd linux
    make menuconfig # some tips below
    make && make modules_install
    # Don't do a make install
    cp arch/i386/boot/bzImage /boot/linux
    cp System.map /boot
    cp .config /boot
    nano -w /boot/grub/menu.lst
    # I assume your / is on /dev/hda2 and /boot is on the same partition
    title Arch Linux [/boot/linux]
    root (hd0,1)
    kernel /boot/linux root=/dev/hda2 ro # lapic devfs=nomount
    title Windows
    rootnoverify (hd0,2) #Windows on /dev/hda3
    makeactive
    chainloader +1
    If you use lilo :
    nano -w /etc/lilo.conf
    boot=/dev/hda
    prompt
    timeout=100 # =10 seconds
    default=linux
    image=/boot/linux
    label=linux
    read-only
    root=/dev/hda2
    #append="some options like devfs=nomount or lapic"
    other=/dev/hda3
    label=windows
    If you use lilo, DO NOT FORGET to run 'lilo' after editing /etc/lilo.conf.
    Kernel Options
    - Enabling an option generally does not hurt so if you are not sure, enable the option.
    - Compile as modules only what you do not use, for removable devices, and things you would not like to be automatically loaded ( a NIC on a laptop for example)
    - Try googling around to see what modules are needed for some of your exotic hardware if you have to.
    - Know you hardware (run lspci,lsdev, use hwd)
    To answer to what you said, a self-compiled kernel is not that much faster... However, it is surely not bloated anymore since it probes only for the hardware you actually have. Hotplug wont desperately try to load uncorrect modules for hours(and you wont have to blacklist them), and you have the options YOU chose, for example use udev as default.
    Compiling the kernel also enables to patch it for example with reiser4 support(fastest fs on earth), -ck speed improvements, -nitro patch set.
    I suggest you google around and see what patches are available, though I would not do that if you never compiled a kernel.
    To patch :
    cd /usr/src/linux
    patch -p1 < /path/to/xxx-patch.bz2
    Oh, I nearly forgot to say that if you compile the kernel yourself, binary modules provided by pacman do not work anymore. You will have to recompile them too(for example ipw2100, nvidia, etc). This is made easy with ABS.

  • Is it possible to compile NVIDIA for multiple kernels simultaneously?

    Hi all,
    First, the reference is http://wiki.archlinux.org/index.php/NVI … tom_kernel, as well as a small discussion I started at http://aur.archlinux.org/packages.php?ID=20410.
    Basically, currently the nvidia-beta (and I'm sure the rest of the nvidia scripts) use `uname -r` to obtain the current kernel name, which is then used for the rest of the PKGBUILD. Its relatively trivial to alter that to the name of whichever kernel, meaning there's no problem compiling nvidia.ko for kernel26-ice from within kernel26 itself, and to alter the name of the package so that your nvidia-beta package does not need to be over-written (you then have two nvidia.ko, each for their own kernel.
    My question is, is it possible for a single PKGBUILD to compile nvidia.ko for all kernels currently installed (probably through looking at either /lib/modules or /usr/src)? This would mean only one maintainer is needed for nvidia-beta or nvidia-17xx or whichever series, and the same PKGBUILD could be used on any system, even those with multiple kernels.
    I'm not very familiar with the limitations of PKGBUILDs, or the rules governing what they may or may not do (for example, accessing and checking the machine itself outside the fakeroot?), so this may be nonsense, if so feel free to point it out. Another idea would be for a simple bash script to create as many PKGBUILDs as required, based on the most recent nvidia-beta PKGBUILD, simply sed-replacing uname -r with the appropriate kernel names and modifying the PKG name.

    Hi,
    it's not difficult to do but I DO NOT recommend to do it (see my notes below the code).
    PKGBUILD
    pkgname=nvidia-beta
    pkgver=185.18.04
    pkgrel=1
    pkgdesc="NVIDIA beta drivers for kernel26."
    arch=('i686' 'x86_64')
    [ "$CARCH" = "i686" ] && ARCH=x86 && NV=0
    [ "$CARCH" = "x86_64" ] && ARCH=x86_64 && NV=0
    provides=(nvidia=${pkgver})
    url="http://www.nvidia.com/"
    depends=(kernel26 nvidia-utils-beta)
    conflicts=('nvidia-96xx' 'nvidia-71xx' 'nvidia-legacy')
    license=('custom')
    install=('nvidia.install')
    source=(ftp://download.nvidia.com/XFree86/Linux-$ARCH/${pkgver}/NVIDIA-Linux-$ARCH-${pkgver}-pkg${NV}.run)
    md5sums=('95b67e6f17cc54d36ae2743df76c9f6d')
    [ "$CARCH" = "x86_64" ] && md5sums=('33967a6d452c562bb8af02b0734ebf22')
    build()
    # Read list of installed kernels
    KERNELS=`ls -1 /lib/modules`
    # Extract the nvidia drivers
    cd $startdir/src/
    sh NVIDIA-Linux-${ARCH}-${pkgver}-pkg${NV}.run --extract-only
    cd NVIDIA-Linux-${ARCH}-${pkgver}-pkg${NV}
    cd usr/src/nv
    ln -s Makefile.kbuild Makefile
    # Now build modules for each kernel
    for KERNEL in $KERNELS; do
    echo "Building for ${KERNEL}"
    # Compile the module
    make SYSSRC=/lib/modules/${KERNEL}/build module || return 1
    # Install kernel module
    mkdir -p $startdir/pkg/lib/modules/${KERNEL}/kernel/drivers/video/
    install -m644 nvidia.ko $startdir/pkg/lib/modules/${KERNEL}/kernel/drivers/video/ || return 1
    # Clean
    make clean || return 1
    done;
    nvidia.install
    # arg 1: the new package version
    post_install() {
    KERNELS=`ls -1 /lib/modules`
    for KERNEL in $KERNELS; do
    depmod -v $KERNEL > /dev/null 2>&1
    done;
    # arg 1: the new package version
    # arg 2: the old package version
    post_upgrade() {
    post_install $1
    rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.'
    # arg 1: the old package version
    post_remove() {
    KERNELS=`ls -1 /lib/modules`
    for KERNEL in $KERNELS; do
    depmod -v $KERNEL > /dev/null 2>&1
    done;
    op=$1
    shift
    $op $*
    PS: I haven't test it because I don't use multiple kernels
    But be aware of possible problems. Some modifications may influence kernel functionalities, so once you compile a driver for kernel26-xyz on kernel26-zyx the module may not work on kernel26-xyz or may cause unexpected issues.
    You also should not (you possibly even won't be able to) build module for different release version (eg. build for 2.6.28 on 2.6.29) due changes in kernel headers.
    I'm also not sure if it is safe to generate module dependencies for another kernel then you are currently running.
    As you can see above, it is not problem to make such a PKGBUILD, but it also brings too many problems and it's too dangerous that it is better to stay at current model "module package for each kernel". So if you want to you may try to use this PKGBUILD, but I strictly warn everyone else that it may cause more harm then use so don't blame me if something goes wrong. You were warned .
    Last edited by ProgDan (2009-04-30 13:48:06)

  • Error: nvidia driver and custom kernel [SOLVED]

    Hello guys , I have compiled custom kernel with wiki help and abs and want to install Nvidia driver, but i got the following error when I try to compile with abs..
    ==> Obteniendo Fuentes...
    -> Se encontró NVIDIA-Linux-x86-256.35.run
    ==> Validando el archivo fuente con md5sums...
    NVIDIA-Linux-x86-256.35.run ... Aprobado
    ==> Descomprimiendo fuentes...
    ==> Iniciando build()...
    Creating directory NVIDIA-Linux-x86-256.35
    Verifying archive integrity... OK
    Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 256.35............................................................................................................................
    If you are using a Linux 2.4 kernel, please make sure
    you either have configured kernel sources matching your
    kernel or the correct set of kernel headers installed
    on your system.
    If you are using a Linux 2.6 kernel, please make sure
    you have configured kernel sources matching your kernel
    installed on your system. If you specified a separate
    output directory using either the "KBUILD_OUTPUT" or
    the "O" KBUILD parameter, make sure to specify this
    directory with the SYSOUT environment variable or with
    the equivalent nvidia-installer command line option.
    Depending on where and how the kernel sources (or the
    kernel headers) were installed, you may need to specify
    their location with the SYSSRC environment variable or
    the equivalent nvidia-installer command line option.
    *** Unable to determine the target kernel version. ***
    make: *** [select_makefile] Error 1
    Abortando...
    my nvidia.install
    post_install() {
    KERNEL_VERSION='2.6.34-pahko'
    depmod $KERNEL_VERSION
    post_upgrade() {
    post_install
    rmmod nvidia || echo 'In order to use the new nvidia module, exit Xserver and unload it manually.'
    post_remove() {
    KERNEL_VERSION='2.6.34-pahko'
    depmod $KERNEL_VERSION
    my PKGBUILD
    # $Id: PKGBUILD 83850 2010-06-23 10:39:40Z pierre $
    # Maintainer : Thomas Baechler <[email protected]>
    pkgname=nvidia-pahko
    pkgver=256.35
    _kernver='2.6.34-pahko'
    pkgrel=1
    pkgdesc="NVIDIA drivers for kernel26."
    arch=('i686' 'x86_64')
    url="http://www.nvidia.com/"
    depends=('kernel26>=2.6.34' 'kernel26<2.6.35' "nvidia-utils=${pkgver}")
    makedepends=('kernel26-headers>=2.6.34' 'kernel26-headers<2.6.35')
    conflicts=('nvidia-96xx' 'nvidia-173xx')
    license=('custom')
    install=nvidia.install
    if [ "$CARCH" = "i686" ]; then
    _arch='x86'
    _pkg="NVIDIA-Linux-${_arch}-${pkgver}"
    source=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run")
    md5sums=('f6af8917a500de28396a438f3f548c88')
    elif [ "$CARCH" = "x86_64" ]; then
    _arch='x86_64'
    _pkg="NVIDIA-Linux-${_arch}-${pkgver}-no-compat32"
    source=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run")
    md5sums=('7b5924f14a4d2326b4d916efdb7852ff')
    fi
    build() {
    cd $srcdir
    sh ${_pkg}.run --extract-only
    cd ${_pkg}/kernel
    make SYSSRC=/lib/modules/${_kernver}/build module
    package() {
    install -D -m644 $srcdir/${_pkg}/kernel/nvidia.ko \
    $pkgdir/lib/modules/${_kernver}/kernel/drivers/video/nvidia.ko
    install -d -m755 $pkgdir/etc/modprobe.d
    echo "blacklist nouveau" >> $pkgdir/etc/modprobe.d/nouveau_blacklist.conf
    sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/nvidia.install
    uname -r
    2.6.34-pahko
    anybody can help me?
    thank you and sorry about my english
    Last edited by pahko (2010-07-14 04:56:01)

    They should be in the PKGBUILD, its a split PKGBUILD currently I think.

  • Custom kernel compilation with abs..

    Been trying out custom kernel compilation with abs, since i only know the regular make menuconfig style, thought that this would be a good thing to learn.
    here is my kernel pkgbuild (showing only the part that i changed):
    # Contributor: dibblethewrecker <dibblethewrecker>
    pkgname=kernel26
    pkgver=2.6.17.13
    pkgrel=1
    pkgdesc="The Linux Kernel 2.6.x.y and modules (IDE support), built with ... patchset"
    url="http://www.kernel.org"
    depends=('module-init-tools')
    install=kernel26.install
    ##### if you are using a single patch from a patchset you can add the name, without it's extention, below
    patch=2.6.18-rc6-mm2
    ##### add the names of any patches to this section, ensure you have the correct extentions!
    source=($patch.bz2 config ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$pkgver.tar.bz2 )
    I want to install the 2.6.18-rc6-mm2, so i downloaded that patch and put it in the same folder as PKGBUILD.
    I copied kernel26.install and put it in the same folder as the PKGBUILD.
    when running makepkg it asks for a config file.. So i copied the config file in /var/abs/kernels/kernel26/. But this will build with an old config file.. how can i as when doing the manual way, do a make menuconfig and enter the settings i want for this kernel??
    thanks

    I'd say it does too, and I think the problem is here:
    jinn wrote:I copied kernel26.install and put it in the same folder as the PKGBUILD.
    Did you just copy the install script, or did you edit it to create an image with a unique name? The script is hardcoded to create an image called kernel26.img i.e. the image name required by the stock kernel, so if you ran it as it is, you have overwritten the images for your stock kernel with images for your new kernel.
    You might still be able to boot your new kernel with kernel26-fallback.img, but if not you will have to boot your stock kernel using the initrd image, which will have been unaffected.
    Once your system is running again, you need to regenerate the kernel26 images using mkinitcpio, and then you can start debugging the problem with your new kernel.
    Of course, if you've already edited kernel26.install for your new kernel, ignore the above, and I'll start again.

  • [SOLVED] Custom kernel & nvidia

    Hello.
    So i wanted to learn about kernel building for a while and finally decided to jump in. (also i am a new Archlinux user)
    I read the wiki and wanted to try the "traditional" way first so i grabbed the 3.10.0 vanilla tarball and thanks to the wiki, successully compiled and booted it. (i didn't bother trying to start X at this point).
    Then i wanted to use the Arch "abs" way because i wanted to build my custom kernel from the same Arch stable kernel sources (nothing in the 3.10 gives me a boner and the stable arch sources are enough "bleeding edge" for me).
    I followed the wiki procedure and built my linux-3.9.9-1-custom.tar.xz package, then i installed it without any issue. Finally i updated GRUB2 and booted this kernel to make sure it was working.
    Well, it was.
    At this point i knew i had to build a custom nvidia package to make X working so i followed the wiki procedure to build it.
    Here is my PKGBUILD:
    # $Id: PKGBUILD 189199 2013-06-29 10:08:46Z foutrelis $
    # Maintainer : Thomas Baechler <[email protected]>
    pkgname=nvidia-custom
    pkgver=319.32
    _extramodules=extramodules-3.9-custom
    pkgrel=2
    pkgdesc="NVIDIA drivers for linux"
    arch=('i686' 'x86_64')
    url="http://www.nvidia.com/"
    depends=('linux>=3.9' 'linux<3.10' "nvidia-libgl" "nvidia-utils=${pkgver}")
    makedepends=('linux-headers>=3.9' 'linux-headers<3.10')
    conflicts=('nvidia-96xx' 'nvidia-173xx')
    license=('custom')
    install=nvidia.install
    options=(!strip)
    if [ "$CARCH" = "i686" ]; then
    _arch='x86'
    _pkg="NVIDIA-Linux-${_arch}-${pkgver}"
    source=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run")
    md5sums=('978339ff37c3207f3a39d3952721dcdb')
    elif [ "$CARCH" = "x86_64" ]; then
    _arch='x86_64'
    _pkg="NVIDIA-Linux-${_arch}-${pkgver}-no-compat32"
    source=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run")
    md5sums=('d181d856768868823df3bda4607a5315')
    fi
    build() {
    _kernver="$(cat /usr/lib/modules/${_extramodules}/version)"
    echo $_kernver
    cd "${srcdir}"
    sh "${_pkg}.run" --extract-only
    cd "${_pkg}/kernel"
    make SYSSRC=/usr/lib/modules/"${_kernver}/build" module
    package() {
    install -D -m644 "${srcdir}/${_pkg}/kernel/nvidia.ko" \
    "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko"
    install -d -m755 "${pkgdir}/usr/lib/modprobe.d"
    #echo "blacklist nouveau" >> "${pkgdir}/usr/lib/modprobe.d/nvidia.conf"
    sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install"
    gzip "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko"
    However when i tried to run makepkg, i got the following error:
    If you are using a Linux 2.4 kernel, please make sure
    you either have configured kernel sources matching your
    kernel or the correct set of kernel headers installed
    on your system.
    If you are using a Linux 2.6 kernel, please make sure
    you have configured kernel sources matching your kernel
    installed on your system. If you specified a separate
    output directory using either the "KBUILD_OUTPUT" or
    the "O" KBUILD parameter, make sure to specify this
    directory with the SYSOUT environment variable or with
    the equivalent nvidia-installer command line option.
    Depending on where and how the kernel sources (or the
    kernel headers) were installed, you may need to specify
    their location with the SYSSRC environment variable or
    the equivalent nvidia-installer command line option.
    *** Unable to determine the target kernel version. ***
    After messing around for quite some time, i discovered nvidia was expecting stuff in the follwing directory:
    /usr/lib/modules/3.9.9-1-custom/build/
    But the build dir did not exist. I looked into the 3.9.9-1-ARCH and found that the build dir was indeed present in the stock kernel directory.
    Since i was stuck i tried the following:
    ln -s /usr/lib/modules/3.9.9-1-ARCH/build /usr/lib/modules/3.9.9-1-custom/build
    and ran makepkg again: it built the package with no issue, so I installed the package.
    I rebooted my machine thinking this ugly hack solved my problem.
    I was wrong...
    When i tried to start X i got this error (using the custom kernel):
    modprobe: ERROR: could not insert 'nvidia': Exec format error
    Here's the full output:
    X.Org X Server 1.14.2
    Release Date: 2013-06-25
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 3.9.7-1-ARCH x86_64
    Current Operating System: Linux msytux666 3.9.9-1-custom #2 SMP PREEMPT Sat Jul 6 21:52:16 CEST 2013 x86_64
    Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux-custom root=UUID=a6b3e912-4bd4-47dc-810e-4d69667b21f9 ro quiet
    Build Date: 01 July 2013 10:48:42AM
    Current version of pixman: 0.30.0
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Sat Jul 6 23:02:47 2013
    (==) Using config file: "/etc/X11/xorg.conf"
    (==) Using config directory: "/etc/X11/xorg.conf.d"
    Initializing built-in extension Generic Event Extension
    Initializing built-in extension SHAPE
    Initializing built-in extension MIT-SHM
    Initializing built-in extension XInputExtension
    Initializing built-in extension XTEST
    Initializing built-in extension BIG-REQUESTS
    Initializing built-in extension SYNC
    Initializing built-in extension XKEYBOARD
    Initializing built-in extension XC-MISC
    Initializing built-in extension SECURITY
    Initializing built-in extension XINERAMA
    Initializing built-in extension XFIXES
    Initializing built-in extension RENDER
    Initializing built-in extension RANDR
    Initializing built-in extension COMPOSITE
    Initializing built-in extension DAMAGE
    Initializing built-in extension MIT-SCREEN-SAVER
    Initializing built-in extension DOUBLE-BUFFER
    Initializing built-in extension RECORD
    nitializing built-in extension DPMS
    Initializing built-in extension X-Resource
    Initializing built-in extension XVideo
    Initializing built-in extension XVideo-MotionCompensation
    Initializing built-in extension XFree86-VidModeExtension
    Initializing built-in extension XFree86-DGA
    Initializing built-in extension XFree86-DRI
    Initializing built-in extension DRI2
    Loading extension GLX
    modprobe: ERROR: could not insert 'nvidia': Exec format error
    (EE)
    Fatal server error:
    (EE) no screens found(EE)
    (EE)
    Please consult the The X.Org Foundation support
    at http://wiki.x.org
    for help.
    (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
    (EE)
    (EE) Server terminated with error (1). Closing log file.
    xinit: giving up
    xinit: unable to connect to X server: Connection refused
    xinit: server error
    Not sure what to do next.
    Thank you for reading
    PS: my stock kernel is still fine and running X with no issue (did not break anything, that's one good thing at least!)
    Last edited by BGK (2013-07-06 23:12:54)

    Did you install the kernel headers when you build the custom package?  You need something to build against, and that /usr/modules/3.9.9-1-ARCH/build is a symlink that is owned by linux-headers.  It points to /usr/src/linux-3.9.9-1-ARCH.  So by symlinking that "build" from ARCH to custom, you are effectively building the module against the wrong headers. 
    Check to make sure that you have installed the headers as well as the kernel.  The PKGBUILD for linux will build multiple packages (linux, linux-headers, and linux-docs).  I like to have all three, since the docs package contains some amazing information and is totally worth the ~16MB of space.  Do you have a directory set for storing built packages?  It is probably a good idea, so that you can keep them around.
    BTW, installing headers using the "traditional method" would include issuing the "make headers-install" command as root (from the source directory of course).  Did you do that?
    Last edited by WonderWoofy (2013-07-06 22:49:30)

  • [solved] Compiling A Custom Kernel W/ Same Config

    I apologize in advance if this is repetitive but i am just a little confused with a few questions.
    What i want to do is be able to pretty much just have the ability to add a module or compile somthing on top of the default linux
    kernel. I guess the only way to do that is to recompile a linux kernel with this guide:
    https://wiki.archlinux.org/index.php/Ke … ild_System
    My questions:
    In the guide it says to change PKGBUILD and change:
    # pkgname=linux-custom       # Build kernel with a different name
    to
    pkgname=linux-test
    I understand that. it also says to disable conflicts if you want two kernels.
    is that just comenting "provides" , "conflicts" and "replaces"
    like:
    #next lines give you problems with nvidia drivers which depend on kernel
    #provides=('kernel26')
    #conflicts=('kernel26')
    #replaces=('kernel26'
    Also when i select or uncomment menuconfig and lets say not change anything at all is that going to be the same configuration as it would be if i were to install the kernel with pacman. It should be the same thing i have right now? right?
    So i can say add framebuffer support or something like that and compile and install and have the exact same kernel now plus FB support.
    Thanks,
    Paul
    Last edited by paulb787 (2012-06-22 05:50:35)

    1.
    What i want to do is be able to pretty much just have the ability to add a module or compile somthing on top of the default linux kernel.
    You would need linux-headers to do that like this (more or less):
    cd your-src/kernel
    make SYSSRC=/lib/modules/${current-kernel-version}/build module
    If you want to customize your kernel further, change its config options, modify default features, etc., then you need to recompile it entirely as described in the Wiki.
    2.
    is that just comenting "provides" , "conflicts" and "replaces"
    Yes. You also need to create a custom linux-${your-custom-kernel-name}.preset in order to generate initramfs. Of course, you can as well use the default name and change the settings in the config file (via menuconfig, nconfig or whatever tool you choose the achieve this). Then nothing has to be changed as all the add-ons will follow the naming convention reserved for the default kernel.
    3.
    Also when i select or uncomment menuconfig and lets say not change anything at all is that going to be the same configuration as it would be if i were to install the kernel with pacman?
    Yes.
    4.
    So i can say add framebuffer support or something like that and compile and install and have the exact same kernel now plus FB support.
    Basically yes, though I'm wondering for which video board you need extra FB support...
    Last edited by bohoomil (2012-06-20 00:41:15)

  • [solved] Nvidia with custom kernel

    Hello,
    I just compiled a new custom kernel and the custom kernel headers and then went on to create a custom nvidia kernel module. Somehow that doesn't seem to work. Nvidia is complaining that there is something Xen-ish in my kernel:
    Creating directory NVIDIA-Linux-x86_64-260.19.36-no-compat32
    Verifying archive integrity... OK
    Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 260.19.36.....................................................................................................................
    The kernel you are installing for is a Xen kernel!
    The NVIDIA driver does not currently work on Xen kernels. If
    you are using a stock distribution kernel, please install
    a variant of this kernel without Xen support; if this is a
    custom kernel, please install a standard Linux kernel. Then
    try installing the NVIDIA kernel module again.
    *** Failed Xen sanity check. Bailing out! ***
    make[1]: *** [build-sanity-checks] Error 1
    make: *** [module] Error 2
    Aborting...
    As far as I know there is no xen or other vm stuff in the kernel. To verify this I tried to make a new nvidia package for the standard kernel. Again the same error.
    Also this makes me wonder how the PKGBUILD works since it the build function just runs:
    make SYSSRC=/path/to/current/kernelmodules/build module
    and there are no xen sanity checks in that script, that happens in nvidia-installer - which isn't called from the PKGBUILD....
    Secondly, when doing a "make module" from the nvidia/kernel dir with the standard kernel there is a difference between the abs package and the extra package. Anyone a clue what is going on in the PKGBUILD and why the difference between the two kernel modules?
    Thanks.
    Last edited by Ulf (2011-02-04 22:20:51)

    Ulf wrote:Yeah that seems to work but still wondering why the PKBUILD calls nvidia-installer
    To unpack it. From the PKGBUILD:
    sh ${_pkg}.run --extract-only
    Note the '--extract-only'
    Ulf wrote:and why there is a slight difference in size between the extra package and my own module for the same standard arch kernel
    Different cflags? Different compiler version?
    Ulf wrote:and why nvidia thinks there is a kernel with Xen (it seems that it is some sort of common bug, not specific to arch but nvidia-ish).
    Quite likely false detection. The installer sees something activated in the kernel and thinks it's xen related. Or something.

  • How to make a custom Nvidia package for my custom kernel?

    I needed to create a custom kernel for my motherboard in order to have support for my integrated LAN and AGP bus...  My chipset is ULi's M1689.  Apparently, it will be native to maybe the 2.6.11 kernel, but definitely to the 2.6.12 kernel.
    In the meantime, I created a custom 2.6.10 kernel with the required patches as described in the wiki.  It works! Thanks!
    Now, I want to also create a custom Nvidia package that compiled for this kernel, so if I every re-install etc.  I just need to have these 2 packages handy to be up and running quickly. 
    Has this been done?  Is there a how-to?
    Thanks!
    KF

    Doesn't the genuine arch package work? Just run pacman -S nvidia in runlevel 3 and it should work. You just have to have sources of your kernel. Well, at least this works with my non-stock nitro kernel. Here's some more reference. I guess it gets a bit more tricky with multiple kernels, but it's not your case, is it [didn't get it clearly enough]?
    Cheers,
    lucke

  • Ndiswrapper module fails to load on custom kernel

    Hello All, I just compiled my custom kernel, which boots successfully (yay! after at least 10 hours of constant compiling..), however, the ndiswrapper module does not load. I'm wondering, if there's any shortcut to it without using abs to makepkg another version of it for my kernel.
    I have tried to compile the kernel26 (vanilla arch kernel, replacing my default kernel), and changed the pkgrel number from 3 to 4, but this time, the ndiswrapper module still failed to load, the error message was that the format of the kernel module was different.
    I have also tried to remove the package ndiswrapper, and reinstalling it through pacman, but that didn't work out either. The problem still persists.
    Similar problem also applies to my fglrx kernel module. Any advice is appreciated.

    ndiswrapper needs to be built against the new kernel. Use abs to do that and reinstall your new package via pacman.

  • Manually compiling the kernel aith PKGBUILD

    Hi!
    I am at the moment trying to recompile my kernel using the Arch Package management. So i picked a HowTo ( http://wiki.archlinux.de/?title=Eigener … _erstellen (It's german)) and followed it. The kernel was compiled and the kernel26custom-2.6.23-1-i686.pkg.tar.gz was created, but i can't install it. When i try to do it, the error output is as follows:
    pacman -U kernel26custom-2.6.23-1-i686.pkg.tar.gz
    Lade Paketdaten ... Fertig.
    Prüfe Abhängigkeiten... Fertig.
    Räume auf... Fertig.
    (1/1) Pruefe auf Dateikonflikte [####################################################] 100%
    Fehler: Konnte Vorgang nicht vorbereiten (In Konflikt stehende Dateien)
    kernel26custom: /lib/modules/2.6.23-ARCH/build existiert im Dateisystem
    kernel26custom: /lib/modules/2.6.23-ARCH/kernel/arch/i386/crypto/aes-i586.ko existiert im Dateisystem
    kernel26custom: /lib/modules/2.6.23-ARCH/kernel/arch/i386/crypto/twofish-i586.ko existiert im Dateisystem
    kernel26custom: /lib/modules/2.6.23-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.ko existiert im Dateisystem
    kernel26custom: /lib/modules/2.6.23-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/cpufreq-nforce2.ko existiert im Dateisystem
    kernel26custom: /lib/modules/2.6.23-ARCH/kernel/arch/i386/kernel/cpu/cpufreq/e_powersaver.ko existiert im Dateisystem
    [...]about 1000 Lines follow which files already exist in the file system)[...]
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/soc/at91/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/soc/codecs/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/soc/pxa/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/soc/s3c24xx/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/soc/sh/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/sparc/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/sound/usb/Kconfig existiert im Dateisystem
    kernel26custom: /usr/src/linux-2.6.23-ARCH/usr/Kconfig existiert im Dateisystem
    Fehler aufgetreten, keine Pakete wurden aktualisiert.
    The rough translation of this error is, that a lot files were found that already exist and won't be replaced. I am a bit afraid to uninstall my current kernel package and install mine, i don't want to break my system...Or can i safely just rm -r  the kernel sources in /usr/src/linux-2.6.23-ARCH ?
    Thanks in advance, Hauke

    somairotevoli wrote:
    try pacman -Uf kernel26custom-2.6.23-1-i686.pkg.tar.gz
    that will force to replace those files.
    Wait, now! That is really not a very good idea, you'd get (possibly) quite a mess. The problem is that your custom compilation is using the same library path as the stock kernel, so the best thing would be to fix your PKGBUILD to put its modules in /lib/modules/2.6.23-custom (for example). I'm afraid I can't off the top of my head tell you how to do that, but maybe someone else can ...?
    If the wiki page is missing this information it would be nice if someone could fix it. You could have a look at the English wiki page(s) - maybe there's something there?

  • Compiling STREAM module for 64-bit kernel

    Hi,
    I am trying to compile a STREAM module for Solaris. The results I get when I execute "isalist" and "isainfo -kv" are:
    -"sparcv9+vis sparcv9 sparcv8plus+vis sparcv8plus sparcv8 sparcv8-fsmuld sparcv7 sparc"
    -"64-bit sparcv9 kernel modules"
    The host is a Ultra5_10 with SunOS 5.7 sun4u sparc.
    First I tried to compile the module with gcc 2.8.1 but altough the compilation apparentelly finisihed OK I did not get to load the module. Later I read that, gcc so far does not generate binaries for 64-bit sparc.
    So I installed the Sun WorkShop 5 environment (try version) and I tried to compile my sources with the following line:"cc -D_KERNEL -xarch=v9 -xcode=abs32 -xregs=no%appl -x03 -I. -I/usr/include -c mymodule.c"
    but I get a huge list of errors such as:
    "/usr/include/sys/thread.h/, line73:warning: volatile is a keyworkd in
    ANSI C"
    "/usr/include/sys/thread.h/, line 73:sintax error before or at:volatile"
    so if I compile adding the directire "-D_ASM" to the previous line, the list of errors descreases to 2 lines:
    "/usr/include/sys/kstat.h, line 52: sintax error before or at: hrtime_t"
    "/usr/include/sys/kstat.h, line 52: cannot recover from previous errors".
    I have also tried adding directives such as: -D_LP64 -D__sparcv9 -D_POSIX_C_SOURCE, -D_XOPEN_SOURCE but I do not get to compile it successfully.
    Could someone be so kind to give me a clue of what I am doing wrong, and what should I do in order to compile it??.
    The header files I have included right now in my ".c" are:
    #include <sys/stream.h>
    #include <sys/conf.h>
    #include <sys/modctl.h>
    #include <sys/kmem.h>
    #include <sys/cmn_err.h>
    #include <sys/ddi.h>
    #include <sys/sunddi.h>
    If I do not add the directives -I. -I/usr/include to the compile line above I get the following error:
    "/usr/include/sys/modctl.h, line 185: major, argument mismatch"
    "/usr/include/sys/cred.h, line 51: sintax error before or at: uint_t"
    But this is because the environment it is taken the /usr/ucbinclude as default include path instead of the "/usr/include". �which one should I consider?.
    Thank in advance for your support.
    Looking forward to hearing from you.
    (could you please send to me the answeres to this e-mail:[email protected]??)
    Regards
    Elena

    HI,
    Maybe a file I can edit that says to run the Garmin stuff in 32-bit mode?
    Right or control click the Garmin application (or utility) then click: Get Info
    In the Get Info window under the General tab, if it can be enabled you should see:
    Open in 32-bit mode.
    Activity Monitor (Applications/Utilities) shows all apps running in 64 bit. If it doesn't have 64 bit under Kind on the right, then it's running in 32 bit mode.
    Carolyn

Maybe you are looking for

  • Remote Access VPN Problem with ASA 5505

    After about ~1 year of having the Cisco VPN Client connecting to a ASA 5505 without any problems, suddenly one day it stops working. The client is able to get a connection to the ASA and browse the local network for only about 30 seconds after connec

  • How do I find and remove viruses, malware, etc. from my Macs?

    I have been plagued with pop-ups suggesting that I have a virus and need to call a certain number immediately.  Won't do that but need to know how to clean my Mac PowerBook and MacAir and am having trouble making a Genius Bar appointment.  Can anyone

  • 10.4.9 removes Brightness Control from System Preferences?!

    Has anyone else noticed that the Intel 10.4.9 update has removed Brightness Control from their System Prefs?! maybe it's just mine... seems unlikely!!!

  • PT64 Transaction (Standard Program: RPTABS20)

    Hi all, Standard report RPTABS20 (Transaction PT64) gives absence / attendance hours for the employee for the specified period on the selection screen.These hours are total number of hours for the period. Now, I have a requirement to create a custom

  • Daylight Savings Time in Calendar Bar

    I am in Australia and we have  also adjusted the clocks to Daylight Savings Time - I am using an Iphone  5 with IOS 7.0.2 and all settings are set to time zone Sydney, in both  Date and Time and Calendar. The  calendar shows the correct time at the t