Am 12.11.2014 um 12:18 schrieb Fabio Castelli:

> Another package in the AUR called mysql-connector-c++, which unfortunately I 
> don't use, requires the mysql-clients package to be built without the no-rtti 
> flag.
> 
> This is entirely the point here, I don't know why the mysql-connector-c++ is 
> unable to built without rtti. The same package builds fine using 
> mariadb-clients WITH no-rtti.
> 
> I think the issue should be searched in the mysql-connector-c++ package, ...

I don't.  Using -fno-rtti to build a package that many other packages
may link to seems wrong.  It's a typical case of premature optimization.
 And it hurts, as is obviuous here.  That flags cripples the c++
compiler to a (non-standard) subset of the language, in non-obvious
ways: beside typeid, dynamic_cast and exception handling may work
differently (if at all).  The first is typically used in libraries like
boost::variant, which are useful in applications communicating with a
database.

As Marcel already noted:  To disable RTTI saves some kilobytes of
executable size. (Code size and working set size is unaffected.)  So it
buys really nothing, considering that other build flags used routinely
in Arch (-D_FORTIFY_SOURCE=2 or -fstack-protector-strong) are much more
costly.

Regards

Reply via email to