QA script error (libc++)

Fernando Herrero Carrón elferdo at gmail.com
Fri Jun 24 08:25:40 UTC 2016


El 24 jun. 2016 8:16 a. m., "Fernando Apesteguía" <
fernando.apesteguia at gmail.com> escribió:
>
> One of my ports is written in C++. It links agains libc++ that is in
> base (/usr/src/contrib/libc++). The port still builds fine and works
> but the QA scripts show an error complaining about the executable
> being linked to libc++ without the library being listed as an actual
> dependency and it suggests to add the following line to the Makefile:
>
> LIB_DEPENDS+=libc++.so:devel/libc++
>
> Is this strictly necessary? Would something like this be acceptable?:
>
> .if !exists(/usr/lib/libc++.so)
> ...
> LIB_DEPENDS+=libc++.so:devel/libc++
> ...
> .endif
>
> Note: the port does not compile on FreeBSD < 10.x
>
> Thanks in advance.

Dear Fernando,

I would say adding a dependency on libc++ from ports is not necessary. On a
standard system you can pass the compiler an option like -stdlib=libc++ and
it works.

This library is usually linked against when compiling with c++11 or newer.
Maybe adding the appropriate compiler option [1] would be a better choice?

Cheers,
Fernando

[1] https://www.freebsd.org/doc/en/books/porters-handbook/uses-compiler.html


More information about the freebsd-ports mailing list