Login

logo6


Haikuware's Bloggers

This blog is mainly about the progress on the FreeBSD WLAN-Stack-port.

WLAN-Stack sum-up, on-going and future work.

Posted by: colin

Tagged in: Untagged 

colin

As you know the bounty was split into 3 stages.

Stage 1 included the big task of porting FreeBSD's wlan stack and making the atheros wifi driver work on Haiku.


Many testers helped out to improve the stack and the driver by filing bug reports. Special thanks goes to Joe Prostko, who helped me tracking down an interrupt storm during an intense IRC debug session lasting one week.

In the end of stage one, after both components were reasonable stable, I was granted commit access to Haiku's repository. Because of that you can now download a nightly image and have wifi for your atheros card out of the box.

This also changes the location where you file bug reports. From now on they are posted directly in Haiku's Trac system where you should select "Network & Internet" "Wireless" in the Component field. Though you need to be logged in to post a new bug.

The bug tracking system on osdrawer will no longer be used for this purpose. It continues existence solely for solving remaining open bugs and to have a backlog of solved bugs.

Stage 2 focused on implementing a configuration tool, so that you can scan for and join a specific wlan. It will take some time, until it is included into Haiku. This is mainly due to its review by another Haiku developer showing up some issues in the API, which is used by this tool. Solving these will take time.

At the moment the tool can be used with R1Alpha1, only. So now there is the situation where you have the atheros driver included in the nigthlies, but you cannot use the configuration tool with it.

To work around this I will publish recompiled versions of the configuration tool on osdrawer. This recompiled version can be spotted by the 5 digit revision number matching the Haiku revision it was compiled on.

So bug tracking for and retrieving of the configuration tool continues on osdrawer.

Stage 3 was about making all the FreeBSD 8 wlan drivers compileable under Haiku. This stage was successfully completed on December, 10 15 th. Moreover I started to make them executable right before the end of stage 3. Fact is all wlan drivers are executable now.

As there are:

  • aironetwifi supporting at least
    • Cisco Aironet 350 Series
    • Aironet PCI4500
    • Aironet PCI4800
  • atheroswifi supporting almost every chipset outthere (though no AR9285 chips)
  • broadcom43xx supporting
    • BCM4301, BCM4306, BCM4307, BCM4309, BCM4311, BCM4312  and BCM4318
  • iprowifi2100 supporting the 2100 chips
  • iprowifi2200 supporting
    • 2200BG
    • 2225BG
    • 2915ABG
  • iprowifi3945 supporting the 3945 chips
  • iprowifi4965 supporting the 4965 chips
  • marvell88w8335 supporting
    • Marvell Libertas 88W8310
    • Marvell Libertas 88W8335
  • marvell88w8363 supporting the 88W8363 chips
  • ralinkwifi supporting
    • RT2560
    • RT2561S
    • RT2561
    • RT2661
  • wavelanwifi supporting at least
    • 3Com Airconnect
    • GLPRISM2 WaveLAN
    • Intersil Prism3
    • Intersil Prism2.5
    • Linksys WDT11
    • Netgear MA301
    • PRISM2STA WaveLAN
    • Siemens SpeedStream
    • SMC 2602W
    • Us Robotics 2415
    • Addtron AWA-100 PCI

There is one restriction all drivers have in common: They only support PCI based devices, though no PCMCIA, CardBus, ExpressCard, USB or ISA based ones.

Only PCI, miniPCI, PCI-Express, miniPci-Express and PCI-X are supposed to work.

At the moment work is going on to include those drivers into the nightly images by default. This includes struggling with all the different firmware issues and their respective licenses putting different constraints on how to ship them with Haiku. A listing of the firmware based drivers can be found on the WirelessFirmwares wiki.

Once these firmware obstacles are taken, it is time for testers again. You'll take notice of it.

On big item on the wifi roadmap is encryption. Now that wifi is there, this is the biggest request I receive from different people. You are heared, but it will take time, and I won't start work on it until I finished my thesis and got myself a job ;) I think christmas 2010 is doable...

Besides the already mentioned Joe Prostko, I wanne thank Karl for helping me out of haikuware issues and for handling the money transfer professionally, Mark Erben and Daniel Bärthel for donating hardware, the Haiku developers for providing tips and critics, the numerous testers for their time and patience, the community for their applause and enthusiasm and to all the bounty donators for their trust!

The work continues...


2009-09-24: Meeting the Deadline

Posted by: colin

