Thread overview
Problem Linking Phobos git master
Jul 04, 2014
Nordlöw
Jul 05, 2014
Kapps
Jul 05, 2014
Nordlöw
Jul 05, 2014
Nordlöw
Jul 05, 2014
Mike Wey
Jul 06, 2014
Nordlöw
July 04, 2014
On Ubuntu 14.04 my git master build script for phobos now fails as below.

Why? Help please.

/usr/bin/ld points to /usr/bin/ld.bfd on my system

Terminal echo and error message follows:

../dmd/src/dmd -I/home/per/opt/x86_64-unknown-linux-gnu/dmd/include/d2 -shared -debuglib= -defaultlib= -ofgenerated/linux/release/64/libphobos2.so.0.66.0 -L-soname=libphobos2.so.0.66 ../druntime/lib/libdruntime-linux64so.a -L-ldl -Lgenerated/linux/release/64/libcurl_stub.so std/algorithm.d std/array.d std/ascii.d std/base64.d std/bigint.d std/bitmanip.d std/compiler.d std/complex.d std/concurrency.d std/conv.d std/cstream.d std/csv.d std/datetime.d std/demangle.d std/encoding.d std/exception.d std/file.d std/format.d std/functional.d std/getopt.d std/json.d std/math.d std/mathspecial.d std/mmfile.d std/numeric.d std/outbuffer.d std/parallelism.d std/path.d std/process.d std/random.d std/range.d std/regex.d std/signals.d std/socket.d std/socketstream.d std/stdint.d std/stdio.d std/stdiobase.d std/stream.d std/string.d std/syserror.d std/system.d std/traits.d std/typecons.d std/typetuple.d std/uni.d std/uri.d std/utf.d std/uuid.d std/variant.d std/xml.d std/zip.d std/zlib.d std/c/linux/linux.d std/c/linux/socket.d etc/c/curl.d etc/c/sqlite3.d etc/c/zlib.d std/c/fenv.d std/c/locale.d std/c/math.d std/c/process.d std/c/stdarg.d std/c/stddef.d std/c/stdio.d std/c/stdlib.d std/c/string.d std/c/time.d std/c/wcharh.d std/internal/digest/sha_SSSE3.d std/internal/math/biguintcore.d std/internal/math/biguintnoasm.d std/internal/math/biguintx86.d std/internal/math/gammafunction.d std/internal/math/errorfunction.d std/internal/processinit.d std/internal/unicode_tables.d std/internal/scopebuffer.d std/internal/unicode_comp.d std/internal/unicode_decomp.d std/internal/unicode_grapheme.d std/internal/unicode_norm.d std/net/isemail.d std/net/curl.d std/digest/digest.d std/digest/crc.d std/digest/md.d std/digest/ripemd.d std/digest/sha.d std/container/package.d std/container/array.d std/container/binaryheap.d std/container/dlist.d std/container/rbtree.d std/container/slist.d std/container/util.d generated/linux/release/64/etc/c/zlib/adler32.o generated/linux/release/64/etc/c/zlib/compress.o generated/linux/release/64/etc/c/zlib/crc32.o generated/linux/release/64/etc/c/zlib/deflate.o generated/linux/release/64/etc/c/zlib/gzclose.o generated/linux/release/64/etc/c/zlib/gzlib.o generated/linux/release/64/etc/c/zlib/gzread.o generated/linux/release/64/etc/c/zlib/gzwrite.o generated/linux/release/64/etc/c/zlib/infback.o generated/linux/release/64/etc/c/zlib/inffast.o generated/linux/release/64/etc/c/zlib/inflate.o generated/linux/release/64/etc/c/zlib/inftrees.o generated/linux/release/64/etc/c/zlib/trees.o generated/linux/release/64/etc/c/zlib/uncompr.o generated/linux/release/64/etc/c/zlib/zutil.o
std/mmfile.d(344): Deprecation: alias core.sys.posix.sys.mman.MAP_ANON is deprecated - Please use core.sys.linux.sys.mman for non-POSIX extensions
std/mmfile.d(344): Deprecation: alias core.sys.posix.sys.mman.MAP_ANON is deprecated - Please use core.sys.linux.sys.mman for non-POSIX extensions
/usr/bin/ld: generated/linux/release/64/libphobos2.so.0.66.o: relocation R_X86_64_32 against `_D6object8TypeInfo8postblitMxFPvZv' can not be used when making a shared object; recompile with -fPIC
generated/linux/release/64/libphobos2.so.0.66.o: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
--- errorlevel 1
July 05, 2014
Possibly something related to: https://github.com/D-Programming-Language/dmd/pull/3715

Have you tried updating to git master today?
July 05, 2014
On Saturday, 5 July 2014 at 02:13:39 UTC, Kapps wrote:
> Possibly something related to: https://github.com/D-Programming-Language/dmd/pull/3715
>
> Have you tried updating to git master today?

Yes, unfortunately with the same problem (with ld.bfd).

With ld.gold I get a huge amount of errors:

../dmd/src/dmd -I/home/per/opt/x86_64-unknown-linux-gnu/dmd/include/d2 -shared -debuglib= -defaultlib= -ofgenerated/linux/release/64/libphobos2.so.0.66.0 -L-soname=libphobos2.so.0.66 ../druntime/lib/libdruntime-linux64so.a -L-ldl -Lgenerated/linux/release/64/libcurl_stub.so std/algorithm.d std/array.d std/ascii.d std/base64.d std/bigint.d std/bitmanip.d std/compiler.d std/complex.d std/concurrency.d std/conv.d std/cstream.d std/csv.d std/datetime.d std/demangle.d std/encoding.d std/exception.d std/file.d std/format.d std/functional.d std/getopt.d std/json.d std/math.d std/mathspecial.d std/mmfile.d std/numeric.d std/outbuffer.d std/parallelism.d std/path.d std/process.d std/random.d std/range.d std/regex.d std/signals.d std/socket.d std/socketstream.d std/stdint.d std/stdio.d std/stdiobase.d std/stream.d std/string.d std/syserror.d std/system.d std/traits.d std/typecons.d std/typetuple.d std/uni.d std/uri.d std/utf.d std/uuid.d std/variant.d std/xml.d std/zip.d std/zlib.d std/c/linux/linux.d std/c/linux/socket.d etc/c/curl.d etc/c/sqlite3.d etc/c/zlib.d std/c/fenv.d std/c/locale.d std/c/math.d std/c/process.d std/c/stdarg.d std/c/stddef.d std/c/stdio.d std/c/stdlib.d std/c/string.d std/c/time.d std/c/wcharh.d std/internal/digest/sha_SSSE3.d std/internal/math/biguintcore.d std/internal/math/biguintnoasm.d std/internal/math/biguintx86.d std/internal/math/gammafunction.d std/internal/math/errorfunction.d std/internal/processinit.d std/internal/unicode_tables.d std/internal/scopebuffer.d std/internal/unicode_comp.d std/internal/unicode_decomp.d std/internal/unicode_grapheme.d std/internal/unicode_norm.d std/net/isemail.d std/net/curl.d std/digest/digest.d std/digest/crc.d std/digest/md.d std/digest/ripemd.d std/digest/sha.d std/container/package.d std/container/array.d std/container/binaryheap.d std/container/dlist.d std/container/rbtree.d std/container/slist.d std/container/util.d generated/linux/release/64/etc/c/zlib/adler32.o generated/linux/release/64/etc/c/zlib/compress.o generated/linux/release/64/etc/c/zlib/crc32.o generated/linux/release/64/etc/c/zlib/deflate.o generated/linux/release/64/etc/c/zlib/gzclose.o generated/linux/release/64/etc/c/zlib/gzlib.o generated/linux/release/64/etc/c/zlib/gzread.o generated/linux/release/64/etc/c/zlib/gzwrite.o generated/linux/release/64/etc/c/zlib/infback.o generated/linux/release/64/etc/c/zlib/inffast.o generated/linux/release/64/etc/c/zlib/inflate.o generated/linux/release/64/etc/c/zlib/inftrees.o generated/linux/release/64/etc/c/zlib/trees.o generated/linux/release/64/etc/c/zlib/uncompr.o generated/linux/release/64/etc/c/zlib/zutil.o
std/mmfile.d(344): Deprecation: alias core.sys.posix.sys.mman.MAP_ANON is deprecated - Please use core.sys.linux.sys.mman for non-POSIX extensions
std/mmfile.d(344): Deprecation: alias core.sys.posix.sys.mman.MAP_ANON is deprecated - Please use core.sys.linux.sys.mman for non-POSIX extensions
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object23__T11_trustedDupTxaTyaZ11_trustedDupFNaNbNeAxaZAya' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object15__T4_dupTxaTyaZ4_dupFNaNbAxaZAya' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object14__T7_rawDupTaZ7_rawDupFNaNbANgaZANga' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D11TypeInfo_ya6__initZ' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object22__T11_trustedDupTxaTaZ11_trustedDupFNaNbNeAxaZAa' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object14__T4_dupTxaTaZ4_dupFNaNbAxaZAa' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object14__T7_rawDupTaZ7_rawDupFNaNbANgaZANga' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object22__T11_trustedDupTxmTmZ11_trustedDupFNaNbNeAxmZAm' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object14__T4_dupTxmTmZ4_dupFNaNbAxmZAm' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object14__T7_rawDupTmZ7_rawDupFNaNbANgmZANgm' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D3std9algorithm244__T6joinerTS3std9algorithm204__T9MapResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda2TS3std9algorithm109__T12FilterResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda1TS3std5range13__T4iotaTmTmZ4iotaFmmZ6ResultZ12FilterResultZ9MapResultZ6joinerFS3std9algorithm204__T9MapResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda2TS3std9algorithm109__T12FilterResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda1TS3std5range13__T4iotaTmTmZ4iotaFmmZ6ResultZ12FilterResultZ9MapResultZ6Result6__ctorMFNbNcNiS3std9algorithm204__T9MapResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda2TS3std9algorithm109__T12FilterResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda1TS3std5range13__T4iotaTmTmZ4iotaFmmZ6ResultZ12FilterResultZ9MapResultZS3std9algorithm244__T6joinerTS3std9algorithm204__T9MapResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda2TS3std9algorithm109__T12FilterResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda1TS3std5range13__T4iotaTmTmZ4iotaFmmZ6ResultZ12FilterResultZ9MapResultZ6joinerFS3std9algorithm204__T9MapResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda2TS3std9algorithm109__T12FilterResultS453std8bitmanip8BitArray7bitsSetMFNdZ9__lambda1TS3std5range13__T4iotaTmTmZ4iotaFmmZ6ResultZ12FilterResultZ9MapResultZ6Result' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_d_assert_msg' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_d_assert_msg' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_d_assert_msg' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_d_assert_msg' which may overflow at runtime; recompile with -fPIC
...
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D6object8opEqualsFC6ObjectC6ObjectZb' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against 'getpid' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against '_D4core4time50__T7convertVAyaa6_686e73656373VAyaa6_686e73656373Z7convertFNaNbNiNflZl' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against 'nearbyintl' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_PC32 reloc against 'deflateEnd' which may overflow at runtime; recompile with -fPIC
/usr/bin/ld: error: generated/linux/release/64/libphobos2.so.0.66.o: requires dynamic R_X86_64_32 reloc which may overflow at runtime; recompile with -fPIC
collect2: error: ld returned 1 exit status
--- errorlevel 1


/Per
July 05, 2014
On Saturday, 5 July 2014 at 09:54:21 UTC, Nordlöw wrote:
> On Saturday, 5 July 2014 at 02:13:39 UTC, Kapps wrote:
>> Possibly something related to: https://github.com/D-Programming-Language/dmd/pull/3715
>>
>> Have you tried updating to git master today?
>
> Yes, unfortunately with the same problem (with ld.bfd).

There's something wrong with build script that triggers the error. I'm looking into it...

/Per
July 05, 2014
On 07/05/2014 12:13 AM, "Nordlöw" wrote:
> On Ubuntu 14.04 my git master build script for phobos now fails as below.
>
> Why? Help please.
>
> /usr/bin/ld points to /usr/bin/ld.bfd on my system
>
> Terminal echo and error message follows:
>
> ../dmd/src/dmd -I/home/per/opt/x86_64-unknown-linux-gnu/dmd/include/d2
> -shared -debuglib= -defaultlib= ...

Do you have an DFLAGS environment variable set on your system?

It looks like the environment variable is used instead of the make file variable while compiling.

-- 
Mike Wey
July 06, 2014
> Do you have an DFLAGS environment variable set on your system?
>
> It looks like the environment variable is used instead of the make file variable while compiling.

Yep, the DFLAGS parameter was given to the make call. Removing it...

Thx!