Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Mar 2017 11:36:11 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Cy Schubert <Cy.Schubert@komquats.com>
Cc:        Roberto Rodriguez Jr <rob.rodz.jr9@gmail.com>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: buildworld error
Message-ID:  <1C4E6A09-86AD-4DC7-AA65-336A1643E070@FreeBSD.org>
In-Reply-To: <201703120146.v2C1keSL088648@slippy.cwsent.com>
References:  <201703120146.v2C1keSL088648@slippy.cwsent.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_41B95E0F-96E1-4E0A-A996-DE3C34E4B13B
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=us-ascii

On 12 Mar 2017, at 02:46, Cy Schubert <Cy.Schubert@komquats.com> wrote:
> 
> In message <5CB065B0-5A7D-4A50-A722-8EA579A67188@FreeBSD.org>, Dimitry
> Andric w
> rites:
>> 
>> 
>> --Apple-Mail=_A0AD1F4B-1279-4DA7-85F9-FB9846A878D7
>> Content-Transfer-Encoding: quoted-printable
>> Content-Type: text/plain;
>> 	charset=us-ascii
>> 
>> On 12 Mar 2017, at 01:55, Roberto Rodriguez Jr <rob.rodz.jr9@gmail.com> =
>> wrote:
>>> =20
>>> Now...
>>> make buildworld
>> ...
>>> In file included from /usr/src/contrib/llvm/lib/Support/APInt.cpp:15:
>>> In file included from =
>> /usr/src/contrib/llvm/include/llvm/ADT/APInt.h:20:
>>> In file included from
>>> /usr/src/contrib/llvm/include/llvm/Support/MathExtras.h:19:
>>> In file included from /usr/include/c++/v1/algorithm:634:
>>> In file included from /usr/include/c++/v1/memory:604:
>>> /usr/include/c++/v1/new:73:10: fatal error: '__undef___deallocate' =
>> file not
>>> found
>>> #include <__undef___deallocate>
>>>        ^
>> 
>> Yes, this is because of the bad advice to run "make delete-old" before
>> you had run "make installworld".  You had an older version of libc++ in
>> /usr/include/c++, but that still required the __undef___deallocate
>> header, which has now been deleted by "make delete-old".
>> 
>> Your best chance is to build and install libc++ first, if possible, by
>> doing:
>> 
>> cd /usr/src/lib/libc++
>> make obj
>> make depend
>> make
>> make install
>> 
>> Then retry building world.
> 
> If this actually fixes it, it (the build) is wrong. You shouldn't have to
> build and install src in order to build another part of src.
> 
> The procedure has always been documented as make installworld first then
> make delete-old. Failing to do so will on rare occasions bite you when
> building a port.

Yes, but in this case Roberto ran "make delete-old" *before* installing
world, on your advice. That is definitely something that should be
avoided.

E.g., "make delete-old" should only ever be run with exactly the same
source tree that your current world was installed from.  And preferably
right after "make installworld" and updating /etc.

-Dimitry


--Apple-Mail=_41B95E0F-96E1-4E0A-A996-DE3C34E4B13B
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.30

iEYEARECAAYFAljFJKMACgkQsF6jCi4glqMSSQCg4Pbv9YGsRSbSXsl3dLdUOV2l
3BYAni5W3WMifJlYr41du/rfQAjTshvX
=hdrh
-----END PGP SIGNATURE-----

--Apple-Mail=_41B95E0F-96E1-4E0A-A996-DE3C34E4B13B--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1C4E6A09-86AD-4DC7-AA65-336A1643E070>