|
提示:
# 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 $*
请大家帮忙分析一下 |
|