X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=SETUP.WINDOWS;fp=SETUP.WINDOWS;h=92bfff8899f4c02a3ad85380238e80ce38f4557f;hp=0000000000000000000000000000000000000000;hb=ddc16b0737cf58f7aa90a69c6652cdf4090aec51;hpb=626595465a2c6987606a6bc697df65130ad8c2d3 diff --git a/SETUP.WINDOWS b/SETUP.WINDOWS new file mode 100644 index 0000000..92bfff8 --- /dev/null +++ b/SETUP.WINDOWS @@ -0,0 +1,74 @@ +Although our development environment is primarily geared to Linux, it +is possible to develop and test on Windows, using Cygwin. To do so, +do the following, adapting it to your local environment. + +To develop on windows, you will install: + +- a specific version of binutils (targetting i386-elf) +- a specific version of gcc (targetting i386-elf) +- a specific version of nasm, patched for VT and SVM instructions +- the as86, bcc, and ld86 tools from Dev86 (these are needed to build +the bioses and other vm boot package components) + + +To start, install cygwin (see cygwin.org). We have done a complete +installation ("all" -> "install") in our environment, and would +recommend it. + +Run a bash shell. + +Check out vmm-dev from CVS, or unpack a copy from a tarball. +In the following, we assume /home/pdinda/Codes/vmm-dev +is the checked-out directory + +export DEVROOT=/home/pdinda/Codes/vmm-dev +mkdir $DEVROOT/devtools +export LOCATION=$DEVROOT/devtools + +Now build and install binutils into $LOCATION: + +cd $DEVROOT/utils +tar xfz binutils-2.16.91.0.7.tar.gz +cd binutils-2.16.91.0.7 +./configure --prefix=$LOCATION/i386 --target=i386-elf --disable-nls +make -j 4 all +make install + +Now build and install gcc: + +cd $DEVROOT/utils +tar xfz gcc-3.4.6.tar.gz +export PATH=$LOCATION/i386/bin:$PATH +cd gcc-3.4.6 +./configure --prefix=$LOCATION/i386 --target=i386-elf --disable-nls --enable-languages=c,c++ --without-headers +make -j 4 all-gcc +make install-gcc + +Now build and install the patched nasm: + +cd $DEVROOT/utils +tar xfz nasm-0.98.39.tar.gz +cd nasm-0.98.39 +patch < ../vmx.patch +patch < ../nasm-install.patch +./configure --prefix=$LOCATION +make +make install + +install bcc and other components of dev86: + +cd $DEVROOT/utils +tar xvf Dev86src-0.16.17.tar.gz +cd dev86-0.16.17 +make as86 ld86 bcc86 +make -C cpp +cp as/as86.exe bcc/bcc.exe bcc/bcc-cc1.exe cpp/bcc-cpp.exe ld/ld86.exe $LOCATION/bin + +Now test: + +cd $DEVROOT/vmm-hack1/build +export PATH=$PATH:$LOCATION/bin + +make world + +This should succeed, leaving you with a vmm.img file.