[cfe-dev] build error in git master

kapamaroo kapamaroo at gmail.com
Fri Oct 5 09:37:56 PDT 2012


> Yes, it looks like you're missing system headers for 32-bit builds.
> Is there any way/package you can use to get them? (probably there should be
> folder /usr/include/i386-linux-gnu/
> as well as /usr/include/x86_64-linux-gnu).
> In the meantime, we should think on how to test presence of necessary
> headers while configuring the build...

I installed this package through multiarch

linux-libc-dev:i386    :/usr/include/i386-linux-gnu/asm/unistd.h

and now I get this error:

  COMPILE:   clang_linux/asan-i386/i386: /opt/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc
/opt/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:20:10: fatal error: 'new' file not found
#include <new>
         ^
1 error generated.



Searching for 'new' I get the following results:

$ mlocate new |grep /usr/include |grep new$
/usr/include/boost/tr1/tr1/new
/usr/include/c++/4.6/new
/usr/include/c++/4.7/new

I have libstdc++6-4.7-dev installed on my system which provides /usr/include/c++/4.7/new.
Trying to install libstdc++6-4.7-dev:i386 conflicts with the already installed version of the package for amd64.


If I change the previous line to 

#include <c++/4.7/new>

I get

  COMPILE:   clang_linux/asan-i386/i386: /opt/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc
In file included from /opt/llvm/projects/compiler-rt/lib/asan/asan_new_delete.cc:21:
/usr/include/c++/4.7/new:40:10: fatal error: 'bits/c++config.h' file not found
#include <bits/c++config.h>
         ^
1 error generated.


yet another search this time for 'bits/c++config.h' returns:

$ mlocate bits/c++config.h
/usr/include/c++/4.6/x86_64-linux-gnu/32/bits/c++config.h
/usr/include/c++/4.6/x86_64-linux-gnu/bits/c++config.h
/usr/include/c++/4.7/x86_64-linux-gnu/32/bits/c++config.h
/usr/include/c++/4.7/x86_64-linux-gnu/bits/c++config.h


I think this has to do with the debian way of installing header files (and libraries) in order to offer multiarch 
support.

The only workaround for me at the moment is to build without the changes introduced by commits r165096 and r165097 
which is something I am trying to avoid.

Any help would be appreciated.

Thanks,

Maroudas Manolis


> On Fri, Oct 5, 2012 at 12:11 AM, kapamaroo <kapamaroo at gmail.com> wrote:
> > Hello,
> > 
> > I get this error in debian unstable (arch amd64).
> > 
> >   COMPILE:   clang_linux/asan-i386/i386:
> > /opt/llvm/projects/compiler-rt/lib/asan/asan_linux.cc
> > In file included from
> > /opt/llvm/projects/compiler-rt/lib/asan/asan_linux.cc:27:
> > /usr/include/sys/syscall.h:25:10: fatal error: 'asm/unistd.h' file not
> > found
> > #include <asm/unistd.h>
> > 
> >          ^
> > 
> > 1 error generated.
> > 
> > 
> > configure options:
> > 
> > $ ../configure \
> > 
> >   --disable-assertions \
> >   --enable-optimized \
> >   --disable-debug-symbols \
> >   --disable-debug-runtime \
> >   --enable-targets=host-only
> > 
> > same with --enable-targets=all
> > 
> > installed packages:
> > 
> > linux-libc-dev    :/usr/include/x86_64-linux-gnu/asm/unistd.h
> > libc6-dev
> > libc6-dev-i386
> > 
> > Build fails after the following changes
> > 
> > r165096    "Build ASan runtime on Linux for both x86_64 and i386, same as
> > we do with full compiler_rt and
> > libprofile"
> > r165097    "Make sure 32-bit ASan runtime is available on 64-bit Linux
> > platforms"
> > 
> > I cannot test it with another linux distribution, so maybe it is debian
> > related or just me.
> > Maybe I need to enable multiarch support for i386. Anyone with the same
> > problem?
> > 
> > Thanks,
> > 
> > Maroudas Manolis
> > 
> > > I think your build script is OK.
> > > r165222 should fix the problem for you.
> > > 
> > > On Thu, Oct 4, 2012 at 4:15 PM, Carsten Mattner <
> > 
> > carstenmattner at gmail.com>wrote:
> > > > On Thu, Oct 4, 2012 at 2:10 PM, Дмитрий Дьяченко <dimhen at gmail.com>
> > 
> > wrote:
> > > > > few days ago i saw similar on Linux-x86_64
> > > > > with slightly different err "fatal error: 'gnu/stubs-32.h' file not
> > > > 
> > > > found"
> > > > 
> > > > > --> after glibc-devel-i386 installation err go away
> > > > > 
> > > > > llvm/clang were configured with --enable-targets=host
> > > > 
> > > > Anything wrong or improvable in the way I configure and build:
> > > > CC=gcc CXX=g++ \
> > > > 
> > > >     ../llvm/configure \
> > > >     --prefix=$PREFIX \
> > > >     --libdir=$PREFIX/lib/llvm \
> > > >     --sysconfdir=$PREFIX/etc \
> > > >     --enable-shared \
> > > >     --enable-targets=all \
> > > >     --disable-expensive-checks \
> > > >     --disable-debug-runtime \
> > > >     --disable-assertions \
> > > >     --with-binutils-include=/usr/include \
> > > >     --enable-optimized
> > > > 
> > > > Is --enable-targets=all a bad idea? I think I copied the flags from
> > > > a distro package.
> > > > 
> > > > After configure is done I call "make REQUIRES_RTTI=1" also inspired
> > > > by a distro package build script.
> > > > 
> > > > > Dmitry
> > > > > 
> > > > > 2012/10/4 Carsten Mattner <carstenmattner at gmail.com>:
> > > > >> Does anybody else see the following build-error on linux-386?
> > > > >> 
> > > > >>   COMPILE:   clang_linux/asan-x86_64/x86_64:
> > > > >>     /tmp/src/llvm/llvm/projects/compiler-rt/lib/asan/asan_linux.cc
> > > > >> 
> > > > >> In file included from
> > > > >> /tmp/src/llvm/llvm/projects/compiler-rt/lib/asan/asan_linux.cc:24:
> > > > >> In file included from /usr/include/sys/time.h:22:
> > > > >> In file included from /usr/include/features.h:399:
> > > > >> /usr/include/gnu/stubs.h:10:11: fatal error: 'gnu/stubs-64.h' file
> > 
> > not
> > 
> > > > found
> > > > 
> > > > >> # include <gnu/stubs-64.h>
> > > > >> 
> > > > >>           ^
> > > > >> 
> > > > >> 1 error generated.
> > > > >> _______________________________________________
> > > > >> cfe-dev mailing list
> > > > >> cfe-dev at cs.uiuc.edu
> > > > >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> > > > 
> > > > _______________________________________________
> > > > cfe-dev mailing list
> > > > cfe-dev at cs.uiuc.edu
> > > > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev




More information about the cfe-dev mailing list