[LLVMdev] Build(s) broken? (was: Re: Buildbots: Apology and Explanation)

Paul Melis llvm at assumetheposition.nl
Mon Aug 31 06:48:33 PDT 2009


Paul Melis wrote:
> Jim Grosbach wrote:
>>
>> On Aug 30, 2009, at 10:18 AM, Paul Melis wrote:
>>
>>> Hello,
>>>
>>> Bill Wendling wrote:
>>>> Before we had buildbots, a random patch would break the system. It
>>>> would sometimes take a whole day to determine which patch broke it.
>>> I see the buildbots are currently showing no problem on 32-bit linux
>>> but
>>> I get the following build error with TOT (out-of-source autoconf
>>> build):
>>>
>>> [...]
>>> make[1]: Leaving directory `/home/melis/c/llvm-svn-release/tools'
>>> make[1]: Entering directory `/home/melis/c/llvm-svn-release/runtime'
>>> make[2]: Entering directory
>>> `/home/melis/c/llvm-svn-release/runtime/libprofile'
>>> llvm[2]: Compiling BasicBlockTracing.ll to BasicBlockTracing.bc for
>>> Release build (bytecode)
>>> /home/melis/c/llvm-svn-release/Release/bin/llvm-as:
>>> /home/melis/c/llvm-svn-release/runtime/libprofile/Release/
>>> BasicBlockTracing.ll:1:2:
>>> error: expected top-level entity
>>>    .file    "BasicBlockTracing.c"
>>>    ^
>>> /home/melis/c/llvm-svn-release/Release/bin/opt: Invalid bitcode
>>> signature
>>> make[2]: ***
>>> [/home/melis/c/llvm-svn-release/runtime/libprofile/Release/
>>> BasicBlockTracing.bc]
>>> Error 1
>>> make[2]: Leaving directory
>>> `/home/melis/c/llvm-svn-release/runtime/libprofile'
>>> make[1]: *** [libprofile/.makeall] Error 2
>>> make[1]: Leaving directory `/home/melis/c/llvm-svn-release/runtime'
>>> make: *** [all] Error 1
>>>
>>> It seems BasicBlockTracing.ll contains assembly instead of LLVM IR.
>>>
>>>
>>> Also, llvm-gcc also doesn't build for me. Here the error is related to
>>> exception handling:
>>>
>>> make[3]: Leaving directory `/home/melis/c/llvm-gcc-svn-build/
>>> libdecnumber'
>>> make[3]: Entering directory `/home/melis/c/llvm-gcc-svn-build/gcc'
>>> /home/melis/local/bin/gcc -c   -g -DIN_GCC   -W -Wall -Wwrite-strings
>>> -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long
>>> -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition
>>> -Wmissing-format-attribute -fno-common   -DHAVE_CONFIG_H -I. -I.
>>> -I../../llvm-gcc-svn/gcc -I../../llvm-gcc-svn/gcc/.
>>> -I../../llvm-gcc-svn/gcc/../include
>>> -I../../llvm-gcc-svn/gcc/../libcpp/include
>>> -I../../llvm-gcc-svn/gcc/../libdecnumber -I../libdecnumber
>>> gtype-desc.c -o gtype-desc.o
>>> gtype-desc.c:5862: error: 'sjlj_fc_type_node' undeclared here (not
>>> in a
>>> function)
>>> make[3]: *** [gtype-desc.o] Error 1
>>> make[3]: Leaving directory `/home/melis/c/llvm-gcc-svn-build/gcc'
>>> make[2]: *** [all-stage1-gcc] Error 2
>>> make[2]: Leaving directory `/home/melis/c/llvm-gcc-svn-build'
>>> make[1]: *** [stage1-bubble] Error 2
>>> make[1]: Leaving directory `/home/melis/c/llvm-gcc-svn-build'
>>> make: *** [all] Error 2
>>>
>>> Is there something suddenly wrong with my system (which hasn't changed
>>> in any way)? I used to be able to build LLVM(GCC) without problems a
>>> few
>>> weeks ago...
>>>
>>
>> SJLJ exception handling is only implemented on ARM Darwin. It looks
>> like your target is pulling in bits of that?
>
> Well, I don't know what changed to make this suddenly happen. FYI, here is
> the configure line I have been using for quite some time:
>
> ../llvm-gcc-svn/configure \
>     --prefix=/home/melis/llvm \
>     --program-prefix=llvm- \
>     --with-llvm=/home/melis/c/llvm-svn \
>     --enable-languages=c,c++ \
>     --target=i686-pc-linux-gnu \
>     --with-tune=generic \
>     --with-arch=pentium4

It seems my installed version of llvm-gcc had lost its ability to generate
LLVM IR (-c -emit-llvm was ignored, it simply produced assembly in that
case). That caused LLVM itself not to build, as the stuff in runtime/
picked up the flaky llvm-gcc.

Cleaning out my LLVM install and completely rebuilding from scratch fixed
the LLVM build. However, llvm-gcc still has the SJLJ error.

Paul




More information about the llvm-dev mailing list