Unsuccessful attempts to recompile Rocks
From BeSTGRID
[edit] Attempt to recompile Rocks on a naked CentOS 4
[edit] 1. Set up a build environment:
# cd /opt # cvs -d:pserver:anonymous@src.rocksclusters.org:/export/cvs checkout rocks-4.3
[edit] 2. Go to the directory which holds the device driver code:
# cd /opt/rocks-4.3/rocks/src/roll/kernel/src/rocks-boot/enterprise/4/images/drivers
[edit] 3. Create a new directory and populate it with appropriate files
# mkdir igb # cd igb # cp ../e1000/modinfo . # cp ../e1000/Makefile* . # cp ../e1000/modules.dep . # cp ../e1000/pcitable .
[edit] 4. Download the latest drivers for 82575 controller from Intel website:
Intel Download Center
igb-1.2.22.tar.gz
[edit] 5. Unpack source code files of drivers and copy them into driver directory:
# ls -1 /opt/rocks-4.3/rocks/src/roll/kernel/src/rocks-boot/enterprise/4/images/drivers/igb e1000_82575.c e1000_82575.h e1000_api.c e1000_api.h e1000_defines.h e1000_hw.h e1000_mac.c e1000_mac.h e1000_manage.c e1000_manage.h e1000_nvm.c e1000_nvm.h e1000_osdep.h e1000_phy.c e1000_phy.h e1000_regs.h igb_ethtool.c igb.h igb_main.c igb_param.c igb_regtest.h kcompat.c kcompat_ethtool.c kcompat.h
[edit] 6. Edit files modinfo, modules.dep, pcitable and Makefile:
modinfo
igb
net
"Intel igb gigabit ethernet driver for 82575 controller"
modules.dep
Empty
pcitable Three lines has been added. Hexadecimal codes have been found in e1000_hw.h, lines 37-39
0x8086 0x10a7 "e1000" "Intel|82575EB Gigabit Ethernet Controller (Copper) 0x8086 0x10a9 "e1000" "Intel|82575EB Gigabit Ethernet Controller (Fiber) 0x8086 0x10d6 "e1000" "Intel|82575GB Gigabit Ethernet Controller (Quad Copper)
Makefile
MODULES := igb
SOURCES := \
igb_ethtool.c \
e1000_82575.c \
e1000_api.c \
e1000_mac.c\
e1000_manage.c \
e1000_nvm.c \
e1000_phy.c \
igb_main.c \
igb_param.c \
kcompat.c \
kcompat_ethtool.c
HEADERS := \
igb.h \
igb_regtest.h \
e1000_82575.h \
e1000_api.h \
e1000_defines.h \
e1000_hw.h \
e1000_mac \
e1000_manage.h \
e1000_nvm.h \
e1000_osdep.h \
e1000_phy.h \
e1000_regs.h \
kcompat.h
[edit] 7. Edit subdirs file
# cd .. # vi subdirs
First section of the file should be like the following lines:
# # put a list of all the driver directories that you'd like to build. # # for example, to build the 'e1000' driver, uncomment the line below: #e1000 igb
[edit] 8. Install packages which are required to compile Rocks Distribution
# yum install syslinux pump pump-devel bogl-bterm bogl-devel elfutils-devel elfutils-libelf-devel beecrypt-devel \ gtk+ gtk+-devel gdk-pixbuf-devel gdk2-devel gtk2-devel
[edit] 9. Full stop. Compilation of Rocks should be run on Rocks Frontend node.
../../../../prep-initrd.py
Traceback (most recent call last):
File "../../../../prep-initrd.py", line 207, in ?
import rocks.kickstart
ImportError: No module named rocks.kickstart
There is a responce from Rocks mailing list:
Q: Can I build x86_64 Rocks under i386 one? A: sorry but no, you can't. you can only build x86_64 rocks on a x86_64 rocks frontend.
[edit] Attempt to install Rocks on a VMWare vitual machine
Started an attempt to build 64 bits VM under VMWare on my desktop.
It seems that 64 bits VM works under VMWare on a 32 bits desktop. Unfortunately Rocks didn't recognize virtual hard drive and rebooted itself. The attempt has been stopped.
A decision to install Rocks5.0 Beta has been admitted.
