* cross compiling xen/ia64
@ 2008-03-03 22:46 Alex Williamson
0 siblings, 0 replies; 2+ messages in thread
From: Alex Williamson @ 2008-03-03 22:46 UTC (permalink / raw)
To: xen-devel, Keir Fraser; +Cc: xen-ia64-devel
Hi,
With the latest pull of the ia64 tree, it's now possible, and fairly
easy, to cross compile xen/ia64 on an x86_32/64 system. Aron Griffis
has been working on this and has posted detailed instructions on the Xen
wiki: http://wiki.xensource.com/xenwiki/CrossCompiling These
instructions are based on Fedora8, which should be readily available.
I'd like to request that an ia64 cross compile be added to the
regression testing between the staging and the published development
trees. This should allow us to more quickly catch obvious breaks
between the architectures. I would also request that anyone making low
level changes that might affect other architectures, consider adding
this to your testing. It's quite trivial to setup an HVM domain with a
cross compiler and build environment given the instructions above.
Thanks,
Alex
--
Alex Williamson HP Open Source & Linux Org.
^ permalink raw reply [flat|nested] 2+ messages in thread
[parent not found: <m2n.s.1JWJRb-000DP2@chiark.greenend.org.uk>]
* Re: cross compiling xen/ia64
[not found] <m2n.s.1JWJRb-000DP2@chiark.greenend.org.uk>
@ 2008-06-16 15:22 ` Ian Jackson
0 siblings, 0 replies; 2+ messages in thread
From: Ian Jackson @ 2008-06-16 15:22 UTC (permalink / raw)
To: Alex Williamson; +Cc: xen-devel, Keir Fraser, xen-ia64-devel
Alex Williamson writes ("[Xen-ia64-devel] cross compiling xen/ia64"):
> With the latest pull of the ia64 tree, it's now possible, and fairly
> easy, to cross compile xen/ia64 on an x86_32/64 system. Aron Griffis
> has been working on this and has posted detailed instructions on the Xen
> wiki: http://wiki.xensource.com/xenwiki/CrossCompiling These
> instructions are based on Fedora8, which should be readily available.
I've been looking into this, and with Isaku Yamahata's patch the
hypervisor does build. I'm hoping we can get that wired into the
staging propagation system very soon. (Sorry about the delay getting
round to this.)
However, neither the kernel nor the tools build for me.
The kernel build stops asking for a kernel config option:
mariner:xen-unstable-2.hg> PATH=/usr/local/ia64/bin:$PATH make XEN_TARGET_ARCH=ia64 CROSS_COMPILE=ia64-linux-gnu- -j4 dist-kernels
for i in linux-2.6-xen ; do make $i-install || exit 1; done
...
*
Xen hypervisor support (XEN) [Y/n/?] y
Xen/IA64 exposure p2m table (XEN_IA64_EXPOSE_P2M) [Y/n/?] (NEW)
Obviously that's no good for an automatic test system.
The tools build stops with some kind of linker exec format problem
which I admit I don't understand and haven't investigated:
mariner:xen-unstable-2.hg> PATH=/usr/local/ia64/bin:$PATH make XEN_TARGET_ARCH=ia64 CROSS_COMPILE=ia64-linux-gnu- -j4 dist-tools
make -C tools install
...
make[5]: Entering directory `/u/iwj/work/xen-unstable-2.hg/tools/blktap/lib'
ia64-linux-gnu-gcc -O2 -fomit-frame-pointer -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I. -I../../../tools/libxc -I../../../tools/include -I../../../tools/xenstore -I../../../tools/include -Werror -Wno-unused -fPIC -D _GNU_SOURCE -Wp,-MD,.libblktap.so.3.0.0.d -Wl,-soname -Wl,libblktap.so.3.0 -shared \
-L../../../tools/xenstore -lxenstore -o libblktap.so.3.0.0 xenbus.opic blkif.opic xs_api.opic
/usr/local/ia64/lib/gcc/ia64-linux-gnu/4.1.1/../../../../ia64-linux-gnu/bin/ld: xenbus.opic: Relocations in generic ELF (EM: 3)
/usr/local/ia64/lib/gcc/ia64-linux-gnu/4.1.1/../../../../ia64-linux-gnu/bin/ld: xenbus.opic: Relocations in generic ELF (EM: 3)
xenbus.opic: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[5]: *** [libblktap.so.3.0.0] Error 1
make[5]: Leaving directory `/u/iwj/work/xen-unstable-2.hg/tools/blktap/lib'
This may be some problem with my cross building installation. I built
it roughly following the instructions on the wiki. I used the
prebuilt ia64 sys-root and did a single-stage build of binutils 2.17
and gcc-4.1.1 with the following runes:
After unpacking the sysroot and mkaing a link to it at
/usr/ia64-linux-gnu/sys-root:
cd binutils-2.17/
./configure --with-sysroot=/usr/ia64-linux-gnu/sys-root --target=ia64-linux-gnu --prefix=/usr/local/ia64
PATH=/usr/local/ia64/bin:$PATH make -j4
PATH=/usr/local/ia64/bin:$PATH make install
cd ..
cd gcc-4.1.1/
./configure --with-sysroot=/usr/ia64-linux-gnu/sys-root --with-headers=/usr/ia64-linux-gnu/sys-root/usr/include --target=ia64-linux-gnu --prefix=/usr/local/ia64 --enable-languages=c
PATH=/usr/local/ia64/bin:$PATH make -j4
PATH=/usr/local/ia64/bin:$PATH make install
Ian.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-06-16 15:22 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-03 22:46 cross compiling xen/ia64 Alex Williamson
[not found] <m2n.s.1JWJRb-000DP2@chiark.greenend.org.uk>
2008-06-16 15:22 ` Ian Jackson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.