Date: Tue, 21 Aug 2012 19:15:44 +0200 From: "O. Hartmann" <ohartman@zedat.fu-berlin.de> To: "Andrew W. Nosenko" <andrew.w.nosenko@gmail.com> Cc: Ports FreeBSD <freebsd-ports@freebsd.org> Subject: Re: pkg(ng)/portupgrade-devel: does not respect setting of USE_GCC= 4.6+ Message-ID: <5033C240.7040402@zedat.fu-berlin.de> In-Reply-To: <CALa-7vwCv3i6zFDzcuWtn59T8ryHdBiR1mvyf8DM9oX4V%2B8Mjw@mail.gmail.com> References: <50327A9C.5040103@zedat.fu-berlin.de> <50328AF8.60804@infracaninophile.co.uk> <5032925C.4040604@zedat.fu-berlin.de> <CALa-7vwCv3i6zFDzcuWtn59T8ryHdBiR1mvyf8DM9oX4V%2B8Mjw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigC827AD7E60458E736557EA08 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Am 08/21/12 11:25, schrieb Andrew W. Nosenko: > On Mon, Aug 20, 2012 at 10:39 PM, O. Hartmann > <ohartman@zedat.fu-berlin.de> wrote: >> I'm pretty sure, that the last time I updated port math/fftw3 I wanted= >> option OpenMP enabled so I declared "USE_GCC=3D4.6+" in make.conf. Lat= er, >> also working!, I excluded all these user definitions into an external >> file called ports.conf located in /usr/local/etc (I like this clean >> separation of OS and user messes ;-) ). Suddenly it doesn't work >> anymore. There were changes in several Mk files located in /usr/ports/= Mk. >=20 > Beware! Even if you will be able to force gcc-4.6 to be used and thus > obtain OpenMP-3.1 at the compilation stage, the libgomp.so.1, which > will be used at run-time, will be OpenMP-3.0 from the base gcc-4.2 > (/usr/lib/libgomp.so.1 on my FreeBSD-8.0 system). Also, as a bonus, Shouldn't that be /usr/local/lib/gcc46/libgomp.so.1 then? If not, then using a modern and fast compiler like gcc 4.6/4.7 or even 4.8 for OMP is useless on FreeBSD (I use FreeBSD 9.1-PRE and 10.0-CURRENT). > you may be exposed to ancient bugs from the gcc-4.2 openmp > implementation. For me, personally, it is memory leak as described in > http://gcc.gnu.org/ml/gcc/2009-05/msg00427.html > Fixed in gcc-4.3, but gcc-4.3 never was nor will be in base. >=20 > Thus... For obtain the proper openmp you will either limit yourself > to openmp-3.0 from gcc-4.2 and workaround known bugs, or make a black > magic dance for override and "unsteal" the libgomp (e.g. using > libmap.conf) and have maintenance problem every time when gcc version > changes (and, therefore, changes the directory name, where gcc > libraries live). Well, I see, here comes the black magic in refering eventually to /usr/local/lib/gcc46/libgomp.so.1. I'm confused now! I try avoiding the lagcy and outdated gcc 4.2. Unfortunatelly, CLANG doesn't support OpenMP (yet), and it is not clear when OpenMP will ever make in in due time into it. I thought, and this seems to be a big mistake and misunderstanding of mine, that USE_GCC=3D4.6+ will circumvent any problems and even relocated= the library paths for compiled software using OpenMP. We use lots of modelling software based upon OpenMP. That would imply if still using USE_GCC=3D4.6+ to provide OpenMP support will reel in the outdated libgomp.so.1 from the legacy gcc4.2? this is a very bad outlook ... >=20 --------------enigC827AD7E60458E736557EA08 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iQEcBAEBAgAGBQJQM8JFAAoJEOgBcD7A/5N8zWgIAK6wyEGoHrz/lykkDwB2tNiE 9EDwBNNVsHX8F8c5LMqC8Xu4ij5HW21nkKNqVe8qVy0PPThYX1g6/Y10ckuKLShD MxBN3uwBX+8i91si2bl41hHRB5MTn2uzohGr/GGoAMXO8OU6Kqf3kWmXsz7dG6Sm uGn9dSjHEmS1IGYJHzZFyXeiuWL0+SDNHLyuHSbx76kU/Yd4BRt5Oi/5M8b/9k/d vQufn9BjuMm5A4ViomVmvFYg758XYYaZZwWMHcFNmGBz5VT+AsZ2MTOHb8h//3yk tMPtHjyhzf8EMWkQauCE4vJNGzdDFzUrj2ZlTgt70fbJRfDftXsz5KKxz92q8Fg= =+XBc -----END PGP SIGNATURE----- --------------enigC827AD7E60458E736557EA08--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5033C240.7040402>