Tagged in: Untagged 

colin

After several month of work to make WLAN a reality for Haiku the deadline finally arrives. Now let's look on the bounty fullfilment criterias and their status:

  • WLAN stack compiles error free within Haiku-gcc2 -> complete fulfilled:
    • Compiles 100% errorfree (in regard to Haiku R1/alpha1)
  • FreeBSD 7.1 WLAN drivers compile errofree -> partial fulfilled:
    • This one was updated to FreeBSD 8 to get the latest and hottest
    • 5 out of 10 drivers compile errorfree (1 is working fully -> atheros)
      • I'm not publishing the other 4 by intent. Because error free compilation doesn't mean that there is a driver binary at the end. It only means, that the compatibility layer provides function. And I don't wanne rise expectations that those 4 drivers are working ones.
  • At least 90 % of the testers passed testcriterias -> dropped
    • I never published any criterias, so who could verify them now?
  • Configuration tools are working in respect to my testenvironment -> partial fulfilled:
    • Haiku's builtin tools (Network Preflet, NetworkStatus Applet, ifconfig) are fully supported
    • WLAN specifc tools is missing
  • Atheros driver is working in respect to the testenvironment -> complete fulfilled


So what about the bounty now? Well due to only partial fulfilment the payment will be split up and will be bound to further sub goals.


  • The first 1/3 of the bounty, was received today for completely fulfilling 2 criterias, at least. Thanks to all donators!!!
  • The second payment will be for implementing a WLAN specific configuration tool till November, 15 th, 2009

    This config tool must provide the ability to
    • Show and scan available WLANs (show means presenting the name of the WLAN)
    • Select and Join a specific WLAN (important when there are several open WLANs around)
  • The third payment will be for making the last 5 WLAN drivers compile till December, 15 th, 2009

    Including following drivers:
    • an: Aironet Communications 4500/4800
    • iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG
    • ral: Ralink Technology RT2500/RT2501/RT2600
    • wi: Lucent Hermes & Intersil PRISM-II/PRISM-2.5/Prism-3
    • wpi: Intel 3945ABG


This will ensure progress towards implementing WLAN for Haiku. I think this splitting is in the best interest of all, especially of those who donated money to the bounty. Thank you!!!.


2009-09-24: Meeting the Deadline

Posted by: colin

Tagged in: Untagged 

colin

After several month of work to make WLAN a reality for Haiku the deadline finally arrives. Now let's look on the bounty fullfilment criterias and their status:

  • WLAN stack compiles error free within Haiku-gcc2 -> complete fulfilled:
    • Compiles 100% errorfree (in regard to Haiku R1/alpha1)
  • FreeBSD 7.1 WLAN drivers compile errofree -> partial fulfilled:
    • This one was updated to FreeBSD 8 to get the latest and hottest
    • 5 out of 10 drivers compile errorfree (1 is working fully -> atheros)
      • I'm not publishing the other 4 by intent. Because error free compilation doesn't mean that there is a driver binary at the end. It only means, that the compatibility layer provides function. And I don't wanne rise expectations that those 4 drivers are working ones.
  • At least 90 % of the testers passed testcriterias -> dropped
    • I never published any criterias, so who could verify them now?
  • Configuration tools are working in respect to my testenvironment -> partial fulfilled:
    • Haiku's builtin tools (Network Preflet, NetworkStatus Applet, ifconfig) are fully supported
    • WLAN specifc tools is missing
  • Atheros driver is working in respect to the testenvironment -> complete fulfilled


So what about the bounty now? Well due to only partial fulfilment the payment will be split up and will be bound to further sub goals.


  • The first 1/3 of the bounty, was received today for completely fulfilling 2 criterias, at least. Thanks to all donators!!!
  • The second payment will be for implementing a WLAN specific configuration tool till November, 15 th, 2009

    This config tool must provide the ability to
    • Show and scan available WLANs (show means presenting the name of the WLAN)
    • Select and Join a specific WLAN (important when there are several open WLANs around)
  • The third payment will be for making the last 5 WLAN drivers compile till December, 15 th, 2009

    Including following drivers:
    • an: Aironet Communications 4500/4800
    • iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG
    • ral: Ralink Technology RT2500/RT2501/RT2600
    • wi: Lucent Hermes & Intersil PRISM-II/PRISM-2.5/Prism-3
    • wpi: Intel 3945ABG


This will ensure progress towards implementing WLAN for Haiku. I think this splitting is in the best interest of all, especially of those who donated money to the bounty. Thank you!!!.


