Date: Wed, 12 Feb 2014 07:32:09 +0100 From: Rainer Hurling <rhurlin@gwdg.de> To: Matthias Andree <matthias.andree@gmx.de>, freebsd-ports@freebsd.org Cc: Koop Mast <kwm@freebsd.org>, Baptiste Daroussin <bapt@FreeBSD.org> Subject: Re: PATCH: Re: graphics/rawtherapee: r342622 crashes on HEAD Message-ID: <52FB1569.7070702@gwdg.de> In-Reply-To: <52FA9DE5.9080503@gmx.de> References: <706bd12f0dfa77b042ec36685b08c572.squirrel@mx.waitman.net> <20140209223228.GR80056@ithaqua.etoilebsd.net> <bfdcc4891e05f898e12591cb17be5527.squirrel@mx.waitman.net> <20140209223830.GS80056@ithaqua.etoilebsd.net> <53abb5a25f86f9c10fabcabb83e4157d.squirrel@mx.waitman.net> <20140210104037.7dcaf6b0@X220.alogt.com> <52F895F3.6070606@FreeBSD.org> <20140211010834.384f8a34@X220.alogt.com> <52F95186.9010503@FreeBSD.org> <52F9E549.4070205@gwdg.de> <52F9E8DB.6070301@gmx.de> <52F9F16E.6040809@gwdg.de> <52FA9DE5.9080503@gmx.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Am 11.02.2014 23:02 (UTC+1) schrieb Matthias Andree: > Am 11.02.2014 10:46, schrieb Rainer Hurling: > >> I just recognized another issue, what I think is not intended. >> >> Newest graphics/rawtherapee installs and uses devel/libc++. This wanted >> behaviour is included in the ports Makefile for OpenMP reasons. >> >> As a side effect, other ports with c++ usage also seem to grab >> devel/libc++, even if devel/libc++ is not mentioned in the ports >> Makefile. You can try this by rebuilding and reinstalling e.g. >> graphics/darktable. This leads to > > I think that is an artifact of the same library being installed in two > places. As far as I understood bapt@ (Cc'd), the idea is that the port > mirrors the c++ library we have in the base system, and both are > compatible, and particularly, they have the same ABI. Basically we need > the libc++ headers to make use of libc++'s inline namespace so that > rawtherapee references libc++'s symbols (in the std::__1:: namespace) > rather than libstdc++ (in the std:: namespace). > > If you are willing to experiment, you should be able to deinstall libc++ > now, and both darktable and rawtherapee should continue to work with the > base libc++. Yes, this presumption is right. After 'pkg delete -f libc++-200683 libcxxrt-20131225_1' I am able to use rawtherapee furthermore. So ports like RawTherapee would also work, when devel/libc++ and devel/libcxxrt would be deinstalled right after successfull installation of the port. My problem is more the other side around: Why do ports like e.g. graphics/darktable pick up the headers from devel/libc++ instead of the base ones? In darktable there is no devel/libc++ dependency specified. Installing graphics/darktable, while devel/libc++ is already installed, creates a dependency. This will jumble up the dependency list in ports/packages and should not happen. Only ports with a declared dependency on devel/libc++ should use this port. > >> #pkg info -r libc++-200683 >> libc++-200683: >> rawtherapee-4.0.12_1 >> darktable-1.2.3_3 >> >> #ldd /usr/local/bin/darktable | grep c++ >> libc++.so.1 => /usr/local/lib/libc++.so.1 (0x4690e000) >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52FB1569.7070702>