Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 May 2016 19:35:16 -0700
From:      Mark Millard <markmi@dsl-only.net>
To:        Bryan Drewery <bdrewery@FreeBSD.org>
Cc:        FreeBSD Current <freebsd-current@freebsd.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, Gerald Pfeifer <gerald@FreeBSD.org>, Warner Losh <imp@bsdimp.com>
Subject:   Re: svn commit: r297435 - head: still problems for stage 3 when gcc 4.2.1 is avoided (powerpc64 self-hosted build)
Message-ID:  <C23B8A92-8855-48CE-B442-3C7BEFCEF820@dsl-only.net>
In-Reply-To: <72F5F9FD-5854-455D-8844-C4E1887DCE9F@dsl-only.net>
References:  <5A0ACA76-6F1D-4975-9E59-2A64BB8EFC77@dsl-only.net> <56FD9757.6040709@FreeBSD.org> <9E3033D5-F416-4B78-97C2-0A0AABF5A49E@dsl-only.net> <56FDA5F9.1090601@FreeBSD.org> <481DA341-0DFC-4AF1-AD4D-56C5388FA8E3@dsl-only.net> <56FDBAA8.5060407@FreeBSD.org> <7DEF97EC-D970-4F64-AF72-8939609A1D48@dsl-only.net> <DD969902-BCA8-480B-B32F-07DCC6C3E32B@dsl-only.net> <db60bcec-a6c4-02ac-da6c-1ac70821b806@FreeBSD.org> <4953F764-FC4E-491F-A6B7-4CAF65EAAEB7@dsl-only.net> <70a54660-775d-c12c-b991-507d26ce1342@FreeBSD.org> <72F5F9FD-5854-455D-8844-C4E1887DCE9F@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2016-May-27, at 7:04 PM, Mark Millard <markmi at dsl-only.net> wrote:

> FYI. . .
>=20
> I expect that building gcc49 with:
>=20
> +		--with-local-prefix=3D/usr \
>=20
> will help with system build activities via gcc49/g++49 by avoiding =
/usr/local/include interfering.
>=20
> But I also expect that various port builds based on that same =
gcc49/g++49 will have problems from not explicitly forcing =
/usr/local/include to be looked at when appropriate/required --unless =
something else is in place to do that separately. I expect some implicit =
/usr/local/include references to the likes of some of the below list:
>=20
>> # diff -qr /usr/include/ /usr/local/include/ | grep /local/ | more
>> Only in /usr/local/include/: apr-1
>> Files /usr/include/atf-c/defs.h and /usr/local/include/atf-c/defs.h =
differ
>> Only in /usr/local/include/: autosprintf.h
>> Only in /usr/local/include/: bfd.h
>> Only in /usr/local/include/: bfdlink.h
>> Only in /usr/local/include/: boost
>> Only in /usr/local/include/: curl
>> Only in /usr/local/include/: db5
>> Only in /usr/local/include/: dis-asm.h
>> Files /usr/include/dwarf.h and /usr/local/include/dwarf.h differ
>> Only in /usr/local/include/: editline
>> Only in /usr/local/include/: expat.h
>> Only in /usr/local/include/: expat_config.h
>> Only in /usr/local/include/: expat_external.h
>> Only in /usr/local/include/: ffi.h
>> Only in /usr/local/include/: ffitarget.h
>> Only in /usr/local/include/: gdbm.h
>> Only in /usr/local/include/: gettext-po.h
>> Only in /usr/local/include/: gmp.h
>> Only in /usr/local/include/: gmpxx.h
>> Only in /usr/local/include/: gnumake.h
>> Files /usr/include/histedit.h and /usr/local/include/histedit.h =
differ
>> Only in /usr/local/include/: idn-free.h
>> Only in /usr/local/include/: idn-int.h
>> Only in /usr/local/include/: idna.h
>> Only in /usr/local/include/: layout
>> Files /usr/include/libdwarf.h and /usr/local/include/libdwarf.h =
differ
>> Only in /usr/local/include/: libintl.h
>> Only in /usr/local/include/: lua52
>> Only in /usr/local/include/: lutok
>> Only in /usr/local/include/: mpc.h
>> Only in /usr/local/include/: mpf2mpfr.h
>> Only in /usr/local/include/: mpfr.h
>> Only in /usr/local/include/: pkg.h
>> Only in /usr/local/include/: plugin-api.h
>> Only in /usr/local/include/: pr29.h
>> Only in /usr/local/include/: punycode.h
>> Only in /usr/local/include/: python2.7
>> Only in /usr/local/include/: readline
>> Only in /usr/local/include/: ruby-2.2
>> Only in /usr/local/include/: serf-1
>> Only in /usr/local/include/: sqlite3.h
>> Only in /usr/local/include/: sqlite3ext.h
>> Only in /usr/local/include/: stringprep.h
>> Only in /usr/local/include/: subversion-1
>> Only in /usr/local/include/: sudo_plugin.h
>> Only in /usr/local/include/: symcat.h
>> Only in /usr/local/include/: tld.h
>> Only in /usr/local/include/: unicode
>> Only in /usr/local/include/: yaml.h
>=20
> It might be that even gcc compilers built by the adjusted gcc49 would =
not find, say, gmp.h or mpfr.h .
>=20
> dwarfdump's build/install installs /usr/local/include/dwarf.h and =
/usr/local/include/libdwarf.h to match its code. Such examples can need =
careful control over which file is used (here dwarf.h and libdwarf.h in =
/usr/include vs. /usr/local/include ).
>=20
> (It will still be some time before I get to switch to this =
with-local-prefix experiment.)
>=20
> =3D=3D=3D
> Mark Millard
> markmi at dsl-only.net