2009-08-30: Status update

Posted by: colin

Tagged in: WLAN , Wifi-Stack , WiFi

colin
This took quite some time without any visible outcome. Well if you'd put my head into a mr-tomograph you could see the IEEE arrow spinning around. Because of the final date coming closer I assembled following strategy to achieve WLAN for Haiku and my Master of Science in time:

  1. From 2009-09-01 till 2009-09-24 Porting the FreeBSD 8.0 WLAN Stack so that the goals of the bounty are met After feedback on my FreeBSD 7.1 port, I decided to use the new 8.0 instead. Mainly due to an updated atheros driver in the 8.0 version. It seems that the 7.1 atheros version doesn't work with netbooks. Although FreeBSD 8.0 isn't released yet, they had a feature freeze some time ago. So it is safe to start porting now.
  2. From 2009-09-28 till 2009-10-28 Finishing the design of the Haiku-tailored object oriented WLAN Stack with little respect to any FreeBSD compatibility
  3. From 2009-11-01 till 2009-12-01 Writing down my master-thesis about the outcome of 2.
  4. From 2009-12-03 till 2010-01-10 Preparing the defence of the thesis
  5. Extend 2. for FreeBSD compatibility
  6. Implement it.

2009-07-13: WiFi-stack design overview

Posted by: colin

Tagged in: WLAN , WiFi

colin

The next step towards the finishline, will be the design of a native Haiku WiFi-stack.The picture below shows a coarse view of how the stack will fit into the networking system.

The image maybe cut on the right border. In this case save the picture and open it with your favorite app.

As you can see there are two distinguished areas, one is colored green the other blue. Green shows already existing infrastructure, blue shows the infrastructure I'm going to provide. The arrows should be read as “depends on, uses features of”.

So the blue ellipse encapsulates the blueprint of the WiFi-stack. The inner structure of the yellow box, saying “WiFi-Stack” will be my next task. The main reasons for designing a Haiku-specific WiFi-stack (in contrast to modify/port the FreeBSD one) are to utilize Haiku's strengths (multithreading, object orientation, ...) and to get smaller driver code (due to lack of all the FreeBSD compatibility code).

After accomplishing the yellow one, I'll pay my attention to the yellow-red gradiented box saying “FreeBSD-Adapter”. This adapter will allow to use FreeBSD's WiFi driver and use them in Haiku with just recompiling them. As you can see this is the same idea as realized for LAN driver's by Hugo Santos.


2009-07-11: WiFi prototype works

Posted by: colin

Tagged in: WLAN

colin

 On the screenshot, you see Firefox surfing www.haiku-os.org and downloading a 100 MiB file from my ftp server in parallel. The terminal is showing the result of the ifconfig command for my WiFi-card.


The image is scaled down and maybe cut on the right border. For full resolution save the picture and open it with your favorite app.

I managed to port the FreeBSD WiFi-stack, utilizing Haiku's FreeBSD compatibility layer. Thus I could use the WiFi-card driver for my atheros chipset from FreeBSD without any major changes to its codebase (I had to move some interrupt handler code into driver-specific glue code). The driver-binary has a size of 500 KiB, due to compiling the WiFi-stack into a static library and statically linking it and the FreeBSD compat layer with the driver. The sources are up in the repository.

The atheros driver should support every atheros chipset, which are supported by the FreeBSD driver (look in the corresponding FreeBSD manpage for more information on supported chipsets).

Designing a Haiku specific WiFi-stack will be my next step. The proposed finish date of the bounty is still 2009/09/24.

For the brave only: The source can be checked out via svn checkout http://svn.osdrawer.net/haiku-wifi/prototype/trunk/wifi. I recommend you use the 3rdparty subdirectory as checkout location, because the Jamfiles expect themselves there. With jam ath everything needed (customized FreeBSD compat layer, WiFi stack, atheros driver) gets built.

Update: For developing I used a gcc2 build environment and Haiku rev. 31286 was the newest I tested it on. There are no settings to set to make this driver work. Just put the driver in /home/config/add-ons/kernel/drivers/bin an make a symlink to /home/config/add-ons/kernel/drivers/dev/net/ath. A reboot could be required to make Haiku recognize the new driver.

To check whether your atheros card gets at least detected by this driver, watch the debug messages during the bootphase or look into the /boot/var/log/syslog file. If you see something like

