Date: Fri, 7 Oct 2016 11:14:59 +0200 From: "O. Hartmann" <ohartman@zedat.fu-berlin.de> To: Mark Millard <markmi@dsl-only.net> Cc: FreeBSD Ports <freebsd-ports@freebsd.org>, Dimitry Andric <dim@freebsd.org> Subject: Re: graphics/opencv2-core: compiler error on CURRENT: error: 'stddef.h' file not found Message-ID: <20161007111459.164d5be7.ohartman@zedat.fu-berlin.de> In-Reply-To: <66A820DB-DAE0-41F6-BF36-4BB3C1AD465E@dsl-only.net> References: <66A820DB-DAE0-41F6-BF36-4BB3C1AD465E@dsl-only.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_/OKfv.seSMNp/4MrVZGtTGdK Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Am Fri, 7 Oct 2016 02:00:34 -0700 Mark Millard <markmi@dsl-only.net> schrieb: > O. Hartmann ohartman at zedat.fu-berlin.de wrote on Fri Oct 7 08:26:27 UT= C 2016 . . . >=20 > . . . of having problems with not finding <stddef.h> during some port bui= lds. >=20 >=20 > Is there a difference in the -isystem command line options for c++ for th= e working vs. > failing contexts? >=20 > I will presume that there is based on the following. . . (At least it giv= es you > something to look into.) >=20 >=20 >=20 > The issue is not specific to just graphics/opencv-core and graphics/blend= er ports: > others also have problems with the use of -isystem for C++ compiles. See: >=20 > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D213217 >=20 > in particular Comment #2 from Dimitry Andric. >=20 > The problem is in how -isystem is used vs. what is needed for libc++ 3.8.= 0 . >=20 > From O. Hartmann's message text: >=20 > . . . > > -isystem /usr/local/include/eigen3 -isystem /usr/include/include -O2 -p= ipe -O3 =20 > . . . > > In file included from /usr/include/c++/v1/algorithm:624: In file includ= ed > > from /usr/include/c++/v1/initializer_list:47: /usr/include/c++/v1/cstdd= ef:43:15: fatal > > error: 'stddef.h' file not found #include_next <stddef.h> ^ --- =20 > . . . > > In file included from /usr/include/c++/v1/algorithm:624: In file includ= ed > > from /usr/include/c++/v1/initializer_list:47: /usr/include/c++/v1/cstdd= ef:43:15: fatal > > error: 'stddef.h' file not found #include_next <stddef.h> =20 >=20 >=20 > Dimitry wrote for this issue of <stddef.h> not being found: >=20 > > Summary: If for some reason you must completely rebuild the header sear= ch path > > from scratch, you need to add -isystem /usr/include/c++/v1 *before* -i= system > > /usr/include. But it is better not to do this at all. :) =20 >=20 > There is more background/supporting information in that comment. >=20 > =3D=3D=3D > Mark Millard > markmi at dsl-only.net Hello Mark, thanks a lot for the hint. I can not fathom - at the moment - what is different on the two failing sys= tems compared to the non-failing ones. There must be something changing the order of how = the include path is searched now - presumably I understood Dimitry Andric comment right (who explains the pr= oblem very good for my taste). I will make a reference to Dimitri's comment on both PRs I filed. Oliver --Sig_/OKfv.seSMNp/4MrVZGtTGdK Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBCAAGBQJX92eTAAoJEOgBcD7A/5N8FI0H/iDjWp4xnt0j7trWQl9bXKp9 EVaoAKGFe0N7sBl5+GaeoEbGL2KRE5vf0QUzKcIP48ACEDJerfZ+89hgCkfc6AWR xGzVdZFNKTUGkHBZRaFNsvOCtBv0X7t/8aUelReMQMA0CzFFsDEKsl+VihnVdZCt N9gNfm0nO4YEDQ4gtrHWGLzAov0/NNVw3DFyJYpgEVdi3etCxdlVkVJGgswobtrK q/v0jUDEGr/JsdhgDmeh0Urshu50xE6lgdBVU2uKeZt3baQAUn8QQcz+ydpu6O7v /tDcw3BjiMG2dYVdfmA3NOT54NEJzsNcdqDsnO8uILkVx8sYwxnfHpLquN5JkWw= =8NHv -----END PGP SIGNATURE----- --Sig_/OKfv.seSMNp/4MrVZGtTGdK--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161007111459.164d5be7.ohartman>