
Ubuntu日本語フォーラム

ログインしていません。
ubuntu8.10にIEGD9_0_2をインストールを試みましたがうまく行きません。
セットアップガイドにはFedora5 or 7、SUSE10、Novell PoS9が有りFedora7、の方法を試みましたがダメでした。
エラーは出ませんでしたが、最後の方でファイルが作製されず行き詰まりました。
分かる所はファイル名やディレクトリを置き換えて実行しましたが私の知識では目に見える表面上の違いしか分からず又、Fedora5 or 7のやり方がubuntuに摘要出来るかも分からずに作業を行っています。
以下にセットアップの手順を張り付けます。
ubuntu8.10に摘要する方法を教えて下さい。
7.3.1 Installing Fedora Core 5 or Fedora 7
1. Log into to a system administration account.
2. Untar the driver package to a convenient location.
tar -xvzf <driver package.tgz>
This creates a directory structure in the directory where you extracted the .tgz file
and contains the following directories:
— IEGD_X_x_Linux - Contains the Documents, Driver, License, and Utilities
subdirectories, where X is the major version and x is the minor version.
The Documents subdirectory contains the Xfree86 and Xorg-X11 subdirectory.
These directories contain man pages for the IEGD.
The Driver directory contains subdirectories the supported versions of XFree
and Xorg.
The Utilities directory contains IEGD utilities, including the iegdgui runtime
configuration utility.
— IEGD_Patches - Contains files for patching the Linux kernel agpgart module.
3. Check the version of the X-Server your system is running. Type the following
command:
X -version
Note: For Fedora Core 5, the result from this command is 7.0. For Fedora 7, the result from
this command is 1.3 which equates to 7.2 for IEGD. Refer to Table 36 on page 147 to
convert from the X -version command to IEGD's naming convention.
4. Copy the IEGD driver binary, iegd_drv.o (or iegd_drv.so), from the
IEGD_X_x_Linux/Driver/<xserver name> directory to the X-Server's
modules/drivers directory, where X is the major version and x is the minor
version.
— For FC5 (X.org-7.0 based distribution), the default location is /usr/lib/X11/
lib/modules/drivers. This location can vary by distribution so check your
system for the proper path and replace X and x with the correct version
numerals.
cd IEGD_9_0_Linux/Driver/Xorg-X11R7.0
cp iegd_drv.so /usr/lib/xorg/modules/drivers
— For FC7 (X.org-7.2 based distribution), the default location is /usr/lib/X11/
lib/modules/drivers. This location can vary by distribution so check your
system for the proper path and replace X and x with the correct version
numerals.
cd IEGD_9_0_Linux/Driver/Xorg-X11R7.2
cp iegd_drv.so /usr/lib/xorg/modules/drivers
5. Copy the necessary port driver files (*.so files in the IEGD_X_x_Linux/Driver/
<xserver name> directory) to the X-Server lib/modules directory, where X is
the major version and x is the minor version. The default installation location is /
usr/lib/xorg/modules. This location can vary, so check your system for the
proper path. After the required port drivers have been copied, you can specify them
in the PortDrivers option in the Device section of the config file. For more
information on specifying the PortDrivers option, refer to Table 37, “Supported
Driver Options” on page 167. For example, to copy all the port drivers use the
following command:
cp *.so /usr/lib/xorg/modules
6. Copy the escape control library libXiegd_escape.so.2.0.0 from the
IEGD_X_x_Linux/Driver/<xserver name> directory to the X-Server library
directory, where X is the major version and x is the minor version. The default
installation location is /usr/lib. For example,
cp libXiegd_escape.so.2.0.0 /usr/lib
7. In the X-Server library directory, create symbolic links for the escape library
aliases:
cd /usr/lib
ln -s libXiegd_escape.so.2.0.0 libXiegd_escape.so
ln -s libXiegd_escape.so.2.0.0 libXiegd_escape.so.2
ldconfig
8. From the IEGD_X_x_Linux/Documents directory, where X is the major version
and x is the minor version, copy the driver man page, iegd.4, to the man/man4
directory. The default installation location is /usr/share/man/man4. This
location can vary by distribution so check your system for the proper path and
replace X and x with the correct version numerals. For example:
cd IEGD_9_0_Linux/Documents/Xorg-X11
cp iegd.4 /usr/share/man/man4
Intel® Embedded Graphics Drivers and Video BIOS v9.0
User’s Guide June 2008
150 Document Number: 274041-014US
Installing and Configuring Linux OS Drivers
9. For Fedora Core 5, use the IKM Patch Instructions in Section 7.4 on page 156 which
is the preferred method, or use Section 7.6, “GART Patch Instructions (for Fedora
Core 5 Only)” on page 160.
For Fedora 7, proceed to step 10.
10. For Fedora 7 only, execute the following commands:
cd IEGD_Patches/IKM
./install.sh
(Note: if a permissions error is displayed, do a chmod +x install.sh)
depmod -a
modprobe iegd_mod
11. Modify your xorg.conf file to include a device section for this driver and a Monitor
section for your display. See Section 7.7.1, “Configuration Overview” on page 161
for details on the driver configuration and the list of supported options. The default
installation location for this file is /etc/X11.
12. Reboot
オフライン
実際に行った手順を張り付けます。
太字は変更、追加箇所です。
4、
cd IEGD_9_0_2_Linux/Driver/Xorg-X11R7.3
cp iegd_drv.so /usr/lib/xorg/modules/drivers
5,
cp *.so /usr/lib/xorg/modules
6,
cp libXiegd_escape.so.2.0.0 /usr/lib
7,
cd /usr/lib
ln -s libXiegd_escape.so.2.0.0 libXiegd_escape.so
----------------------------------------------------------------------------------------------------------------------
- (ln: creating symbolic link `libXiegd_escape.so': File exists) ←が帰ってくるがどう言う意味か分り
- ません。
----------------------------------------------------------------------------------------------------------------------
ln -s libXiegd_escape.so.2.0.0 libXiegd_escape.so.2
----------------------------------------------------------------------------------------------------------------------
- (ln: creating symbolic link `libXiegd_escape.so2': File exists) ←が帰ってくるがどう言う意味か分り
- ません。
----------------------------------------------------------------------------------------------------------------------
ldconfig
8,
cd IEGD_9_0_2_Linux/Documents/XFree86
cp iegd.4 /usr/share/man/man4
9,
10,
cd IEGD_Patches/IKM
./install.sh
----------------------------------------------------------------------------------
Found kernel header files in /lib/modules/2.6.27-9-generic/build
Building for kernel 2.6.27
If this is not the kernel you wish to build for, please set the KERNELDIR
environment variable to the directory containing your target kernel
source tree.
/home/**/desktop/iegd/IEGD_Patches/IKM
make[1]: ディレクトリ `/usr/src/linux-headers-2.6.27-9-generic' に入ります
CC [M] /home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.o
/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.c: In function ‘agp_init_pat’:
/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.c:180: error: too many arguments to function ‘on_each_cpu’
/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.c: In function ‘iegd_intel_probe’:
/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.c:240: 警告: passing argument 1 of ‘bridge_driver_init’ from incompatible pointer type
/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.c: トップレベル:
/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.c:355: 警告: initialization from incompatible pointer type
make[2]: *** [/home/**/desktop/iegd/IEGD_Patches/IKM/agp/pci.o] エラー 1
make[1]: *** [_module_/home/**/desktop/iegd/IEGD_Patches/IKM] エラー 2
make[1]: ディレクトリ `/usr/src/linux-headers-2.6.27-9-generic' から出ます
make: *** [modules] エラー 2
Make error
-------------------------------------------------------------------------------------------------------
IEGD_Patches/IKMではなく IEGD_Patches/Drmにmakefileが有るので実行してみます。
make
rm -f intel*.o iegd*.ko iegd*.mod.c iegd*.o
rm -fr .intel* .tmp*
make -C /lib/modules/2.6.27-9-generic/build M=/home/hiro/desktop/iegd/IEGD_Patches/Drm modules
make[1]: ディレクトリ `/usr/src/linux-headers-2.6.27-9-generic' に入ります
scripts/Makefile.build:46: *** CFLAGS was changed in "/home/**/desktop/iegd/IEGD_Patches/Drm/Makefile". Fix it to use EXTRA_CFLAGS. 中止.
make[1]: *** [_module_/home/**/desktop/iegd/IEGD_Patches/Drm] エラー 2
make[1]: ディレクトリ `/usr/src/linux-headers-2.6.27-9-generic' から出ます
make: *** [modules] エラー 2
最後に
depmod -a
modprobe iegd_mod ですがもちろんそんなのは無いといわれます。
よろしくお願いします。
オフライン
意味が有るのか無いのか分かりませんが少し状況が変わったので報告します。
#2の10番目で ./install.sh ではなく sh install.sh だとエラーはでず別のメッセージが出ます。
意味は分からないのですが解決に結びつくヒントや解決策があればよろしくお願いします。
Found kernel header files in /lib/modules/2.6.27-9-generic/build
Building for kernel 2.6.27
If this is not the kernel you wish to build for, please set the KERNELDIR
environment variable to the directory containing your target kernel
source tree.
install.sh: 238: [[: not found
install.sh: 238: [[: not found
install.sh: 238: [[: not found
Unsupported kernel version
よく見るとUnsupported kernel version.の文字が,,, 完全にダメってことでしょうか?
2008/08/08にリリースされたバージョンなのですが対応カーネルについての記述は見つけることが出来ませんでした。
このドライバに限らずintelのus15wチップセット(Atom)対応のドライバが有れば教えて下さい。
ちなみに雑誌に収録されていたTurbolinuxでは標準で対応していたのでもう少し悪あがきをしてみます。
オフライン
hir0 による投稿:
Unsupported kernel version
よく見るとUnsupported kernel version.の文字が,,, 完全にダメってことでしょうか?
2008/08/08にリリースされたバージョンなのですが対応カーネルについての記述は見つけることが出来ませんでした。
まず大前提がはっきりしないのですが、IEGDとは
http://www.intel.com/design/intarch/swsup/graphics_drivers.htm
のことでしょうか?
あと、引用されたマニュアルは、
http://download.intel.com/design/intarch/manuals/27404113.pdf?iid=ipp_rhc+manual
のことでしょうか?
install.sh実行時のエラーについては、install.sh内の記述を見ればカーネルバージョンについてどんなチェックをしてるのか分かりませんか?
ご返事有難う御座います。
まず大前提がはっきりしないのですが、IEGDとは
http://www.intel.com/design/intarch/sws … rivers.htm
のことでしょうか?
あと、引用されたマニュアルは、
http://download.intel.com/design/intarc … rhc+manual
のことでしょうか?
はい、それです。
shファイルがテキストエディタでひらけるとは知りませんでした。以前にmakefileを変更してドライバを通した事が有りましたが今回は初めて見る記述が多く意味を理解出来ませんでした。
コメントと echo Unsupported kernel version が有るのでその辺りのコードを張り付けます。
何か解決策は有るでしょうか。
あとinstall.sh: 238: [[: not found の238って行数の事でしょうか?
#Detecting agp release version
if [[ $VERCODE -le 132619 ]]; then
agpversion="agpm0v100"
elif [[ $VERCODE -le 132628 ]]; then
agpversion="agpm0v101"
elif [[ $VERCODE -ge 132629 ]]; then
agpversion="agpm0v102"
else
echo "Unsupported kernel version."
exit 1;
fi ←が238行目です。
#
# Crazy hack to make this work with the RedHat Embedded for Menlow version
# of the 2.6.23 kernel.
#
if [ "$argument" = "rhe" ]
then
echo "Configure source for RedHat Embedded"
/bin/cp drm/iegd_drv.h drm/iegd_drv.tmp
sed -e '/typedef struct drm_ioctl_desc drm_ioctl_desc_t;/ c\/* typedef struct drm_ioctl_desc drm_ioctl_desc_t; */' < drm/iegd_drv.tmp > drm/iegd_drv.h
xdrmversion="drmv13p1"
else
xdrmversion="drmv13p0"
fi
if [ -f ${KERNELDIR}${VERSION} ]; then
BUILDDIR=${KERNELDIR}
elif [ -f ${KERNELDIR}/build${VERSION} ]; then
BUILDDIR=${KERNELDIR}/build
else
cat <<EOF
Could not locate your kernel header files. Please install the kernel-devel
package for your distribution of Linux, or set the KERNELDIR environment
variable to the directory containing your target kernel source tree.
EOF
exit
fi
VERCODE=`cat ${BUILDDIR}${VERSION} | grep LINUX_VERSION_CODE | awk '{print $3}'`
MAJOR=$((($VERCODE >> 16) & 0xFF))
MINOR=$((($VERCODE >> 8) & 0xFF))
RELEASE=$(($VERCODE & 0xFF))
cat <<EOF
Found kernel header files in ${BUILDDIR}
Building for kernel ${MAJOR}.${MINOR}.${RELEASE}
If this is not the kernel you wish to build for, please set the KERNELDIR
environment variable to the directory containing your target kernel
source tree.
EOF
sleep 5
if [ ! -f $BUILDDIR/include/linux/config.h ]
then
echo "Creating config.h file"
touch $BUILDDIR/include/linux/config.h
fi
#Detecting agp release version
if [[ $VERCODE -le 132619 ]]; then
agpversion="agpm0v100"
elif [[ $VERCODE -le 132628 ]]; then
agpversion="agpm0v101"
elif [[ $VERCODE -ge 132629 ]]; then
agpversion="agpm0v102"
else
echo "Unsupported kernel version."
exit 1;
fi
#Detecting DRM version
if [[ $VERCODE -le 132618 ]]; then
drmversion="drmv00p0"
elif [[ $VERCODE -ge 132619 && $VERCODE -le 132623 ]]; then
# FC5 does not use the drm from the generic kernel
fedora_version=`cat ${ISSUEFILE} | grep -i fedora | awk '{print $4}'`
if [[ "$fedora_version" = "5" ]]; then
drmversion="drmv10p1"
else
drmversion="drmv10p0"
fi
elif [[ $VERCODE -ge 132624 && $VERCODE -le 132627 ]]; then
drmversion="drmv10p1"
elif [[ $VERCODE -ge 132628 && $VERCODE -le 132629 ]]; then
drmversion="drmv11p0"
elif [[ $VERCODE -eq 132630 ]]; then
fedora_version=`cat ${ISSUEFILE} | grep -i fedora | awk '{print $1}'`
if [[ "$fedora_version" = "Fedora" ]]; then
drmversion="drmv13p0"
else
drmversion="drmv12p0"
fi
elif [[ $VERCODE -eq 132631 ]]; then
drmversion=$xdrmversion
elif [[ $VERCODE -ge 132632 ]]; then
drmversion="drmv14p0"
else
echo "Unsupported kernel version."
exit 1;
fi
# Call routine to create makefile
create_make_file
if [ -f "$MAKEFILE" ]
then
# If install.sh invoke with the debug argument set
# the debug flag in the makefile
if [ "$argument" = "debug" ] ; then
DEBUG="-DCONFIG_AGP_DEBUG"
fi
sed -i "s/DEBUG_FLAG/$DEBUG/g" $MAKEFILE
sed -i "s/agpversion/$agpversion/g" $MAKEFILE
sed -i "s/drmversion/$drmversion/g" $MAKEFILE
sed -i "s|installdir|$INSTALLDIR|g" $MAKEFILE
else
echo "Makefile creation error"
exit 1
fi
if ! make -f $MAKEFILE
then
echo "Make error:"
exit 1
fi
if [[ "$INSTOPT" = "xxx" ]]; then
exit
fi
echo -e "\n\nThis will install the module to the $INSTALLDIR. "
if [[ ! -w "$INSTALLDIR" && $(id -u) -ne 0 ]]
then
echo -e "\n\n\033[1m$INSTALLDIR is not accessible"
while [[ "$answer" != "Y" || "$answer" != "y" || "$answer" != "N" || "$answer" != "n" ]]
do
echo -ne "\033[51mSwitch to user root? [y/n] \033[0m"
read answer
case "$answer" in
"Y" | "y")
su -c "make -f $MAKEFILE install"
if [ "$?" -ne "0" ]
then
continue
else
break
fi
;;
"N" | "n")
echo "iegd_mod.ko has not been installed in $INSTALLDIR"
exit 1
;;
*)
echo "Invalid option... Try again?"
continue
;;
esac
done
else
msg="Is this ok? [y/n]"
while [[ "$answer" != "Y" || "$answer" != "y" || "$answer" != "N" || "$answer" != "n" ]]
do
echo -ne "\033[51m$msg \033[0m"
read answer
case "$answer" in
"Y" | "y")
su -c "make -f $MAKEFILE install"
if [ "$?" -ne "0" ]
then
continue
else
break
fi
;;
"N" | "n")
echo "iegd_mod.ko has not been installed in $INSTALLDIR"
exit 1
;;
*)
msg="Invalid option... Try again?[y/n]"
continue
;;
esac
done
fi
if [ "$argument" = "rhe" ]
then
# fix changes make to the source for rhe
/bin/cp drm/iegd_drv.h drm/iegd_drv.tmp
sed -e '/typedef struct drm_ioctl_desc drm_ioctl_desc_t;/ c\typedef struct drm_ioctl_desc drm_ioctl_desc_t;' < drm/iegd_drv.tmp > drm/iegd_drv.h
fi
echo "Installation complete".
オフライン
hir0 による投稿:
あとinstall.sh: 238: [[: not found の238って行数の事でしょうか?
そのようです。
hir0 様がどんなPCでどういういきさつで何を目的にこの作業をされているのか全く分からないので、私が誤った方向に誘導しているかもしれませんが、それはご了解ください。あくまで質問に答え、ヒントがあれば出すということしか、私にはできないので。
まず、sh install.shの件で混乱されているようなので少し説明します。
sh install.sh と実行すると「違うエラー」になるには理由があります。
install.shの冒頭のシェバング行に #!/bin/bash と書いてあります。
つまり、このシェルスクリプトはbashで実行させることが前提になっています。
実際、install.sh: 238: [[: not found のようなエラーが出るのは、[[ がbashのビルインコマンドなので shには理解不能なのです。
なので、sh install.sh ではなく、bash install.sh と実行すればよいです。
(ちなみに、bash -x install.sh と-xをつけてやるとデバッグに有効な出力も得られます。)
なお、通常は、chmod +x install.sh で実行権を与えてやり、./install.sh で十分です。
229行目から238行目にかけての"Unsupported kernel version"のチェックエラーですが、前述の [[ のエラーがあった為に出てきた2次的なエラーなので気にする必要はないです。
それよりも、IEGD_Patches/IKM/agp/pci.o をコンパイルする際にエラー(error)がいくつか出ているので、まずその解決が必要かと思います。
# ただ、私にはLinuxカーネルやカーネルモジュールなどの知識はないので、エラーを見てもよく分からないです。
最後に関係のありそうなURLを見つけたので紹介します。(英語)
http://www.gamedev.net/community/forums/topic.asp?topic_id=512479
特に下から2番目の書き込み
Ubunto 8.4 ships with inter driver 2.2.1. Ubuntu 8.10 ships with driver 2.4.1. So there;s your answer. Get the latest xserver-xorg-video-intel driver.
上記URLを見る限り、(全くの的外れかもしれませんが)、OpenGLの1.4以上を使って何かをされたいのでしょうか?
ごく普通に 8.10のxserver-xorg-video-intel を使うだけでは目的が果たせないのでしょうか?
最後の編集者: STGSAGWAN (2008-12-31 17:24:01)
有り難うございます
私はLinux経験3~4ヶ月の初心者です。大変勉強になりました。現時点ではpci.oとglobal.oと言うファイルがコンパイルできましたがエラーを一つ取ると新しいエラーが出る状況で全て終わってiegd.koが出来ても正常に動くかどうか、、、
私の目的は単純にグラフィックドライバが欲しいと言うことです。
intelのus15wと言うチップセットですが現在、凡庸のvesaが摘要されています。
解像度の問題もXorg.confではドライバー自体が対応していないとダメとのことでした。
ごく普通に 8.10のxserver-xorg-video-intel を使うだけでは目的が果たせないのでしょうか?
設定のしかたが分からないのですが教えていただけないでしょうか。
オフライン
インストールは成功したみたいですが何も変わらず、です。
解像度は1024*768、視覚効果は無でリフレッシュレートが0に、改善されたのはブラウザのスクロールで残像がすごかったのが何とかカクカクしながら頑張ってるな〜ぐらいには良くなったこと。
解像度やその他の設定は専用ソフトで行うみたいですが文字化けしたり有るはずのボタンや入力フォームが無かったりでやっぱりどこかに無理があるのかも。
あとxorg.confも何か変?
Section "Device"
Identifier "Configured Video Device"
EndSection
Section "Monitor"
Identifier "Configured Monitor"
EndSection
Section "Screen"
Identifier "Default Screen"
Monitor "Configured Monitor"
Device "Configured Video Device"
EndSection
以上で作業を終わります。 また何か変化が有るまでこのままで行きます。
オフライン