Adding entry for IEEE 802.11 Wireless Ethernet mode autoselect autoselect
Adding entry for IEEE 802.11 Wireless Ethernet mode autoselect autoselect <adhoc>
Adding entry for IEEE 802.11 Wireless Ethernet mode autoselect autoselect <hostap>
Adding entry for IEEE 802.11 Wireless Ethernet mode autoselect autoselect <flag0,adhoc>
Adding entry for IEEE 802.11 Wireless Ethernet mode autoselect autoselect <monitor>

you know that your card is detected.

Update2: To connect to a WLAN make sure that it is an unprotected (no WPE, WPA, WPA2) one that doesn't need a password for login. On my Fritz!Box this is called "unverschlüsselten Zugang aktivieren" (activate unencrypted access).

For more information on technical aspects of the hardware I use surf to the bounty proposal and select the "Technical Information" tab.


I will give no support for this prototype 'cuz it is a prototype ;-). It is intended for the purpose of gaining knowledge, only.


2009-04-18: Summary

Posted by: colin

Tagged in: Wifi-Stack

colin
After I got RAM-limiting to work (see 2009-04-18: Limiting the available RAM to Haiku) I proceeded in porting the ath driver.

2009-04-18: Limiting the available RAM to Haiku

Posted by: colin

Tagged in: Wifi-Stack

colin
  1. Open the file
    HAIKU/build/config_headers/kernel_debug_config.h
  2. Uncomment and change the line
    //#define LIMIT_AVAILABLE_MEMORY	256
    to
    #define LIMIT_AVAILABLE_MEMORY	1024
    if you wanne limit the available RAM to 1024 MB
  3. Rebuild Haiku

2009-04-17: Summary

Posted by: colin

Tagged in: Wifi-Stack

colin
Spending most of the day into limiting the available RAM to Haiku. Also updating the History document (see 2009-04-16: History: Changing names, how OpenBeOS became Haiku).

2009-04-17: Adding device-id to nvidia driver

Posted by: colin

Tagged in: Wifi-Stack

colin
HAIKU_SRC/add-ons/accelerants/nvidia/engine/nv_general.c

However my card isn't supported eitherway, because it is an 8xxx. This information was gathered from the file

HAIKU_SRC/add-ons/kernel/drivers/graphics/nvidia/README.html

2009-04-16: Summary

Posted by: colin

Tagged in: Wifi-Stack

colin

 

After that I started work on a history document. It's about the name changing process from OpenBeOS to Haiku (see 2009-04-16: History: Changing names, how OpenBeOS became Haiku).

Also trying to run Haiku on my desktop machine, which showed some problems with the amount of memory I've installed (media_addon_server crashes with the error that a vm_page isn't in memory). Started digging in how to limit the used RAM.

And my graphics card ist supported by vesa only, yet, I'll look whether an adding of device-ID to the source will make the nvidia driver work.

 

