Building haiku in Fedora Linux

Ok, so I can only assume that alot of people have had Haiku built with Ubuntu Linux, since that seems to be the only guide available when it concerns building Haiku through linux . My latest attempts have only been met in failure in getting the image to build within Fedora 9 at the moment (using the only guide as a guide)… I feel that I am close but I am a little lost in what to do to get the image to build, so the first question being has anyone used Fedora Linux to build Haiku?

Second is, did you succeed in the build?

Third is, any advice for others in their attempts?

Thank you.

Yes, Haiku builds on Fedora 9 because I have done it myself.

  1. you must install gcc, bison & flex
  2. you’ll also need subversion ( to download & update the source )
  3. you must download both haiku & buildtools source trees
  4. then build Haiku’s jam ( which you use later ), etc.

Rest of the instructions can be found here:
http://www.haiku-os.org/documents/dev/getting_linux_developer_tools

You can use other options with configure; run ./configure --help for the list.

  1. in haiku folder
  2. ./configure --build-cross-tools …/buildtools
    builds Haiku’s gcc2.95 cross compiler
  3. jam
    builds Haiku

haiku & buildtools are separate sub-folders under the same parent folder.

PS you may also need: automake, autoconf, perl, gawk - can’t say for sure because I have these installed on my system.

Please describe the failure and hopefully we can spot the issue :slight_smile:

I had a similar problem building haiku on Fedora 9. I can’t give you the exact error as I have removed that linux partition for now, but it was due to missing stropts.h header. I couldn’t find a Fedora 9 package that had that header and so was never able to build the haiku image on Fedora core 9. Suggestions?

stropts.h looks familiar. I believe I may have had the same issue and had trouble finding what package to install to get it.

If I recall correctly. I downloaded that header from koders.com; these headers are for Linux.

I believe I used the one intended for CentOS 5. Click download and put it in /usr/include

http://www.koders.com/c/fidB9EEB025E4EADC8A7E5C990C2FB5A832406EBAF5.aspx?s=md5

Sorry for the rather long time between responses, I am sure that you heard about the infrastructure issues in Fedora-land. I have been sort of busy tracking that, among the other things that I do in life (like looking for work).

I was wondering why build jam, since if… from what I can tell is that Fedora happens to have jam in it’s repos, but meh… I will build it if only to humour the build. That said I will trying again to build an image. If only to keep busy.

From what I can remember, it was the image that was failing to build. Again, going to try again… see if I can reproduce this, resiliently got a new system… that will help with things I hope.

You will also require the following headers:
bits/xtitypes.h
bits/stropts.h

Both of these can be found on Koders too.

I re-installed Fedora myself a little while back and had to install the 3 missing header files to get Haiku to build.

I know Fedora works because this is what I’ve built Haiku on.

You have to install many development tools. Missing any of these will cause the image to not build.

You probably won’t get far using a non-Haiku version of Jam. Jam hasn’t been maintained for years, but Haiku’s version of jam is bug-fixed to work properly for building Haiku. Haiku is a huge project, so failures in Jam that would go unnoticed on smaller projects absolutely had to be fixed for Haiku’s purposes :slight_smile:

If you also want to keep the “official” jam that Fedora provides, you could always install Haiku’s jam as “hjam” or whatever and invoke it as such when you build Haiku.

As I said, meh… I better that I keep the build requirements as it stands. Much less complications along the way.

Ok, so I am playing around with this new image and I think that I might have an issue to get the image bootable. Assuming that there is a way to to make haiku bootable on a secondary drive. Yes, yet again I am asking for help. While following this, I seem to be having an issue. I am posting it here since I think it’s might be helpful…

...found 1 target(s)... ...updating 1 target(s)... RunCommandLine1 run_0 /bin/sh: line 7: /dev/sdb2: Permission denied

target=target;
for t in ; do
target=${target}X
eval "${target}=${t}"
done
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/haiku/trunk/generated/objects/linux/lib
:makebootable /dev/sdb2

…failed RunCommandLine1 <unique!targets>run_0…
…failed updating 1 target(s)…

If not, please direct me to the right place to post something like this.

Looks like: Permission denied on /dev/sdb2

Can you build the image normally without sending it directly to a partition?

When I build to a partition, I end up doing the following:

sudo chmod o+r /dev/sdb
sudo chmod o+rw /dev/sdb2

that way I don’t have to build as root :slight_smile:

Following these two guides should get you were you want:

http://www.haiku-os.org/documents/dev/building_haiku_on_ubuntu_linux_step_by_step

and

http://www.haiku-os.org/documents/dev/installing_haiku_to_a_partition_from_linux

(although, as mentioned above, i avoid having to use “sudo” to jam the image to the partition)

Also, take a look at UserBuildConfig.Readme - the build profiles are nice to use

  • Urias

You know, after all of that... still nothing. Maybe I should make a little more room. Since it's been a while I will look into it. Maybe it has something to do with the fact that I am using an 'sdXX' drive.

I will look into it, something seems off.