LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 894|回复: 7

编译内核之后ABS从PKGBUILD制作fglrx模块,加载失败

[复制链接]
发表于 2008-3-5 09:41:24 | 显示全部楼层 |阅读模式
提示:
# modprobe fglrx
FATAL: Error inserting fglrx (/lib/modules/2.6.24.3/video/fglrx.ko): Operation not permitted

普通用户执行makepkg,然后在用root pacman -A 安装。但是想不到会出问题。之前也编译过内核后重现编译fglrx驱动……

曾怀疑是agp模块的问题,但是我的主板是amd 690G,集成x1250显示芯片。抱着测试的心理,把agp模块选上或者去掉,问题依旧。


以下是我的PKGBUILD:

# $Id: PKGBUILD,v 1.8 2008/02/18 01:47:54 travis Exp $
# Maintainer: Travis Willard <travisw@wmpub.ca>
# Contributor: amdviaman

pkgname=catalyst-2.6.24.3
pkgver=8.02
_kernel_version=2.6.24.3
pkgrel=1
pkgdesc="roprietary AMD/ATI kernel drivers for Radeon brand cards. Stock kernel."
arch=('i686' 'x86_64')
url="http://www.ati.amd.com"
license=('custom')
depends=("catalyst-utils>=${pkgver}")
makedepends=()
replaces=('ati-fglrx' 'fglrx') # Yay rebranding
install=${pkgname}.install
source=(file:///home/sam/temp/ABS/ati-driver-installer-8-02-x86.x86_64.run)
md5sums=('bcdf3c19c0b7a7c2051d751d5131d426')

_kernver=`uname -r`

build() {
    cd $startdir/src

    [ "$CARCH" = "i686" ] && _arch="x86"
    [ "$CARCH" = "x86_64" ] && _arch="x86_64"

    /bin/sh ./ati-driver-installer-${pkgver/./-}-x86.x86_64.run --extract archive_files

    cp $startdir/src/archive_files/arch/${_arch}/* $startdir/src/ -r
    cp $startdir/src/archive_files/common/* $startdir/src/ -r

    if [ "$CARCH" == "x86_64" ]; then
      cp $startdir/src/archive_files/x710_64a/* $startdir/src/ -r
    else
      cp $startdir/src/archive_files/x710/* $startdir/src/ -r
    fi
    cd $startdir/src
    cd $startdir/src/lib/modules/fglrx/build_mod/

    # Build the kernel module
    cp 2.6.x/Makefile .
    make -C /lib/modules/${_kernver}/build SUBDIRS="`pwd`" modules || return 1

    # Install the kernel module
    install -m 644 -D $startdir/src/lib/modules/fglrx/build_mod/fglrx.ko \
        $startdir/pkg/lib/modules/${_kernver}/video/fglrx.ko

    sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" $startdir/$install

    # install licenses
    install -m 0644 -D $startdir/src/archive_files/ATI_LICENSE.TXT \
                     $startdir/pkg/usr/share/licenses/${pkgname}/AMD_ATI_LICENSE.TXT

}


还有catalyst-2.6.24.3.install:

# This is a default template for a post-install scriptlet.  You can
# remove any functions you don't need (and this header).

# arg 1:  the new package version
pre_install() {
  /bin/true
}

# arg 1:  the new package version
post_install() {
  echo "LEASE NOTE:"
  echo "--------------------------------------------------------------"
  echo "You can use the tool 'aticonfig' to generate an xorg.conf file."
  echo "Remember to add fglrx to the MODULES list in /etc/rc.conf."
  echo "--------------------------------------------------------------"
  KERNEL_VERSION=2.6.24.3
  depmod -v $KERNEL_VERSION > /dev/null 2>&1
}

# arg 1:  the new package version
# arg 2:  the old package version
post_upgrade() {
  KERNEL_VERSION=2.6.24.3
  depmod -v $KERNEL_VERSION > /dev/null 2>&1
}

# arg 1:  the old package version
post_remove() {
  KERNEL_VERSION=2.6.24.3
  depmod -v $KERNEL_VERSION > /dev/null 2>&1
}

op=$1
shift
$op $*


请大家帮忙分析一下
发表于 2008-3-5 12:14:45 | 显示全部楼层
是按照wiki上来的么?为什么非要编译内核?
回复 支持 反对

使用道具 举报

发表于 2008-3-5 13:33:14 | 显示全部楼层
是ati的卡?。。
回复 支持 反对

使用道具 举报

发表于 2008-3-5 20:31:22 | 显示全部楼层
是不是权限啊。不允许插入。用ROOT试应得
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-6 08:00:01 | 显示全部楼层
我还是知道insert module是要root权限的,呵呵

网上有些帖子提示要重启,我都不只重启多少遍了
回复 支持 反对

使用道具 举报

发表于 2008-3-6 15:13:27 | 显示全部楼层
很难很复杂,不知什么原因,而且也没有遇到过
回复 支持 反对

使用道具 举报

发表于 2008-3-6 17:52:53 | 显示全部楼层
楼主编译内核的时候没有用另外的版本号么?
仅用了? 2.6.24.3

没有 2.6.24.3-XXX?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-3-6 19:15:23 | 显示全部楼层
内核源码是从www.kernel.org下载的,版本是2.6.24.3

fglrx.ko模块已经写进了/lib/modules/2.6.24.3/video目录,就是不知何解不能加载

我也尝试直接用amd官方驱动的安装模式安装,也是提示出了问题。

在archlinux官方的kernel26下安装成功……

这样看来只能是我编译的内核有问题……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表