[ros-general] Linux builing ...

Vizzini vizzini at plasmic.com
Thu Nov 27 17:13:18 UTC 2003


On Thu, 2003-11-27 at 05:30, Ciobanu Alexander wrote:
> Are there some FAQ's on how to build ROS on linux ? I mean what do i require 
> and things like that ... 

Here's an e-mail I wrote about six months ago describing my linux build
environment.  Basically, all you really need is the latest MinGW and an
environment variable:

export HOST=mingw32-linux

and you should be able to build.

There are a few things in this procedure that have changed a little, but
nothing too material.  Don't try to check out wine, as mentioned below.

Good luck.

 -Vizzini

-------------------------


1) set up system

(i run a debian testing system and the versions in testing are pretty
much the same as on reactos.com)
apt-get install bochs
apt-get install bochs-wx
apt-get install mingw32
apt-get install mingw32-binutils
apt-get install mingw32-runtime
apt-get install nasm

debian's mingw doesn't name itself the way ros expects, so i made a bin
directory in ~/ros:
mingw32-ar -> /usr/bin/i586-mingw32msvc-ar
mingw32-as -> /usr/bin/i586-mingw32msvc-as
mingw32-dlltool -> /usr/bin/i586-mingw32msvc-dlltool
mingw32-g++ -> /usr/bin/i586-mingw32msvc-g++
mingw32-gcc -> /usr/bin/i586-mingw32msvc-gcc
mingw32-ld -> /usr/bin/i586-mingw32msvc-ld
mingw32-nm -> /usr/bin/i586-mingw32msvc-nm
mingw32-objcopy -> /usr/bin/i586-mingw32msvc-objcopy
mingw32-objdump -> /usr/bin/i586-mingw32msvc-objdump
mingw32-size -> /usr/bin/i586-mingw32msvc-size
mingw32-strings -> /usr/bin/i586-mingw32msvc-strings
mingw32-strip -> /usr/bin/i586-mingw32msvc-strip
mingw32-windres -> /usr/bin/i586-mingw32msvc-windres

added to bashrc:
export PATH=~/ros/bin:$PATH
export HOST=mingw32-linux


2) make bochs work

 - created a 500mb disk in debian's setup wizard
 - changed ram to 16mb, disabled com1 and lpt1 in .bochsrc
 - downloaded an iso of freedos from freedos.org and booted bochs with
it
     (i get a dlopen error on bochs startup but i ignore it)
 - ran the freedos install onto my bochs partition


3) build the os

cvs -z9 :pserver:cvsanon at osexperts.com:/CVS/ReactOS co reactos
cvs -z9 :pserver:cvsanon at osexperts.com:/CVS/ReactOS co rosdocs
cvs -z9 :pserver:cvsanon at osexperts.com:/CVS/ReactOS co rosapps
cvs -z9 :pserver:cvsanon at osexperts.com:/CVS/ReactOS co wine
cvs -z9 :pserver:cvsanon at osexperts.com:/CVS/ReactOS co freeldr


 - cd into each dir and run make
 - freeldr's makefile had to be patched (posted to ros-kernel a couple
days ago)

4) build an iso and test

 - i ported install.bat to bourne shell and used it to build an install
tree
 - mkisofs -o ros.iso iso/
 - booted freedos with d: pointed to that iso
 - copied everything from the iso into the c:\reactos subdir
     --> note that system32 must be in c:\reactos\ or it bugchecks
INACCESSIBLE_BOOT_DEVICE
 - modified boot.bat to debug to /DEBUGPORT:SCREEN (couldn't get kdb
working right with bochs debug)
    --> loadros.com seems really sensitive about command-line arguments
and i had to fiddle with whitespace to make it work

That left me with a usable reactos system.





More information about the Ros-general mailing list