Given the above I may try using

+		--with-local-prefix=3D/usr \

only for building devel/powerpc64-gcc initially because I do not use =
devel/powerpc64-gcc to build ports, just for system-build activities. =
devel/powerpc64-gcc has the /usr/local/include problem for system build =
activities too.

=3D=3D=3D
Mark Millard
markmi at dsl-only.net


On 2016-May-27, at 5:23 PM, Bryan Drewery <bdrewery at FreeBSD.org> =
wrote:

> On 5/27/2016 5:15 PM, Mark Millard wrote:
>> +		--with-local-prefix=3D/usr/include \
>>=20
>> looks wrong to me. The default is not /usr/local/include but just =
/usr/local . Quoting https://gcc.gnu.org/install/configure.html :
>>=20
>> --with-local-prefix=3Ddirname
>> Specify the installation directory for local include files. The =
default is /usr/local. Specify this option if you want the compiler to =
search directory dirname/include for locally installed header files =
instead of /usr/local/include.
>>=20
>> So your change would generate /usr/include/include for the overall =
include path from what I can tell.
>>=20
>> Do you want:
>>=20
>> +		--with-local-prefix=3D/usr \
>>=20
>> instead?
>=20
> You're right, but it makes no real difference since it removes
> /usr/local/include:
>=20
>> ignoring nonexistent directory =
"/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/x86_=
64-portbld-freebsd11.0/4.9.4/../../../../../x86_64-portbld-freebsd11.0/inc=
lude"
>> ignoring duplicate directory =
"/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/../.=
./../lib/gcc49/gcc/x86_64-portbld-freebsd11.0/4.9.4/include"
>> ignoring nonexistent directory "/usr/include/include"
>=20
> ^ yes wrong
>=20
>> ignoring duplicate directory =
"/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/../.=
./../lib/gcc49/gcc/x86_64-portbld-freebsd11.0/4.9.4/include-fixed"
>> ignoring nonexistent directory =
"/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/../.=
./../lib/gcc49/gcc/x86_64-portbld-freebsd11.0/4.9.4/../../../../../x86_64-=
portbld-freebsd11.0/include"
>> #include "..." search starts here:
>> #include <...> search starts here:
>> =
/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/x86_6=
4-portbld-freebsd11.0/4.9.4/include
>> =
/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/x86_6=
4-portbld-freebsd11.0/4.9.4/include-fixed
>> =
/root/svn/ports/lang/gcc49/work/stage/usr/local/bin/../lib/gcc49/gcc/../..=
/../include
>> /usr/include
>=20
> ^ Still added
>=20
>> End of search list.
>=20
>=20
>=20
> --=20
> Regards,
> Bryan Drewery
>=20
>=20




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C23B8A92-8855-48CE-B442-3C7BEFCEF820>