【发布时间】:2018-05-09 16:32:38
【问题描述】:
我正在尝试在 Linux Alpine Docker 容器上构建 llvm 6。
这是我在these instructions之后所做的:
apk add build-baseapk add pythonapk add zlibsvn co http://llvm.org/svn/llvm-project/llvm/tags/RELEASE_600/final/ llvmsvn co http://llvm.org/svn/llvm-project/cfe/tags/RELEASE_600/final/ clangsvn co http://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_600/final/ libcxx
(显然,所有svn 都调用了相应的文件夹)
- 然后我创建我的
build文件夹并执行cmake -G "Unix Makefiles" ../llvm
但是,当我到达 make 时,它会随着以下内容而死:
[ 11%] Building CXX object projects/libcxx/lib/CMakeFiles/cxx_objects.dir/__/src/algorithm.cpp.o
In file included from /root/llvm/projects/libcxx/include/ostream:140:0,
from /root/llvm/projects/libcxx/include/istream:163,
from /root/llvm/projects/libcxx/include/random:1646,
from /root/llvm/projects/libcxx/src/algorithm.cpp:11:
/root/llvm/projects/libcxx/include/locale: In function '_Tp std::__1::__num_get_signed_integral(const char*, const char*, std::__1::ios_base::iostate&, int)':
/root/llvm/projects/libcxx/include/locale:739:76: error: there are no arguments to 'strtoll_l' that depend on a template parameter, so a declaration of 'strtoll_l' must be available [-fpermissive]
long long __ll = strtoll_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
^
/root/llvm/projects/libcxx/include/locale:739:76: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/root/llvm/projects/libcxx/include/locale: In function '_Tp std::__1::__num_get_unsigned_integral(const char*, const char*, std::__1::ios_base::iostate&, int)':
/root/llvm/projects/libcxx/include/locale:779:86: error: there are no arguments to 'strtoull_l' that depend on a template parameter, so a declaration of 'strtoull_l' must be available [-fpermissive]
unsigned long long __ll = strtoull_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
^
At global scope:
cc1plus: warning: unrecognized command line option '-Wno-noexcept-type'
make[2]: *** [projects/libcxx/lib/CMakeFiles/cxx_objects.dir/build.make:63: projects/libcxx/lib/CMakeFiles/cxx_objects.dir/__/src/algorithm.cpp.o] Error 1
我是否缺少某些东西,例如依赖项?或者这是一个需要修复的已知错误?我应该怎么做才能在 Linux Alpine 上获得最新的 llvm + clang + libc++?
【问题讨论】:
-
从它的外观来看,我猜这与您的主机编译器和/或标准库有关
标签: build clang llvm alpine libc++