Opened 9 years ago

Closed 9 years ago

#5191 closed bug (invalid)

Haiku build failure on Suse 11.2 x86_64

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

Description (last modified by axeld)

Haiku build failure on Suse 11.2 x86_64, but all ok on Suse 11.1
Log:
# uname -a
Linux linux-4vdj 2.6.31.5-0.1-desktop #1 SMP PREEMPT 2009-10-26

15:49:03 +0100 x86_64 x86_64 x86_64 GNU/Linux

# gcc --version
gcc (SUSE Linux) 4.4.1 [gcc-4_4-branch revision 150839]
# gcc -dumpmachine
x86_64-suse-linux
# gcc -dumpversion
4.4
# jam -v
Jam 2.5. OS=LINUX. Copyright 1993-2002 Christopher Seiwald.
# ./configure --use-32bit --build-cross-tools-gcc4 x86

../buildtools/

...<skip>
binutils and gcc for cross compilation have been built successfully[[BR]] # jam -q haiku-image
...patience...
...<skip>
...patience...
...found 31623 target(s)...
...updating 12081 target(s)...
InitScript1 generated/haiku.image-init-vars
C++ generated/objects/linux/release/build/libroot/atomic.o
In file included from headers/build/config_build/types.h:9,[[BR]]

from headers/build/os/support/SupportDefs.h:12,[[BR]] from headers/build/os/kernel/OS.h:12,[[BR]] from src/build/libroot/atomic.cpp:5:[[BR]]

headers/build/config_build/HaikuConfig.h:53:3: error: #error Unsupported architecture[[BR]] In file included from src/build/libroot/atomic.cpp:5:[[BR]] headers/build/os/kernel/OS.h:588: error: ‘B_MAX_CPU_COUNT’ was not declared in this scope
...<skip>
...failed C++ generated/objects/linux/release/build/libroot/atomic.o ...
...skipped libroot_build.so for lack of <src!build!libroot>atomic.o...
...skipped <build>addattr for lack of libroot_build.so...
...skipped <HaikuImage>haiku.image-init-vars for lack of <build>addattr...
...skipped haiku.image for lack of <HaikuImage>haiku.image-init-vars...
...failed updating 1 target(s)...
...skipped 4 target(s)...
...updated 1 target(s)...
#

IMHO, problems in build/jam/BuildSetup:

if $(HAIKU_HOST_USE_32BIT) = 1 {
 	# enable GCC -m32 option
 	HOST_GCC_BASE_FLAGS = -m32 ;
} else {
	switch $(HOST_GCC_MACHINE) {
		case x86_64-*	: HOST_PLATFORM_IS_64_BIT = 1 ;
		case i686-apple-darwin10	:
			HOST_PLATFORM_IS_64_BIT = 1 ;
	}
 }

Why "else"?

And in headers/build/config_build/HaikuConfig.h

#ifdef __INTEL__
#	ifdef HAIKU_HOST_PLATFORM_64_BIT
...

It look like __INTEL__ undefined.

Attachments (1)

build64.log (1.8 KB) - added by Grey 9 years ago.

Download all attachments as: .zip

Change History (6)

Changed 9 years ago by Grey

Attachment: build64.log added

comment:1 Changed 9 years ago by axeld

Description: modified (diff)

First of all, you should use Haiku's version of "jam". Does that already help?

BTW, please use {{{ and }}} to indicate preformatted text (the Jamfile quotes). I've updated the description to use it already.

comment:2 Changed 9 years ago by axeld

Description: modified (diff)

You may want to take a look at the WikiFormatting page :-)

comment:3 Changed 9 years ago by axeld

Description: modified (diff)

comment:4 Changed 9 years ago by axeld

Oh, now I see that you define "--use-32-bit" -- why would you want to do that?

comment:5 Changed 9 years ago by bonefish

Resolution: invalid
Status: newclosed

Yep, the "--use-32-bit" is bogus. If you use that, you also have to run configure in a linux32 environment (though for jamming it won't be necessary anymore). Building under 64 bit OpenSuse works just fine for me:

bonefish@backbone:~/develop/haiku/haiku/generated-64bit> uname -a
Linux backbone 2.6.31.8-0.1-desktop #1 SMP PREEMPT 2009-12-15 23:55:40 +0100 x86_64 x86_64 x86_64 GNU/Linux
bonefish@backbone:~/develop/haiku/haiku/generated-64bit> gcc -dumpmachine
x86_64-suse-linux
bonefish@backbone:~/develop/haiku/haiku/generated-64bit> gcc -dumpversion
4.4
bonefish@backbone:~/develop/haiku/haiku/generated-64bit> jam -v
Jam 2.5-haiku-20090626. OS=LINUX. Copyright 1993-2002 Christopher Seiwald.
bonefish@backbone:~/develop/haiku/haiku/generated-64bit> svnversion ..
34884:34888M
bonefish@backbone:~/develop/haiku/haiku/generated-64bit> ../configure -j8 --build-cross-tools-gcc4 x86 ../../buildtools --use-xattr --use-gcc-pipe --include-gpl-addons
[...]
binutils and gcc for cross compilation have been built successfully!
bonefish@backbone:~/develop/haiku/haiku/generated-64bit> jam -q -j8 @image
[...]
Deleting old MIME database ...
Installing MIME database ...
Unmounting ...
...updated 12779 target(s)...
Note: See TracTickets for help on using tickets.