[PlanetCCRMA] Building planetedge kernel for x86_64

Janina Sajka janina@rednote.net
Thu Sep 23 06:29:01 2004


Whoever does this first, please share the .config--perhaps via the list?
I think there's more than two of us interested in this.
Fernando Pablo Lopez-Lezcano writes:
> On Wed, 2004-09-15 at 15:36, BrbrOfSvl@aol.com wrote:
> > We have a new dual-opteron box with an x86_64 installation of FC2.  I'm 
> > trying to build Fernando's 2.6.8.1 (Q3) kernel, but I'm getting some errors 
> > (I get the same errors when I try building it on our 32-bit computer, and 
> > regardless of which target I try to build for, so I don't think it's a 
> > 64-bit problem).  It's a problem with the noninteractive oldconfig option, 
> > where for some reason it doesn't prompt oldconfig for the new options (or 
> > something).  The following is what I get -- am I forgetting a step (do I 
> > have to have this kernel installed before I can build it? -- it doesn't 
> > seem like it, since the .spec copies a file from SOURCES to .config before 
> > it runs make oldconfig... it seems like it should be buildable on any machine 
> > that the build tools exist on)?
> 
> The problem is that I have never built for x86_64 so that the source rpm
> does not have up to date versions of the x86_64 configuration files. The
> only ones I keep updating are the i?86 ones. 
> 
> For the build to work you would have to update the config files for the
> target processor you want to use to match as closely as possible to the
> ones I'm using for i?86. The way I do this is to:
>   rpmbuild -bp --target i686 kernel-xxx.spec
> This will build a ready to compile tree in /usr/src/redhat/BUILD/
> So you can change to:
>   cd /usr/src/redhat/BUILD/kernel-xxx/linux-xxx/
> and that's the top directory of the source. 
> 
> Then copy the relevant configuration file:
>   cp /usr/src/redhat/SOURCES/kernel-2.6.8.1-x86_64.config .config
> and run:
>   make oldconfig
> That should prompt for all options that are not currently defined. You
> should look up what I chose for the i686 case so that your configuration
> matches mine (or not, up to you of course). 
> 
> After you have a good .config file copy it back to the
> /usr/src/redhat/SOURCES directory and rebuild the package...
> 
> If you manage to get a config file working email it to me to merge into
> my source rpm...
> 
> [sorry for the delay in answering, I was away in a trip with no email
> access]
> 
> -- Fernando
> 
> > ------------------------------------------------------
> > SPECS]# rpmbuild -bp --target x86_64 kernel-2.6.8.1-1.520.1vQ3.ll.spec
> > Building target platforms: x86_64
> > Building for target x86_64
> > Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.99858
> > + umask 022
> > + cd /usr/src/redhat/BUILD
> > + LANG=C
> > + export LANG
> > + unset DISPLAY
> > + cd /usr/src/redhat/BUILD
> > + rm -rf kernel-2.6.8.1
> > + /bin/mkdir -p kernel-2.6.8.1
> > + cd kernel-2.6.8.1
> > + /usr/bin/bzip2 -dc /usr/src/redhat/SOURCES/linux-2.6.8.1.tar.bz2
> > + tar -xf -
> > + STATUS=0
> > + '[' 0 -ne 0 ']'
> > ++ /usr/bin/id -u
> > + '[' 0 = 0 ']'
> > + /bin/chown -Rhf root .
> > ++ /usr/bin/id -u
> > + '[' 0 = 0 ']'
> > + /bin/chgrp -Rhf root .
> > + /bin/chmod -Rf a+rX,u+w,g-w,o-w .
> > + cd linux-2.6.8.1
> > + echo 'Patch #20331 (diff-bk-040828-2.6.8.1.bz2):'
> > Patch #20331 (diff-bk-040828-2.6.8.1.bz2):
> > + /usr/bin/bzip2 -d
> > + patch -p1 -s
> > + STATUS=0
> > + '[' 0 -ne 0 ']'
> > + echo 'Patch #20330 (voluntary-preempt-2.6.9-rc1-bk4-Q3):'
> > Patch #20330 (voluntary-preempt-2.6.9-rc1-bk4-Q3):
> > + patch -p1 -s
> > + echo 'Patch #20332 (voluntary-preempt-enable-irq.patch):'
> > Patch #20332 (voluntary-preempt-enable-irq.patch):
> > + patch -p1 -s
> > + echo 'Patch #330 (linux-2.6.3-ia64-build.patch):'
> > Patch #330 (linux-2.6.3-ia64-build.patch):
> > + patch -p1 -s
> > + echo 'Patch #350 (linux-2.6.1-s390-compile.patch):'
> > Patch #350 (linux-2.6.1-s390-compile.patch):
> > + patch -p1 -s
> > + echo 'Patch #400 (linux-2.6.3-sparc-addbzimage.patch):'
> > Patch #400 (linux-2.6.3-sparc-addbzimage.patch):
> > + patch -p1 -s
> > + echo 'Patch #500 (linux-2.6.8.1-nonintconfig.patch):'
> > Patch #500 (linux-2.6.8.1-nonintconfig.patch):
> > + patch -p1 -s
> > + echo 'Patch #530 (linux-2.6.0-must_check.patch):'
> > Patch #530 (linux-2.6.0-must_check.patch):
> > + patch -p1 -s
> > + echo 'Patch #560 (linux-2.6.5-inode-clip.patch):'
> > Patch #560 (linux-2.6.5-inode-clip.patch):
> > + patch -p1 -s
> > + echo 'Patch #590 (linux-2.6.2-tux.patch):'
> > Patch #590 (linux-2.6.2-tux.patch):
> > + patch -p1 -s
> > + echo 'Patch #600 (linux-2.6.7-modsign-core.patch):'
> > Patch #600 (linux-2.6.7-modsign-core.patch):
> > + patch -p1 -s
> > + echo 'Patch #601 (linux-2.6.7-modsign-crypto.patch):'
> > Patch #601 (linux-2.6.7-modsign-crypto.patch):
> > + patch -p1 -s
> > + echo 'Patch #602 (linux-2.6.7-modsign-ksign.patch):'
> > Patch #602 (linux-2.6.7-modsign-ksign.patch):
> > + patch -p1 -s
> > + echo 'Patch #603 (linux-2.6.7-modsign-mpilib.patch):'
> > Patch #603 (linux-2.6.7-modsign-mpilib.patch):
> > + patch -p1 -s
> > + echo 'Patch #604 (linux-2.6.7-modsign-script.patch):'
> > Patch #604 (linux-2.6.7-modsign-script.patch):
> > + patch -p1 -s
> > + echo 'Patch #1000 (linux-2.4.0-test11-vidfail.patch):'
> > Patch #1000 (linux-2.4.0-test11-vidfail.patch):
> > + patch -p1 -s
> > + echo 'Patch #1020 (linux-2.6.4-stackusage.patch):'
> > Patch #1020 (linux-2.6.4-stackusage.patch):
> > + patch -p1 -s
> > + echo 'Patch #1060 (linux-2.6.3-crash-driver.patch):'
> > Patch #1060 (linux-2.6.3-crash-driver.patch):
> > + patch -p1 -s
> > + echo 'Patch #1070 (linux-2.6.0-sleepon.patch):'
> > Patch #1070 (linux-2.6.0-sleepon.patch):
> > + patch -p1 -s
> > + echo 'Patch #1100 (linux-2.6.7-i8042.patch):'
> > Patch #1100 (linux-2.6.7-i8042.patch):
> > + patch -p1 -s
> > + echo 'Patch #1110 (linux-2.6.7-symlink.patch):'
> > Patch #1110 (linux-2.6.7-symlink.patch):
> > + patch -p1 -s
> > + echo 'Patch #20000 (linux-2.6.6-rt-0.1.1.patch.gz):'
> > Patch #20000 (linux-2.6.6-rt-0.1.1.patch.gz):
> > + /usr/bin/gzip -d
> > + patch -p1 -s
> > + STATUS=0
> > + '[' 0 -ne 0 ']'
> > + echo 'Patch #20002 (linux-2.6.8.1-makefile.patch):'
> > Patch #20002 (linux-2.6.8.1-makefile.patch):
> > + patch -p1 -s
> > + echo 'Patch #20003 (linux-2.6.8-sysnice.patch):'
> > Patch #20003 (linux-2.6.8-sysnice.patch):
> > + patch -p1 -s
> > + cp /usr/src/redhat/SOURCES/COPYING.modules Documentation/
> > + mkdir configs
> > + cp -fv /usr/src/redhat/SOURCES/kernel-2.6.8.1-x86_64-smp.config /usr/src/redhat/SOURCES/kernel-2.6.8.1-x86_64.config .
> > `/usr/src/redhat/SOURCES/kernel-2.6.8.1-x86_64-smp.config' -> `./kernel-2.6.8.1-x86_64-smp.config'
> > `/usr/src/redhat/SOURCES/kernel-2.6.8.1-x86_64.config' -> `./kernel-2.6.8.1-x86_64.config'
> > + perl -p -i -e 's|CONFIG_LATENCY_TRACE=y|CONFIG_LATENCY_TRACE=n|g' kernel-2.6.8.1-x86_64-smp.config
> > + perl -p -i -e 's|CONFIG_LATENCY_TRACE=y|CONFIG_LATENCY_TRACE=n|g' kernel-2.6.8.1-x86_64.config
> > + mv kernel-2.6.8.1-x86_64-smp.config .config
> > ++ echo kernel-2.6.8.1-x86_64-smp.config
> > ++ cut -d- -f3
> > ++ cut -d. -f1
> > ++ sed -e s/i.86/i386/ -e s/s390x/s390/ -e s/ppc64.series/ppc64/ -e s/ppc8.../ppc/ -e s/ppc32dy4/ppc/
> > + make ARCH=x86_64 nonint_oldconfig
> > .config:41: trying to assign nonexistent symbol PREEMPT_VOLUNTARY
> > .config:42: trying to assign nonexistent symbol PREEMPT_NORESCHED
> > .config:43: trying to assign nonexistent symbol IRQBALANCE
> > .config:46: trying to assign nonexistent symbol SMBIOS
> > .config:47: trying to assign nonexistent symbol IRQSTACKS
> > .config:111: trying to assign nonexistent symbol PCI_GOBIOS
> > .config:112: trying to assign nonexistent symbol PCI_GOMMCONFIG
> > .config:113: trying to assign nonexistent symbol PCI_GODIRECT
> > .config:114: trying to assign nonexistent symbol PCI_GOANY
> > .config:121: trying to assign nonexistent symbol PCI_USE_VECTOR
> > .config:221: trying to assign nonexistent symbol MTD_ICH2ROM
> > .config:328: trying to assign nonexistent symbol IDEDISK_STROKE
> > .config:351: trying to assign nonexistent symbol BLK_DEV_IDE_TCQ
> > .config:384: trying to assign nonexistent symbol DMA_NONPCI
> > .config:407: trying to assign nonexistent symbol SCSI_REPORT_LUNS
> > .config:578: trying to assign nonexistent symbol I2O_PCI
> > .config:602: trying to assign nonexistent symbol IP_ROUTE_NAT
> > .config:622: trying to assign nonexistent symbol NETDUMP
> > .config:799: trying to assign nonexistent symbol NET_FASTROUTE
> > .config:808: trying to assign nonexistent symbol NET_SCH_CSZ
> > .config:818: trying to assign nonexistent symbol NET_SCH_DELAY
> > .config:979: trying to assign nonexistent symbol 8139_RXBUF_IDX
> > .config:996: trying to assign nonexistent symbol NET_GIGE
> > .config:1078: trying to assign nonexistent symbol RCPCI
> > .config:1427: trying to assign nonexistent symbol UNIX98_PTY_COUNT
> > .config:1513: trying to assign nonexistent symbol BUSMOUSE
> > .config:1523: trying to assign nonexistent symbol IPMI_KCS
> > .config:1550: trying to assign nonexistent symbol AMD7XX_TCO
> > .config:1993: trying to assign nonexistent symbol USB_PWC
> > .config:2086: trying to assign nonexistent symbol USB_BRLVGER
> > .config:2235: trying to assign nonexistent symbol INTERMEZZO_FS
> > .config:2254: trying to assign nonexistent symbol NEC98_PARTITION
> > .config:2323: trying to assign nonexistent symbol DEBUG_STACKOVERFLOW
> > .config:2327: trying to assign nonexistent symbol DEBUG_PAGEALLOC
> > .config:2333: trying to assign nonexistent symbol DEBUG_STACK_USAGE
> > .config:2368: trying to assign nonexistent symbol CRYPTO_AES_GENERIC
> > .config:2386: trying to assign nonexistent symbol CRC16
> > .config:2406: trying to assign nonexistent symbol MCE_DEBUG
> > .config:2412: trying to assign nonexistent symbol SLAB_DEBUG
> > CONFIG_CPU_FREQ_GOV_ONDEMAND
> > CONFIG_X86_SPEEDSTEP_CENTRINO
> > CONFIG_X86_ACPI_CPUFREQ
> > CONFIG_UNORDERED_IO
> > CONFIG_BLK_DEV_UB
> > CONFIG_MD_RAID10
> > CONFIG_INET_TUNNEL
> > CONFIG_IP_NF_CT_ACCT
> > CONFIG_IP_NF_MATCH_SCTP
> > CONFIG_IP_NF_CT_PROTO_SCTP
> > CONFIG_R8169_NAPI
> > CONFIG_IPMI_POWEROFF
> > CONFIG_I2C_ALGOPCA
> > CONFIG_I2C_PCA_ISA
> > CONFIG_SENSORS_SMSC47M1
> > CONFIG_SND_ATIIXP_MODEM
> > CONFIG_SND_USB_USX2Y
> > CONFIG_USB_SUSPEND
> > CONFIG_RPCSEC_GSS_SPKM3
> > CONFIG_SCHEDSTATS
> > CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE
> > CONFIG_CRYPTO_WHIRLPOOL
> > make[1]: *** [nonint_oldconfig] Error 22
> > make: *** [nonint_oldconfig] Error 2
> > error: Bad exit status from /var/tmp/rpm-tmp.99858 (%prep)
> 
> 
> _______________________________________________
> PlanetCCRMA mailing list
> PlanetCCRMA@ccrma.stanford.edu
> http://ccrma-mail.stanford.edu/mailman/listinfo/planetccrma

-- 
	
				Janina Sajka, Chair
				Accessibility Workgroup
				Free Standards Group (FSG)

janina@freestandards.org	Phone: +1 202.494.7040