To get some answers on the following questions I first send an e-mail to the haiku@freelists.org mailinglist. This delivered some answers and arised new questions, which I'm tried to answer, too.

  1. How did the process start?
    The process was started by Michael Phipps (OpenBeOS Founder), to avoid trademark infringement with Palm. “Palm had bought the BeOS intellectual property including trademarks” ([2]). The search for a new name began than with a contest for names.
  2. How many names were proposed?
    During the name search contest nearly 7000 names were proposed. After weeding out unacceptable names by Michael Phipps and Stuart McCoy (Creative Design Team Lead) there were still nearly 100 names left.
    Those “cleaned” proposals were then “batted [...] around in an Admin meeting on IRC” ([1]) to drill the count further down to 15 ([6]) names.
  3. Which names were proposed?
    • Auros
    • Begin
    • Dysis
    • Firebox
    • Firefly
    • Forge
    • Haiku
    • Indigo
    • Infinity
    • Jaffa
    • Mantis
    • Menlo
    • Nemo
    • Nova
    • Terra
     [6]
    Meaning of those names were discussed after their proposal, too ([14]).
  4. Who is Walter?
    There was some discussion about using this name for the new project title. This name arose during the IRC name battling (see: How many names were proposed?), when Bruno G. Albuquerque (OpenBeOS Admin Team member) wrote: “We should just call it Walter” ([2]).
    At the end “Walter” became part of the title of the “North American (Open) BeOS conference” ([11]) “WalterCon” ([8]).
  5. Where did Walter come from?
    Explained by Bruno G. Albuquerque: “[...] It all started when I was watching Cartoon Network [...] and there was this Garfield cartoon going on. In this specific episode Garfield was attending a show called "What is the name of the fish?". [...] a panel was presented to Garfield with several fish names, like "tuna", "sardine", "mullet" and so on. Garfield picked "tuna". Then the guy hosting the show got the card with the correct name of the fish. When he showed the card, the name was... Walter.
    From that moment on, all the time I had to pick a name for anything, it would be Walter.
    [...] It ended up becoming the biggest BeOS-related practical joke ever. :) [...]” ([3, 9]).
  6. How was the vote held?
    After sorting out the last 15 names (see: How many names were proposed?) the search process became much more public. A web page was made, where the community could vote for their favorite name. “The admin team voted separately” ([2]). Every voter then had to rank his five favorites.
  7. Why distinguish between community and admin team votes?
    There was an agreement, that the “[...] admin team (which was really the core developers) deserved more say than the community” ([13]).
  8. How long did the vote take?
    The vote started on Wednesday, 23 October 2002 ([10]) and was finished on 2003/06/09 at least ([12]).
    TODO (did it really take nearly 8 month to complete the vote? I guess there was some delay between end of the vote and the announcment that a name was chosen so the finish date above is incorrect in principle.)
  9. How was the allocation of votes to the different name-proposals?
    TODO (Michael Phipps looks into it. Thx)
  10. When was the new name chosen?
    On 2002/10/29 the name was internally chosen "during the admin meeting when [...] the final decision on things" ([16]) were made. By the way, the domain haiku-os.org was registered on that same day ([16]).
  11. What happened in-between chosing and publishing the name?
    After the new name was chosen, a lot of work had to be done. A “web site design themed around the new name, the founding of an non-profit organization [Haiku Inc., the author] [...], the design of a new logo, etc” ([12, 15]).
  12. When was the new name published?
    The new name was published on 2004/04/19 ([17]) during the first incarnation of the WalterCon ([5]) (see: Who is Walter?).
    The first WalterCon lasted from 2004/06/19 to 2004/06/20 ([7]).
  13. What happend to the content of openbeos.net?
    Don't know where the original content is stored nowadays. But there exist several copies of this site at the Internet Archive Wayback Machine.
    Each copy was stored on different dates. The freshest copy I could access was made on 2003/12/13. However not every content was stored.
    TODO (was openbeos.net or it's compagnion sites www.openbeos.org, open-beos.sourgeforge.net officially backed-up anywhere?)

 

References

[1] Haiku (operating system). Wikipedia. en.wikipedia.org. Online at http://en.wikipedia.org/wiki/Haiku_(operating_system). Access date: 2009/04/16.

[2] Re: From OpenBeOS to Haiku. Michael Phipps. Mailinglist haiku@freelists.org. Posted on: 2009/04/15. Online at http://www.freelists.org/post/haiku/From-OpenBeOS-to-Haiku,7. Access date: 2009/04/16.

[3] The Binky Show. Garfield and Friends. Season 1, Show 9. First showed: 1988/11/12. [4]

[4] List of Garfield and Friends episodes. Wikipedia. en.wikipedia.org. Online at http://en.wikipedia.org/wiki/List_of_Garfield_and_Friends_episodes. Access date: 2009/04/16.

[5] Re: From OpenBeOS to Haiku. DarkWyrm. Mailinglist haiku@freelists.org. Posted on: 2009/04/15. Online at http://www.freelists.org/post/haiku/From-OpenBeOS-to-Haiku,1. Access date: 2009/04/16.

[6] OpenBeOS name Voting Begins. Posted by Ryan. www.begroovy.com. Posted on: 2002/10/25. Online at http://www.begroovy.com/wordpress/?p=343. Access date: 2009/04/16.

[7] WalterCon 2004 Announced. Posted by Jon. www.begroovy.com. Posted on: 2004/03/22. Online at http://www.begroovy.com/wordpress/?p=450. Access date: 2009/04/16.

[8] References Re: From OpenBeOS to Haiku. Bruno G. Albuquerque. Mailinglist haiku@freelists.org. Posted on: 2009/04/15. Online at http://www.freelists.org/post/haiku/From-OpenBeOS-to-Haiku,2. Access date: 2009/04/16.

[9] Where did Walter come from?. Bruno G. Albuquerque. open-beos.sourceforge.net. Posted on: 2002/11/11. Online at http://web.archive.org/web/20030316065519/open-beos.sourceforge.net/news.php?mode=display&id=250. Access date: 2009/04/16.

[10] Project Namevote!. Kurtis Kopf. open-beos.sourceforge.net. Posted on: 2002/10/23. Online at http://web.archive.org/web/20040918224420/open-beos.sourceforge.net/news.php?mode=display&id=240. Access date: 2009/04/16.

[11] Announcement: WalterCon. Tyler Dauwalder. open-beos.sourceforge.net. Posted on: 2003/10/25. Online at http://web.archive.org/web/20040112023258/open-beos.sourceforge.net/news.php?mode=display&id=328. Access date: 2009/04/16.

[12] Name, website and other statuses. Michael Phipps. open-beos.sourceforge.net. Posted on: 2003/06/09. Online at http://web.archive.org/web/20030804114006/open-beos.sourceforge.net/print/print_news_html.php?id=306. Access date: 2009/04/17.

[13] Re: From OpenBeOS to Haiku. Michael Phipps. Mailinglist haiku@freelists.org. Posted on: 2009/04/16. Online at http://www.freelists.org/post/haiku/From-OpenBeOS-to-Haiku,20. Access date: 2009/04/17.

[14] OBOS new name. Mahmoud Al Gammal et. al. Mailinglist haiku@freelists.org. Posted on: 2002/10/25 - 2002/11/04. Online at http://www.freelists.org/post/haiku/OBOS-new-name. Access date: 2009/04/17.

[15] Re: orca. Michael Phipps. Mailinglist haiku@freelists.org. Posted on: 2003/02/11. Online at http://www.freelists.org/post/haiku/orca,9. Access date: 2009/04/17.

[16] Re: From OpenBeOS to Haiku. Tyler Akidau. Mailinglist haiku@freelist.org. Posted on: 2009/04/20. Online at http://www.freelists.org/post/haiku/From-OpenBeOS-to-Haiku,24. Access date: 2009/04/21.

[17] BeOS. Operating System Documentation Project. www.operating-system.org. Online at http://www.operating-system.org/betriebssystem/_english/bs-beos.htm. Access date: 2009/04/21.


2009-04-15: Summary

Posted by: colin

Tagged in: Wifi-Stack

colin
Finished the composition of the presentation.

2009-04-14: Summary

Posted by: colin

Tagged in: Wifi-Stack

colin
Preparing a presentation of my current work state and my master thesis for thursday.

 

To install the 32 bit chroot jail use the following:

cd /
su
aptitude install schroot debootstrap
mkdir /chroot/
cd /chroot
debootstrap --arch=i386 intrepid /chroot http://de.archive.ubuntu.com/ubuntu
unalias cp
cp /var/lib/locales/supported.d/* /chroot/var/lib/locales/supported.d/
cp -f /etc/apt/sources.list /chroot/etc/apt/
cp -f /etc/passwd /chroot/etc/
cp -f /etc/shadow /chroot/etc/
cp -f /etc/group /chroot/etc/
cp -f /etc/sudoers /chroot/etc/
cp -f /etc/hosts /chroot/etc/
echo "##chroot
/home /chroot/home none rbind 0 0
/dev /chroot/dev none rbind 0 0
/etc /chroot/etc/.root none bind 0 0
/proc /chroot/proc none rbind 0 0
/media /chroot/media none rbind 0 0
/mnt /chroot/mnt none rbind 0 0
/tmp /chroot/tmp none rbind 0 0" >> /etc/fstab
mkdir /chroot/etc/.root
mount -a
chroot /chroot
dpkg-reconfigure locales
apt-get update
apt-get upgrade
apt-get install subversion autoconf automake texinfo flex bison gawk build-essential gcc-4.2 g++-4.2
apt-get install wget
ln -sf /usr/bin/gcc-4.2 /usr/bin/gcc
ln -sf /usr/bin/g++-4.2 /usr/bin/g++

After finishing those steps, you have to compile all the Haiku build tools from within the chroot environment. If you wonder how to enter the chroot-environment then look at line 27: chroot /chroot. After issuing this command you're in. To quit this environment type exit.

The Haiku build process from within the chroot is nearly the same as described on haiku-os.org. Only the compilation of Haiku's gcc needs some tweaking, even in the chroot.

The error message Unrecognized host system name x86_64-unknown-linux-gnu will occure otherwise. To compile it navigate in to Haiku's source directory and use setarch i386 in front of the configure command:

setarch i386 ./configure --build-cross-tools ../buildtools/

The Largest BeOS/Haiku Software Repository