#12910: Haiku x86-64 build won't build itself
--------------------------+------------------------------
Reporter: Luposian | Owner: bonefish
Type: bug | Status: new
Priority: normal | Milestone: R1
Component: Build System | Version: R1/Development
Keywords: | Blocked By:
Blocking: | Has a Patch: 0
Platform: x86-64 |
--------------------------+------------------------------
Latest Revision (as of 8/8/16). It doesn't stop at interrupt.o anymore,
but stops at boot_loader_bios_ia32, which I assume basically means the
same thing?
My question is, if you can build Haiku x86-64 in another OS (which is
bootable, since I download bootable versions (.iso and .raw) now and
then), why can't you build a bootable version within Haiku x86-64 itself?
Can't you just modify the code to make the build work within Haiku x86-64
itself?
How much would need to be donated to to allow complete building of Haiku
x86-64 from within Haiku x86-64 once again (which worked many years ago,
because I was doing it)?
Relevant output shown below:
Welcome to the Haiku shell.
~> cd haiku/haiku
~/haiku/haiku> jam -q haiku-anyboot-image
Starting build of type regular ...
qrencode support not available on x86_64
/boot/home/haiku/haiku/src/add-ons/kernel/debugger/disasm/x86_64/Jamfile:
No such file or directory
/boot/home/haiku/haiku/src/bin/debug/ltrace/arch/x86_64/Jamfile: No such
file or directory
Skipping setjmp_test2.S test on non-x86
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...patience...
...found 138005 target(s)...
...updating 12981 target(s)...
MkDir1
/boot/home/haiku/haiku/generated/objects/haiku_host/x86_64/release/tools/anyboot
C++
/boot/home/haiku/haiku/generated/objects/haiku_host/x86_64/release/tools/anyboot/anyboot.o
Link
/boot/home/haiku/haiku/generated/objects/haiku_host/x86_64/release/tools/anyboot/anyboot
Chmod1
/boot/home/haiku/haiku/generated/objects/haiku_host/x86_64/release/tools/anyboot/anyboot
BootLd
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_loader_bios_ia32
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `BIOSDrive::WriteAt(void*, long long, void const*, unsigned
long)':
(.text+0xf48): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `BIOSDrive::WriteAt(void*, long long, void const*, unsigned
long)':
(.text+0xf79): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `BIOSDrive::ReadAt(void*, long long, void*, unsigned long)':
(.text+0x1128): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `BIOSDrive::ReadAt(void*, long long, void*, unsigned long)':
(.text+0x1143): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `BIOSDrive::ReadAt(void*, long long, void*, unsigned long)':
(.text+0x11b2): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `BIOSDrive::ReadAt(void*, long long, void*, unsigned long)':
(.text+0x11c8): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `add_block_devices(DoublyLinkedList<Node,
DoublyLinkedListStandardGetLink<Node> >*, bool) [clone .part.9]':
devices.cpp:(.text+0x1c9c): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o:
In function `cpu_init':
(.text+0x3434): undefined reference to `udivdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_partitions.a(efi_gpt.o):
In function `efi_gpt_identify_partition(int, partition_data*, void)':
efi_gpt.cpp:(.text+0x2ce): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_partitions.a(PartitionMap.o):
In function `Partition::CheckLocation(long long) const':
PartitionMap.cpp:(.text+0x56f): undefined reference to `moddi3'
PartitionMap.cpp:(.text+0x58f): undefined reference to `moddi3'
PartitionMap.cpp:(.text+0x5c5): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_partitions.a(PartitionMap.o):
In function
`PrimaryPartition::GetPartitionDescriptor(partition_descriptor*) const':
PartitionMap.cpp:(.text+0x8b1): undefined reference to `divdi3'
PartitionMap.cpp:(.text+0x8cb): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_partitions.a(PartitionMap.o):
In function
`LogicalPartition::GetPartitionDescriptor(partition_descriptor*, bool)
const':
PartitionMap.cpp:(.text+0xcfa): undefined reference to `divdi3'
PartitionMap.cpp:(.text+0xd1a): undefined reference to `divdi3'
PartitionMap.cpp:(.text+0xd65): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a(bfs.o):bfs.cpp:(.text+0xe8):
more undefined references to `divdi3' follow
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a(Stream.o):
In function `BFS::Stream::FindBlockRun(long long, BFS::block_run&, long
long&)':
Stream.cpp:(.text+0x766): undefined reference to `moddi3'
Stream.cpp:(.text+0x77a): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a(Stream.o):
In function `BFS::Stream::ReadAt(long long, unsigned char*, unsigned
long*)':
Stream.cpp:(.text+0x9b1): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a(BPlusTree.o):
In function `BFS::bplustree_header::IsValid() const [clone .part.7]':
BPlusTree.cpp:(.text+0x21): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a(BPlusTree.o):
In function `BFS::CachedNode::InternalSetTo(BFS::Transaction*, long
long)':
BPlusTree.cpp:(.text+0x173): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a(BPlusTree.o):
In function `BFS::CachedNode::SetTo(long long, BFS::bplustree_node const,
bool)':
BPlusTree.cpp:(.text+0x344): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Volume.o):
In function `FATFS::Volume::_ClusterAllocated(unsigned long) [clone
.part.9]':
Volume.cpp:(.text+0x2e): undefined reference to `divdi3'
Volume.cpp:(.text+0x5a): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Volume.o):
In function `FATFS::Volume::NextCluster(unsigned long, unsigned long)':
Volume.cpp:(.text+0x646): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Volume.o):
In function `FATFS::Volume::_UpdateCluster(unsigned long, unsigned long)':
Volume.cpp:(.text+0x79b): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Directory.o):
In function `FATFS::Directory::UpdateDirEntry(FATFS::Volume&, long long,
unsigned long, unsigned long)':
Directory.cpp:(.text+0x758): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Directory.o):
In function `FATFS::Directory::_AddEntry(FATFS::dir_entry&, long long&)':
Directory.cpp:(.text+0xbf1): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Stream.o):
In function `FATFS::Stream::Stream(FATFS::Volume&, unsigned long, long
long, char const*)':
Stream.cpp:(.text+0x8f): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Stream.o):
In function `FATFS::Stream::_FindCluster(long long, unsigned long&)':
Stream.cpp:(.text+0x2ba): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Stream.o):
In function `FATFS::Stream::_FindOrCreateCluster(long long, unsigned
long&, bool&)':
Stream.cpp:(.text+0x44d): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Stream.o):
In function `FATFS::Stream::FindBlock(long long, long long&, long long&)':
Stream.cpp:(.text+0x59d): undefined reference to `moddi3'
Stream.cpp:(.text+0x5e6): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Stream.o):
In function `FATFS::Stream::ReadAt(long long, void*, unsigned long*, long
long*)':
Stream.cpp:(.text+0x6cb): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a(Stream.o):
In function `FATFS::Stream::WriteAt(long long, void const*, unsigned
long*, long long*)':
Stream.cpp:(.text+0xa34): undefined reference to `moddi3'
Stream.cpp:(.text+0xa90): undefined reference to `moddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_loader.a(DataIO.o):
In function `BMallocIO::SetSize(long long)':
DataIO.cpp:(.text+0x5c8): undefined reference to `divdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `number(Buffer&, unsigned long long, unsigned long, int, int,
int)':
kernel_vsprintf.cpp:(.text+0xdf3): undefined reference to `umoddi3'
kernel_vsprintf.cpp:(.text+0xe08): undefined reference to `udivdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `vsnprintf':
(.text+0x14bf): undefined reference to `umoddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `vsnprintf':
(.text+0x1897): undefined reference to `umoddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `vsnprintf':
(.text+0x1903): undefined reference to `umoddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `vsnprintf':
(.text+0x1916): undefined reference to `udivdi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `vsnprintf':
(.text+0x195d): undefined reference to `umoddi3'
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o:
In function `vsnprintf':
(.text+0x1973): undefined reference to `udivdi3'
ld -Bstatic
--script=/boot/home/haiku/haiku/src/system/ldscripts/x86_64/boot_loader_bios_ia32.ld
-o
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_loader_bios_ia32"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/platform/bios_ia32/boot_platform_bios_ia32.o"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/arch/x86/boot_arch_x86.o"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_loader.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/net/boot_net.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_partitions.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/bfs/boot_bfs.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/amiga_ffs/boot_amiga_ffs.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/tarfs/boot_tarfs.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/fat/boot_fatfs.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/packagefs/boot_packagefs.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/boot_loader.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/loader/file_systems/tarfs/boot_zlib.a"
"/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_libroot.o"
/boot/system/develop/tools/bin/../lib/gcc/x86_64-unknown-
haiku/5.4.0/libsupc++.a /boot/system/develop/tools/bin/../lib/gcc/x86_64
-unknown-haiku/5.4.0/libgcc.a \
...failed BootLd
/boot/home/haiku/haiku/generated/objects/haiku/x86_64/release/system/boot/boot_loader_bios_ia32
...
BUILD FAILURE:
...failed updating 1 target(s)...
...skipped 4 target(s)...
...updated 3 target(s)...
~/haiku/haiku>
--
Ticket URL: <https://dev.haiku-os.org/ticket/12910>
Haiku <https://dev.haiku-os.org>
Haiku - the operating system.