Hi, I'm trying to build llvm 3.4 on one of our Cray systems, note: 3.2 builds fine. The following error occurs, it looks like a system header, intended for C only judging by the fact that there's a variable named "new", is being used in one of llvm's C++ source files. Can anyone suggest a workaround? I do not have root on this system nor is it likely that I can convince anyone to update system packages. Burlen make[5]: Entering directory `/global/common/hopper2/graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt' ARCHIVE: clang_linux/full-x86_64/x86_64: /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/full-x86_64/x86_64/libcompiler_rt.a FINAL-ARCHIVE: clang_linux/full-x86_64: /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/full-x86_64/libcompiler_rt.a ARCHIVE: clang_linux/profile-x86_64/x86_64: /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/profile-x86_64/x86_64/libcompiler_rt.a FINAL-ARCHIVE: clang_linux/profile-x86_64: /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/profile-x86_64/libcompiler_rt.a COMPILE: clang_linux/san-x86_64/x86_64: /global/common/hopper2/graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc In file included from /global/common/hopper2/graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc:54: In file included from /usr/include/sys/vt.h:1: /usr/include/linux/vt.h:74:15: error: expected member name or ';' after declaration specifiers unsigned int new; /* New console (if changing) */ ~~~~~~~~~~~~ ^ 1 error generated.
I understand that you are looking for a workaround in llvm, but it's not really an llvm issue. There is a patch available for this issue: http://gcc.gnu.org/ml/gcc-patches/2013-12/msg00479.html This means that you would have to update your kernel headers. Someone else has posted another hack for libsanitizer here: http://comments.gmane.org/gmane.comp.gcc.devel/133181 #define new renamed_new #include <sys/vt.h> #undef new thx Vikas. ======= On Tue, Mar 11, 2014 at 10:25 AM, Burlen Loring <burlen.loring at gmail.com>wrote:> Hi, > > I'm trying to build llvm 3.4 on one of our Cray systems, note: 3.2 builds > fine. The following error occurs, it looks like a system header, intended > for C only judging by the fact that there's a variable named "new", is > being used in one of llvm's C++ source files. Can anyone suggest a > workaround? I do not have root on this system nor is it likely that I can > convince anyone to update system packages. > > Burlen > > make[5]: Entering directory `/global/common/hopper2/ > graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt' > ARCHIVE: clang_linux/full-x86_64/x86_64: /global/common/hopper2/ > graphics/llvm/builds/3.4-static-build/tools/clang/ > runtime/compiler-rt/clang_linux/full-x86_64/x86_64/libcompiler_rt.a > FINAL-ARCHIVE: clang_linux/full-x86_64: /global/common/hopper2/ > graphics/llvm/builds/3.4-static-build/tools/clang/ > runtime/compiler-rt/clang_linux/full-x86_64/libcompiler_rt.a > ARCHIVE: clang_linux/profile-x86_64/x86_64: /global/common/hopper2/ > graphics/llvm/builds/3.4-static-build/tools/clang/ > runtime/compiler-rt/clang_linux/profile-x86_64/x86_64/libcompiler_rt.a > FINAL-ARCHIVE: clang_linux/profile-x86_64: /global/common/hopper2/ > graphics/llvm/builds/3.4-static-build/tools/clang/ > runtime/compiler-rt/clang_linux/profile-x86_64/libcompiler_rt.a > COMPILE: clang_linux/san-x86_64/x86_64: /global/common/hopper2/ > graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt/lib/ > sanitizer_common/sanitizer_platform_limits_posix.cc > In file included from /global/common/hopper2/ > graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt/lib/ > sanitizer_common/sanitizer_platform_limits_posix.cc:54: > In file included from /usr/include/sys/vt.h:1: > /usr/include/linux/vt.h:74:15: error: expected member name or ';' after > declaration specifiers > unsigned int new; /* New console (if changing) */ > ~~~~~~~~~~~~ ^ > 1 error generated. > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140311/3c83bd83/attachment.html>
Thanks! On 03/11/2014 10:46 AM, Vikas Bhargava wrote:> I understand that you are looking for a workaround in llvm, but it's > not really an llvm issue. There is a patch available for this issue: > > http://gcc.gnu.org/ml/gcc-patches/2013-12/msg00479.html > > This means that you would have to update your kernel headers. > > Someone else has posted another hack for libsanitizer here: > > http://comments.gmane.org/gmane.comp.gcc.devel/133181 > > #define new renamed_new > #include <sys/vt.h> > #undef new > thx > Vikas. > =======> > > > > On Tue, Mar 11, 2014 at 10:25 AM, Burlen Loring > <burlen.loring at gmail.com <mailto:burlen.loring at gmail.com>> wrote: > > Hi, > > I'm trying to build llvm 3.4 on one of our Cray systems, note: 3.2 > builds fine. The following error occurs, it looks like a system > header, intended for C only judging by the fact that there's a > variable named "new", is being used in one of llvm's C++ source > files. Can anyone suggest a workaround? I do not have root on this > system nor is it likely that I can convince anyone to update > system packages. > > Burlen > > make[5]: Entering directory > `/global/common/hopper2/graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt' > ARCHIVE: clang_linux/full-x86_64/x86_64: > /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/full-x86_64/x86_64/libcompiler_rt.a > FINAL-ARCHIVE: clang_linux/full-x86_64: > /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/full-x86_64/libcompiler_rt.a > ARCHIVE: clang_linux/profile-x86_64/x86_64: > /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/profile-x86_64/x86_64/libcompiler_rt.a > FINAL-ARCHIVE: clang_linux/profile-x86_64: > /global/common/hopper2/graphics/llvm/builds/3.4-static-build/tools/clang/runtime/compiler-rt/clang_linux/profile-x86_64/libcompiler_rt.a > COMPILE: clang_linux/san-x86_64/x86_64: > /global/common/hopper2/graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc > In file included from > /global/common/hopper2/graphics/llvm/builds/llvm-3.4.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc:54: > In file included from /usr/include/sys/vt.h:1: > /usr/include/linux/vt.h:74:15: error: expected member name or ';' > after declaration specifiers > unsigned int new; /* New console (if > changing) */ > ~~~~~~~~~~~~ ^ > 1 error generated. > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu> > http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140311/5894c155/attachment.html>