<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Can't build libLLVMSupport.a on ARM CPU"
   href="https://bugs.llvm.org/show_bug.cgi?id=37074">37074</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Can't build libLLVMSupport.a on ARM CPU
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>lldb
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>6.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>release blocker
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>All Bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>lldb-dev@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>shiftag@nanotek.info
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Hi,

I have the following issue build LLVM 6.0 natively on ARM and I think its
related to lldb :

--- 

Scanning dependencies of target lldbUtilityHelpers
[ 70%] Building CXX object
tools/lldb/unittests/TestingSupport/CMakeFiles/lldbUtilityHelpers.dir/MockTildeExpressionResolver.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Target/CMakeFiles/lldbTarget.dir/ObjCLanguageRuntime.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Plugins/SymbolFile/DWARF/CMakeFiles/lldbPluginSymbolFileDWARF.dir/SymbolFileDWARFDebugMap.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/CompactUnwindInfo.cpp.o
[ 70%] Building CXX object
tools/lldb/unittests/TestingSupport/CMakeFiles/lldbUtilityHelpers.dir/TestUtilities.cpp.o
[ 70%] Linking CXX static library ../../../../lib/liblldbUtilityHelpers.a
[ 70%] Built target lldbUtilityHelpers
Scanning dependencies of target lli-child-target
[ 70%] Building CXX object
tools/lli/ChildTarget/CMakeFiles/lli-child-target.dir/ChildTarget.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/DebugMacros.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Plugins/SymbolFile/DWARF/CMakeFiles/lldbPluginSymbolFileDWARF.dir/UniqueDWARFASTType.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/Declaration.cpp.o
[ 70%] Building CXX object
tools/lldb/source/Symbol/CMakeFiles/lldbSymbol.dir/DWARFCallFrameInfo.cpp.o
[ 70%] Linking CXX static library
../../../../../../lib/liblldbPluginSymbolFileDWARF.a
[ 70%] Built target lldbPluginSymbolFileDWARF
Scanning dependencies of target LLVM
[ 70%] Building CXX object tools/llvm-shlib/CMakeFiles/LLVM.dir/libllvm.cpp.o
[ 70%] Linking CXX shared library ../../lib/libLLVM-6.0.so
[ 70%] Building CXX object
tools/lldb/source/Target/CMakeFiles/lldbTarget.dir/OperatingSystem.cpp.o
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::__future_base::_Result<void>::~_Result(): error: undefined reference to
'std::__future_base::_Result_base::~_Result_base()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::__future_base::_Result<void>::~_Result(): error: undefined reference to
'std::__future_base::_Result_base::~_Result_base()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>,
void ()>::_M_run(): error: undefined reference to
'std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>,
void ()>::_M_run_delayed(std::weak_ptr<std::__future_base::_State_baseV2>):
error: undefined reference to
'std::__future_base::_State_baseV2::_Make_ready::_M_set()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::__future_base::_Task_state<std::function<void ()>, std::allocator<int>,
void ()>::_M_reset(): error: undefined reference to
'std::__future_base::_Result_base::_Result_base()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::swap(std::__exception_ptr::exception_ptr&)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::~exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::~exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::swap(std::__exception_ptr::exception_ptr&)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::~exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::~exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__exception_ptr::exception_ptr::swap(std::__exception_ptr::exception_ptr&)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
std::thread::_Impl<std::_Bind_simple<llvm::ThreadPool::ThreadPool(unsigned
int)::{lambda()#1} ()> >::_M_run(): error: undefined reference to
'std::__atomic_futex_unsigned_base::_M_futex_notify_all(unsigned int*)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
llvm::ThreadPool::~ThreadPool(): error: undefined reference to
'std::__exception_ptr::exception_ptr::exception_ptr()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
llvm::ThreadPool::~ThreadPool(): error: undefined reference to
'std::__exception_ptr::exception_ptr::swap(std::__exception_ptr::exception_ptr&)'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:function
llvm::ThreadPool::asyncImpl(std::function<void ()>): error: undefined reference
to 'std::__future_base::_Result_base::_Result_base()'
../../lib/libLLVMSupport.a(ThreadPool.cpp.o):ThreadPool.cpp:typeinfo for
std::__future_base::_Result<void>: error: undefined reference to 'typeinfo for
std::__future_base::_Result_base'
collect2: error: ld returned 1 exit status
tools/llvm-shlib/CMakeFiles/LLVM.dir/build.make:175: recipe for target
'lib/libLLVM-6.0.so' failed
make[2]: *** [lib/libLLVM-6.0.so] Error 1
CMakeFiles/Makefile2:82420: recipe for target
'tools/llvm-shlib/CMakeFiles/LLVM.dir/all' failed
make[1]: *** [tools/llvm-shlib/CMakeFiles/LLVM.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

---


I'm using the following GCC version :

--- 
$ gcc -v
Reading specs from /usr/lib/gcc/arm-slackware-linux-gnueabi/5.5.0/specs
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/arm-slackware-linux-gnueabi/5.5.0/lto-wrapper
Target: arm-slackware-linux-gnueabi
Configured with: ../gcc-5.5.0/configure --prefix=/usr --mandir=/usr/man
--infodir=/usr/info --libdir=/usr/lib --enable-bootstrap
--enable-checking=release --with-system-zlib --disable-libunwind-exceptions
--with-python-dir=/lib/python2.7/site-packages --enable-libstdcxx-dual-abi
--with-default-libstdcxx-abi=gcc4-compatible --enable-shared
--enable-languages=c,c++,fortran,go,java,objc,lto --enable-objc-gc
--enable-threads=posix --enable-__cxa_atexit --enable-libssp --enable-lto
--with-gnu-ld --verbose --enable-java-home --with-java-home=/usr/lib/jvm/jre
--with-jvm-root-dir=/usr/lib/jvm --with-jvm-jar-dir=/usr/lib/jvm/jvm-exports
--with-arch-directory=
--with-antlr-jar=/root/slackware64-14.2/patches/source/gcc/antlr-runtime-3.4.jar
--enable-java-awt=gtk --disable-gtktest --disable-install-libiberty
--host=arm-slackware-linux-gnueabi --build=arm-slackware-linux-gnueabi
--target=arm-slackware-linux-gnueabi
Thread model: posix
gcc version 5.5.0 (GCC)

--- 

Also, I'm compiling with the following command-line :

cmake -G "Unix Makefiles" ..                                            \
      -DCMAKE_BUILD_TYPE=Release                                        \
      -DCMAKE_INSTALL_PREFIX=/usr                                       \
      -DCMAKE_C_FLAGS=-march=armv7-a                                    \
      -DCMAKE_CXX_FLAGS=-march=armv7-a                                  \
      -DPYTHON_EXECUTABLE=/usr/bin/python2.7                            \
      -DLLVM_TARGETS_TO_BUILD="ARM;X86;AArch64;AMDGPU;Mips;PowerPC"     \
      -DLLVM_ENABLE_LIBCXX=ON                                           \
      -DLLVM_BUILD_TESTS=ON                                             \
      -DLLVM_BUILD_LLVM_DYLIB=ON                                        \
      -DLLVM_LINK_LLVM_DYLIB=ON                                         \
      -DLLVM_ENABLE_RTTI=ON                                             \
      -DLLVM_ENABLE_FFI=ON                                              \
      -DLLVM_ENABLE_ASSERTIONS=True                                     \
      -DCOMPILER_RT_DEFAULT_TARGET_ONLY=OFF                             \
      -DCOMPILER_RT_BUILD_BUILTINS=OFF                                  \
      -DCOMPILER_RT_BUILD_SANITIZERS=OFF                                \
      -DCOMPILER_RT_BUILD_XRAY=OFF                                      \
      -DCOMPILER_RT_BUILD_LIBFUZZER=OFF                                 \
      -DCOMPILER_RT_BUILD_PROFILE=OFF


And precisely, I'm using the following CPU :

   ARMv7l Cortex-A9 Soft-Float FPU NEON 


Do you have an idea of how to fix this ?

Cheers

PS: Please let me know if you need further details.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>