Hi Dave,

Thanks for your response.

It seems few projects have started to enable c++11 or have ever encountered the 
c+11 ABI compatibility issues. Though I do find some real world case like us by 
googling:
http://lists.dune-project.org/pipermail/dune/2012-June/011533.html
http://www.gossamer-threads.com/lists/engine?do=post_view_flat;post=281727;page=1;mh=-1;list=gentoo;sb=post_latest_reply;so=ASC

The problem is:

1.       If your C++ project want to enable the option “std=c++11” when 
compiling, all the C++ libraries chain your project link to should be built 
with this option too (including boost).

2.       If above requirement is not met, it is unsafe. Unsafe doesn’t mean 
factual problems. Your process might still work fine even above criteria is not 
met.

3.       But when there is problem, it might be difficult to realize that that 
is cause by this, because often what you get is unexpected crash with confusing 
stack.

Hope I can hear more suggestions/opinions on this problem.

------------------------------
Best Regards
Jacky

From: epel-devel-boun...@lists.fedoraproject.org 
[mailto:epel-devel-boun...@lists.fedoraproject.org] On Behalf Of Dave Johansen
Sent: Friday, 16 January 2015 2:16 AM
To: EPEL Development List
Subject: Re: [EPEL-devel] Questiona regarding c++11 support

On Wed, Jan 14, 2015 at 9:12 PM, Zhiwei Zhu 
<z_...@wargaming.net<mailto:z_...@wargaming.net>> wrote:
Dear all,

I am not sure whether this has been discussed before or whether it’s 
appropriate to discuss this in this list.

My question is about c++11 support for the projects on epel (probably more 
specifically, epel7).  Do we have any kind of general policy regarding c++11 
support?
I am asking this because recently we encountered a problem related to this. The 
case is that our project is built with option ‘-std=c++11’ while the library 
used by our project on epel (specifically mongo-cxx-driver) was not built with 
this option, and our process simply crashes during start.
The root cause is the ABI built with c++11 option is actually not compatible 
with that without it. Please refer to 
https://gcc.gnu.org/wiki/Cxx11AbiCompatibility.

So the ‘-std=c++11’ draws a clear line between binaries/libraries, all of them 
must be built either with it or without it(C code is probably fine). You cannot 
mix them togother, otherwise there might be risks.

Is there any general policy regarding this c++11 support? Or just maintainers 
make the decision for specific project?

If the question is not approriate to discuss in this list, please ignore it. Or 
if anyone has any idea about where I can find relevant information,  could you 
please share with me?

devtoolset seems to be the right solution for C++11 support because it offers 
better ABI compatibility ( see section 2.2.2 at 
https://access.redhat.com/documentation/en-US/Red_Hat_Developer_Toolset/3/html/3.0_Release_Notes/DTS3.0_Release.html#Features
 ).
However, having said that, I previously brought up the idea of making the 
devtoolset available for use in the EPEL ( 
https://lists.fedoraproject.org/pipermail/epel-devel/2013-September/008737.html 
) but the conversation never really picked up any traction. I would definitely 
love to see devtoolset be made available for use when building packages in the 
EPEL but I'm just not sure how to get that ball rolling.
Dave
[wargaming.net]
EgzO3mXGcK

This e-mail may contain CONFIDENTIAL AND PROPRIETARY INFORMATION and/or 
PRIVILEGED AND CONFIDENTIAL COMMUNICATION intended solely for the recipient 
and, therefore, may not be retransmitted to any party outside of the 
recipient's organization without the prior written consent of the sender. If 
you have received this e-mail in error please notify the sender immediately by 
telephone or reply e-mail and destroy the original message without making a 
copy. Wargaming.net accepts no liability for any losses or damages resulting 
from infected e-mail transmissions and viruses in e-mail attachment. kgzO3mXGcg
_______________________________________________
epel-devel mailing list
epel-devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/epel-devel

Reply via email to