[cfe-users] compile error
Emmanuel Thivierge
monamimani at gmail.com
Sat Jul 13 11:25:49 PDT 2013
Hi,
Thanks a lot for your help.
My version of osX is 10.8.4
And the define __DARWIN_64_BIT_INO_T is define to 1.
I hope this help.
The reason I am compiling Address sanitizer is that I might need it is i run into problems while developing.
Thanks again
Emmanuel
On 2013-07-12, at 9:05 AM, Alexey Samsonov <samsonov at google.com> wrote:
> Hi!
>
> On Fri, Jul 12, 2013 at 4:34 AM, Mani <monamimani at gmail.com> wrote:
> Hi all,
>
> i have been compiling clang for months without problems, until about last week. Since then I can't compile.
>
> usually delete CMakeCache.txt then run
> cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DLLVM_TARGETS_TO_BUILD="X86" -DCMAKE_C_COMPILER=/usr/local/bin/clang -DCMAKE_CXX_COMPILER=/usr/local/bin/clang++ -DCMAKE_CXX_FLAGS="-std=c++11 -stdlib=libc++" -DCMAKE_SHARED_LINKER_FLAGS="-std=c++11 -stdlib=libc++" -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_WERROR=OFF -DLLVM_BUILD_TOOLS=ON -DLLVM_BUILD_EXAMPLES=OFF -DCLANG_BUILD_EXAMPLES=OFF -DLLVM_APPEND_VC_REV=ON /Users/Mani/Development/Projects/llvm/source
> ln -s $PWD/compile_commands.json /Users/Mani/Development/Projects/llvm/source
>
> and then run
> make -j10 ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1
>
> Here is what i get.
>
> [ 15%] [ 16%] Built target clang_rt.x86_64
> Built target clang_rt.i386
> [ 16%] /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc:799:1: error: 'assertion_failed__799'
> declared as an array with a negative size
> CHECK_SIZE_AND_OFFSET(dirent, d_ino);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc:726:3: note: expanded from macro
> 'CHECK_SIZE_AND_OFFSET'
> COMPILER_CHECK(sizeof(((__sanitizer_##CLASS *) NULL)->MEMBER) == \
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h:239:30: note: expanded from macro 'COMPILER_CHECK'
> #define COMPILER_CHECK(pred) IMPL_COMPILER_ASSERT(pred, __LINE__)
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h:245:57: note: expanded from macro
> 'IMPL_COMPILER_ASSERT'
> typedef char IMPL_PASTE(assertion_failed_##_, line)[2*(int)(pred)-1]
> ^~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc:803:1: error: 'assertion_failed__803'
> declared as an array with a negative size
> CHECK_SIZE_AND_OFFSET(dirent, d_reclen);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc:728:3: note: expanded from macro
> 'CHECK_SIZE_AND_OFFSET'
> COMPILER_CHECK(offsetof(__sanitizer_##CLASS, MEMBER) == \
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h:239:30: note: expanded from macro 'COMPILER_CHECK'
> #define COMPILER_CHECK(pred) IMPL_COMPILER_ASSERT(pred, __LINE__)
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /Users/Mani/Development/Projects/llvm/source/projects/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h:245:57: note: expanded from macro
> 'IMPL_COMPILER_ASSERT'
> typedef char IMPL_PASTE(assertion_failed_##_, line)[2*(int)(pred)-1]
> ^~~~~~~~~~~~~~~
> 2 errors generated.
> Built target RTLSanCommon.osx
> make[2]: *** [projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.osx.dir/sanitizer_platform_limits_posix.cc.o] Error 1
> make[1]: *** [projects/compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.osx.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs….
>
> Anybody know what going on?
>
> You've got a problem with compiling AddressSanitizer runtime: it incorrectly defines "dirent" structure (normally it comes from /usr/include/sys/dirent.h).
> 1) Which OS X version do you use?
> 2) What is the value of __DARWIN_64_BIT_INO_T on your system? (you may check it by including sys/cdefs.h and looking at the value of this definition).
>
> Note that if you're not interested in ASan, you may just build clang as follows:
> "make -j10 ENABLE_OPTIMIZED=1 DISABLE_ASSERTIONS=1 clang"
>
>
> Thanks
> Emmanuel
> _______________________________________________
> cfe-users mailing list
> cfe-users at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-users
>
>
>
> --
> Alexey Samsonov, MSK
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-users/attachments/20130713/cb844336/attachment.html>
More information about the cfe-users
mailing list