Opened 15 years ago
Closed 15 years ago
#5158 closed bug (fixed)
[PATCH] bfs_shell: Relocation errors for bfs.o on OpenSolaris
Reported by: | andreasf | Owned by: | bonefish |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Build System | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | #5157 | Blocking: | |
Platform: | All |
Description
At hrev34720 I get the following errors on OpenSolaris 2009.06 host. I thought it might be related to GCC 3.4.3 (cf. hrev34717), but it happens with host GCC 4.3.2 as well.
The following is part of the output from a ppc cross-compilation's jam -q haiku-image
following a jam -q haiku-boot-cd-ppc
, but same happens for gcc4 x86 target as well (gcc2 untested).
I've already tried removing the objects
folder and re-configuring, building new cross-compilers. Same results.
...found 87109 target(s)... ...updating 9138 target(s)... InitScript1 /export/home/andreas/Haiku/haiku/generated-ppc/haiku.image-init-vars C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/addattr/main.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/addattr/addAttr.o Link /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/addattr/addattr Chmod1 /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/addattr/addattr C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/fssh.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/atomic.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/byte_order.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/command_cp.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/errno.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/partition_support.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/rootfs.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/sem.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/stat.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/stat_util.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/string.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/thread.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/time.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/uio.o C++ /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/unistd.o /export/home/andreas/Haiku/haiku/src/tools/fs_shell/unistd.cpp: In function `int fssh_ioctl(int, long unsigned int, ...)': /export/home/andreas/Haiku/haiku/src/tools/fs_shell/unistd.cpp:147: warning: unused variable 'geometry' MergeObjectFromObjects1 /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/fs_shell_kernel.o Archive /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/fs_shell.a ar: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/fs_shell.a wird erzeugt Link /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs_shell ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x1474: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x14fc: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x1aa0: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x1ad4: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x2104: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x23b4: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x23e8: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x289c: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x309c: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x34c0: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x3b78: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x3c88: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x3cbc: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x498c: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x4c5c: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x51fc: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x5230: Die Verschiebung erfordert ein Referenzsymbol ld: Schwerer Fehler: Verschiebungsfehler: R_386_32: Datei .rel.eh_frame: Bereich: /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o: Offset: 0x5b64: Die Verschiebung erfordert ein Referenzsymbol collect2: ld returned 1 exit status export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/lib ; /export/home/andreas/Haiku/haiku/build/scripts/rm_attrs /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/rm_attrs -f "/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs_shell" cc -o "/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs_shell" \ "/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs.o" "/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/fs_shell/fs_shell.a" "/export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/lib/libroot_build.so" -lsupc++ -lstdc++ -lxnet \ ...failed Link /export/home/andreas/Haiku/haiku/generated-ppc/objects/sunos/x86/release/tools/bfs_shell/bfs_shell ... ...skipped <HaikuImage>haiku.image-init-vars for lack of <build>bfs_shell... ...skipped haiku.image for lack of <HaikuImage>haiku.image-init-vars... ...failed updating 1 target(s)...
Attachments (1)
Change History (4)
comment:1 by , 15 years ago
by , 15 years ago
Attachment: | sun-ld.diff added |
---|
proposed patch for BuildSetup to override default ld on sunos
follow-up: 3 comment:2 by , 15 years ago
Summary: | bfs_shell: Relocation errors for bfs.o → [PATCH] bfs_shell: Relocation errors for bfs.o on OpenSolaris |
---|
Replying to bonefish:
Is ld the GNU linker or Sun's?
Thanks for the hint! Haiku has apparently begun mixing uses of ld
and gcc
for linking. Starting with OpenSolaris, ld
is GNU ld, whereas GCC continues to use Sun's ld.
The attached patch overrides the default HOST_LD
for sunos
, curing this problem.
comment:3 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Replying to andreasf:
Replying to bonefish:
Is ld the GNU linker or Sun's?
Thanks for the hint! Haiku has apparently begun mixing uses of
ld
andgcc
for linking.
We've been using both for quite some time. Most stuff is linked with gcc, but the *MergeObject (and the KernelLd) rules need to use ld.
Starting with OpenSolaris,
ld
is GNU ld, whereas GCC continues to use Sun's ld.The attached patch overrides the default
HOST_LD
forsunos
, curing this problem.
This should rather happen in configure, but since we don't determine HOST_LD there yet (and I'm too lazy to change that right now), I've applied the patch in hrev34726.
Can you please add non-localized error output. Not only for sake of the non-German speaking developers, but also because I don't understand what this is supposed to mean.
Is ld the GNU linker or Sun's?