building LLVM 1.6 on Debian unstable ...

Hi,

Tried to build the 1.6 release on Debian unstable, but ran into link problems for some utils ...

Copying the messages when building llc, the same error occurs for lli, llvm-db and some of the examples. Is this a problem with the compiler version? LLVMSelectionDAG.o itself builds correctly.

make[2]: Entering directory `/home/sameerds/data/llvm-1.6/tools/llc'
llvm[2]: Linking Debug executable llc
`.gnu.linkonce.t._ZNK4llvm14TargetLowering12getValueTypeEPKNS_4TypeE' referenced
  in section `.rodata' of /home/sameerds/data/llvm-1.6/Debug/lib/LLVMSelectionDAG
.o: defined in discarded section `.gnu.linkonce.t._ZNK4llvm14TargetLowering12get
ValueTypeEPKNS_4TypeE' of /home/sameerds/data/llvm-1.6/Debug/lib/LLVMSelectionDA
G.o
collect2: ld returned 1 exit status

The compiler is gcc 3.4.5 from Debian unstable.

sameerds@trantor5:~$ g++ -v
Reading specs from /usr/lib/gcc/i486-linux-gnu/3.4.5/specs
Configured with: ../src/configure -v --enable-languages=c,c++,f77,pascal,objc,ada --prefix=/usr --libexecdir=/usr/lib --with-gxx-include-dir=/usr/include/c++/3.4 --enable-shared --with-system-zlib --enable-nls --without-included-gettext --program-suffix=-3.4 --enable-__cxa_atexit --enable-libstdcxx-allocator=mt --enable-clocale=gnu --enable-libstdcxx-debug i486-linux-gnu
Thread model: posix
gcc version 3.4.5 20050821 (prerelease) (Debian 3.4.4-8)

Sameer D. Sahasrabuddhe wrote:

Hi,

Tried to build the 1.6 release on Debian unstable, but ran into link problems for some utils ...

Copying the messages when building llc, the same error occurs for lli, llvm-db and some of the examples. Is this a problem with the compiler version? LLVMSelectionDAG.o itself builds correctly.

make[2]: Entering directory `/home/sameerds/data/llvm-1.6/tools/llc'
llvm[2]: Linking Debug executable llc
`.gnu.linkonce.t._ZNK4llvm14TargetLowering12getValueTypeEPKNS_4TypeE' referenced
in section `.rodata' of /home/sameerds/data/llvm-1.6/Debug/lib/LLVMSelectionDAG
.o: defined in discarded section `.gnu.linkonce.t._ZNK4llvm14TargetLowering12get
ValueTypeEPKNS_4TypeE' of /home/sameerds/data/llvm-1.6/Debug/lib/LLVMSelectionDA
G.o
collect2: ld returned 1 exit status

I believe this is a binutils issue (ld belongs to binutils).
See for example:
http://lists.debian.org/debian-gcc/2005/10/msg00305.html

Marco

Marco Matthies wrote:

make[2]: Entering directory `/home/sameerds/data/llvm-1.6/tools/llc'
llvm[2]: Linking Debug executable llc
`.gnu.linkonce.t._ZNK4llvm14TargetLowering12getValueTypeEPKNS_4TypeE' referenced
in section `.rodata' of /home/sameerds/data/llvm-1.6/Debug/lib/LLVMSelectionDAG
.o: defined in discarded section `.gnu.linkonce.t._ZNK4llvm14TargetLowering12get
ValueTypeEPKNS_4TypeE' of /home/sameerds/data/llvm-1.6/Debug/lib/LLVMSelectionDA
G.o
collect2: ld returned 1 exit status

I believe this is a binutils issue (ld belongs to binutils).
See for example:
Re: gnu.linkonce.t messages for g++-3.3

Thanks! Downgraded the binutils package from 2.16.1cvs20050902-1 (Debian unstable) to 2.16.1-2 (testing). The message still appears, but no error is reported and the build completes. Found similar messages in what appears to be an automated daily build for ia64 ... assuming those messages can be safely ignored.

http://kinoko.c.u-tokyo.ac.jp/~builddonkey/ia64/2005-11-12-Build-Log.txt

Would this information be useful in the release notes?

Sameer.

What compiler are you using?

What do 'gcc --version' and 'g++ -- version' report?

Using 4.0.2 should work.

Chris

Sameer D. Sahasrabuddhe wrote:

I believe this is a binutils issue (ld belongs to binutils).
See for example:
Re: gnu.linkonce.t messages for g++-3.3

Thanks! Downgraded the binutils package from 2.16.1cvs20050902-1 (Debian unstable) to 2.16.1-2 (testing). The message still appears, but no error is reported and the build completes. Found similar messages in what appears to be an automated daily build for ia64 ... assuming those messages can be safely ignored.

http://kinoko.c.u-tokyo.ac.jp/~builddonkey/ia64/2005-11-12-Build-Log.txt

Sorry for the slow reply, Sameer - you are right, these messages can be ignored. I think they are fixed in binutils, but the ia64 LLVM tester has a slightly old version.

  Duraid