<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Dear,</p>
<p>I try to build llvm 8.0.0 (with clang compiler-rt libcxx
libcxxabi lldb lld polly). But At libcxx build stage I got a wall
of error: 'std::abort' has not been declared</p>
<p>This happen when the builder compile the file:
libcxxabi/src/cxa_aux_runtime.cpp</p>
<p>I build using gcc 8.3.0 and I am able to build and run some toys
code (see below)</p>
<p>The command used to compile is (they are some duplicated flag due
to var env): <br>
</p>
<p>____________________________________________________________________________<br>
</p>
<p>$ /opt/gcc/bin/g++ -D_GNU_SOURCE
-D_LIBCPP_DISABLE_EXTERN_TEMPLATE
-D_LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS
-D_LIBCXXABI_BUILDING_LIBRARY -D__STDC_CONSTANT_MACROS
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
-I/tmp/BUILD/llvm-8.0.0/build/projects/libcxxabi/src
-I/tmp/BUILD/libcxxabi/src -I/usr/include/libxml2
-I/tmp/BUILD/llvm-8.0.0/build/include
-I/tmp/BUILD/llvm-8.0.0/include -I/tmp/BUILD/libcxxabi/include
-I/tmp/BUILD/libcxx/include -O3 -g -Wall -Wformat-security
-Wp,-D_GLIBCXX_ASSERTIONS -fPIC -fexceptions
-fstack-protector-strong -grecord-gcc-switches
-fasynchronous-unwind-tables -mtune=generic
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -std=gnu++14
-fPIC -fvisibility-inlines-hidden -Werror=date-time -std=c++11
-Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual
-Wno-missing-field-initializers -pedantic -Wno-long-long
-Wimplicit-fallthrough -Wno-maybe-uninitialized
-Wno-class-memaccess -Wno-noexcept-type -Wdelete-non-virtual-dtor
-Wno-comment -ffunction-sections -fdata-sections -O3 -g -Wall
-Wformat-security -Wp,-D_GLIBCXX_ASSERTIONS -fPIC -fexceptions
-fstack-protector-strong -grecord-gcc-switches
-fasynchronous-unwind-tables -mtune=generic
-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -std=gnu++14
-fPIC -nostdinc++ -Werror=return-type -W -Wall -Wchar-subscripts
-Wconversion -Wmissing-braces -Wunused-function -Wshadow
-Wsign-compare -Wsign-conversion -Wstrict-aliasing=2
-Wstrict-overflow=4 -Wunused-parameter -Wunused-variable
-Wwrite-strings -Wundef -Wno-error -pedantic -fstrict-aliasing
-funwind-tables -D_DEBUG -std=c++11 -o
CMakeFiles/cxxabi_objects.dir/cxa_aux_runtime.cpp.o -c
/tmp/BUILD/libcxxabi/src/cxa_aux_runtime.cpp<br>
In file included from /tmp/BUILD/libcxx/include/stdlib.h:94,<br>
from /tmp/BUILD/libcxx/include/cstdlib:86,<br>
from /tmp/BUILD/libcxx/include/exception:82,<br>
from /tmp/BUILD/libcxx/include/new:85,<br>
from
/tmp/BUILD/libcxxabi/src/cxa_aux_runtime.cpp:14:<br>
/opt/gcc/include/c++/8/stdlib.h:38:12: error: 'std::abort' has not
been declared<br>
using std::abort;<br>
^~~~~<br>
/opt/gcc/include/c++/8/stdlib.h:39:12: error: 'std::atexit' has
not been declared<br>
using std::atexit;<br>
^~~~~~<br>
/opt/gcc/include/c++/8/stdlib.h:40:12: error: 'std::exit' has not
been declared<br>
</p>
<p>____________________________________________________________________________</p>
<p><br>
</p>
<p>Thanksfor your help,</p>
<p>Best regards<br>
</p>
<p><br>
</p>
<p>
</p>
<p>#############</p>
<p># TOYS CODE #<br>
</p>
<p>#############</p>
<p>it_works.cpp</p>
<p>===========</p>
<p>#include <iostream><br>
using namespace std;<br>
int main(void) {<br>
cout << "It works for C++!" << endl;<br>
return 0;<br>
}<br>
<br>
</p>
<p><br>
</p>
<p>test_div.cpp
</p>
<p>===========<br>
#include <iostream><br>
#include <cstdlib><br>
using namespace std;<br>
int main()<br>
{<br>
div_t result1 = div(51, 6);<br>
cout << "Quotient of 51/6 = " << result1.quot
<< endl;<br>
cout << "Remainder of 51/6 = " << result1.rem
<< endl;<br>
ldiv_t result2 = div(19237012L,251L);<br>
cout << "Quotient of 19237012L/251L = " <<
result2.quot << endl;<br>
cout << "Remainder of 19237012L/251L = " <<
result2.rem << endl;<br>
return 0;<br>
}<br>
<br>
</p>
<p><br>
</p>
<p><br>
</p>
<p><br>
</p>
<div class="moz-signature">-- <br>
<style type="text/css">
/* ==========================================================================
Signature style
========================================================================== */
#main a, span{
height: auto;
width: auto;
}
#main p {
margin-top: 1rem;
margin-bottom: 1rem;
font-size: 100%;
line-height: 0.3 rem;
width: 100%;
height: auto;
}
#main{
width: 450px;
height: 260px;
border: solid 1px #000;
border-radius: 15px;
box-shadow: 4px 2px black;
position:relative;
clear: both;
}
#selfie{
float: left;
width: 100px;
height:156px;
margin-right: 23px;
margin-left: 16px;
}
#selfie img{
transform: translateY(+10%);
position: relative;
width: 80px;
height: 104px;
}
#logo{
width: 174px;
height: 70px;
}
#description{
float: left;
padding-top: 16px;
width: 290px;
height: 157px;
}
#position{
color: rgb(200,41,52);
}
#job{
color: rgb(126,170,54);
font-size: 1.2em;
width: 290px;
height: 18px;
}
#identity{
font-size: 1em;
width: 290px;
height: 18px;
}
#firstname{
font-weight: bold;
}
#lastname{
font-weight: bold;
}
#laboratory{
color: rgb(200,41,52);
}
#contact{
height: 100%;
width: 100%;
}
.label{
font-weight: bold;
}
#address{
float: left;
height: 104px;
width: 180px;
line-height: 0.3;
margin-right: 1em;
margin-left: 1em;
}
#contact{
position: relative;
float: right;
height: 104px;
width: 225px;
line-height: 0.3;
margin-right: 0em;
margin-left: 0em;
}
.container1{
position:relative;
clear: both;
height: 156px;
width: 450px;
}
.container2{
position:relative;
clear: both;
height: 104px;
width: 450px;
}
</style>
<header>
<meta http-equiv="Content-Type" content="text/html;
charset=UTF-8">
<meta name="format-detection" content="telephone=yes">
</header>
<div id="main">
<div class="container1">
<div id="selfie"> <img
src="cid:part1.8CC770DE.6E5A52FE@cng.fr" alt="Jonathan
MERCIER"> </div>
<div id="description"> <img id="logo"
src="cid:part2.30407014.D68A674E@cng.fr" alt="Centre
National de Recherche en Génomique Humaine (CNRGH)">
<p id="job">Researcher computational biology</p>
<p id="identity"><span id="position">PhD,</span> <span
id="firstname">Jonathan</span> <span id="lastname">MERCIER</span></p>
</div>
</div>
<div class="container2">
<div id="address">
<p id="laboratory">Bioinformatics (LBI)</p>
<p id="address_street" class="address">2, rue Gaston
Crémieux</p>
<p id="address_city" class="address">91057 Evry Cedex</p>
</div>
<div id="contact">
<p id="phone"><span class="label">Tel :</span>(33) 1 60 87
83 44</p>
<p id="email"><span class="label">Email :</span><a
href="mailto:jonathan.mercier@cng.fr">jonathan.mercier@cng.fr</a>
</p>
</div>
</div>
</div>
</div>
</body>
</html>