Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#12031 closed bug (invalid)

Can't build Haiku under Haiku 49058 with GCC 2 or 4

Reported by: danboid Owned by: bonefish
Priority: normal Milestone: Unscheduled
Component: Build System Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

I have patched the Intel 2230 driver into Haiku so now I need to compile it. I was told in IRC I'd need to build Haiku in full before I can compile any daemons / drivers / modules or whatever they're called under BeOS / Haiku but I've not had any luck compiling Haiku git from yesterday under 49058 GCC2H with GCC2 or GCC4.

I used Haikudepot to check that I have all the required packages listed on https://www.haiku-os.org/guides/building/pre-reqs before I ran the relevant configure commands that I have included at the top of the two logs.

I have attached the last few hundred lines of both a failed GCC2 and GCC4 build.

Attachments (2)

haiku-gcc2-build-fail.txt (58.4 KB) - added by danboid 4 years ago.
haiku-gcc4-build-fail.txt (130.0 KB) - added by danboid 4 years ago.

Download all attachments as: .zip

Change History (6)

Changed 4 years ago by danboid

Attachment: haiku-gcc2-build-fail.txt added

Changed 4 years ago by danboid

Attachment: haiku-gcc4-build-fail.txt added

comment:1 Changed 4 years ago by waddlesplash

Keywords: gcc build errors removed

I was told in IRC I'd need to build Haiku in full before I can compile any daemons / drivers / modules or whatever they're called under BeOS / Haiku

Is this driver from FreeBSD? If not, you probably can compile it out-of-tree (on a Haiku system, that is).

Additionally, cross-compiling Haiku on Haiku is pretty finicky, you might want to try a non-cross-compile (in one line, rm -rf generated && ./configure && jam -q -jNUM @nightly-raw). And if it's only one driver you want to build, you can append the target name onto the end of the command line and build just that driver and its dependencies.

Last edited 4 years ago by waddlesplash (previous) (diff)

comment:2 Changed 4 years ago by jessicah

Resolution: invalid
Status: newclosed

comment:3 Changed 4 years ago by danboid

Hi waddlesplash

Thanks for the Haiku compilation tips!

I would suggest that the example configure commands on https://www.haiku-os.org/guides/building/compiling-x86 are changed and explained better.

Under the gcc2 section of that page, I would suggest it says something like:


gcc2 is the default build planned for R1 given it's BeOS binary compatibility enabling native binary BeOS applications to run on Haiku.

If you are compiling under Haiku and just want to do a basic build to test some new code, you can probably just run ./configure with no extra parameters.

If you want to cross-compile Haiku for a different architecture, you'd use a command such as this:

./configure --build-cross-tools x86_gcc2 ../buildtools

gcc4

gcc4 is the default build planned for post-R1. gcc4 doesn't offer complete BeOS binary compatibility, however benefits from using a more-modern toolchain.

To cross-compile using gcc4, run a command such as:

./configure --build-cross-tools x86 ../buildtools

comment:4 Changed 4 years ago by waddlesplash

Except neither of those are the default. The default is x86_gcc2hybrid, which can run binaries from both GCC2 and GCC4. And there's an article for compiling Haiku on Haiku, IIRC.

Note: See TracTickets for help on using tickets.