All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [Bug 7250] New: Cannot build with -std=c++11
@ 2014-06-30 21:04 bugzilla at busybox.net
  2014-06-30 21:05 ` [Buildroot] [Bug 7250] " bugzilla at busybox.net
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-06-30 21:04 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

           Summary: Cannot build with -std=c++11
           Product: buildroot
           Version: 2014.05
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: minor
          Priority: P5
         Component: Other
        AssignedTo: unassigned at buildroot.uclibc.org
        ReportedBy: tarka.t.otter at gmail.com
                CC: buildroot at uclibc.org
   Estimated Hours: 0.0


Created attachment 5468
  --> https://bugs.busybox.net/attachment.cgi?id=5468
c++11 test case

After building a buildroot toolchain based on GCC 4.8.3, it does not seem
possible to build any packages that require C++11 support.

Attached is a simple test case that compiles fine on my host machine with GCC
4.8.2 with -std=c+11, but fails to compile using the cross toolchain with the
same flag.

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
@ 2014-06-30 21:05 ` bugzilla at busybox.net
  2014-06-30 21:13 ` bugzilla at busybox.net
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-06-30 21:05 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #1 from Richard <tarka.t.otter@gmail.com> 2014-06-30 21:05:41 UTC ---
Created attachment 5474
  --> https://bugs.busybox.net/attachment.cgi?id=5474
Toolchain .config

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
  2014-06-30 21:05 ` [Buildroot] [Bug 7250] " bugzilla at busybox.net
@ 2014-06-30 21:13 ` bugzilla at busybox.net
  2014-06-30 21:52 ` bugzilla at busybox.net
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-06-30 21:13 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

Yann E. MORIN <yann.morin.1998@free.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |yann.morin.1998 at free.fr

--- Comment #2 from Yann E. MORIN <yann.morin.1998@free.fr> 2014-06-30 21:13:55 UTC ---
Confirmed:

  - with a host gcc-4.8.3, this compiles fine:
      $ g++ -std=c++11 -c -o 5468.o 5468.cxx
  - with a crosstool-NG armv6 toolchain, compiles OK:
      $ armv6-rpi-linux-gnueabihf-g++ -std=c++11 -c -o 5468.o 5468.cxx
  - but fails with the Buildroot-built toolchain using gcc-4.8.3:
      $ arm-buildroot-linux-uclibcgnueabihf-g++ -std=c++11 -c -o 5468.o
5468.cxx
      ess.cxx: In function ?int main()?:
      ess.cxx:5:5: error: ?to_string? is not a member of ?std?
           std::to_string(0);
           ^

C++ expert, anyone? ;-)

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
  2014-06-30 21:05 ` [Buildroot] [Bug 7250] " bugzilla at busybox.net
  2014-06-30 21:13 ` bugzilla at busybox.net
@ 2014-06-30 21:52 ` bugzilla at busybox.net
  2014-07-01 18:47 ` bugzilla at busybox.net
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-06-30 21:52 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

Thomas Petazzoni <thomas.petazzoni@free-electrons.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at buildroot.uclibc |thomas.petazzoni at free-elect
                   |.org                        |rons.com

--- Comment #3 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2014-06-30 21:52:38 UTC ---
Thanks for the report. I'll try to have a look.

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (2 preceding siblings ...)
  2014-06-30 21:52 ` bugzilla at busybox.net
@ 2014-07-01 18:47 ` bugzilla at busybox.net
  2014-07-07 21:34 ` bugzilla at busybox.net
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-07-01 18:47 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #4 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2014-07-01 18:47:48 UTC ---
Basically, you're affected by
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58393.

uClibc does not implement C99 complex number computations (functions such as
ccosf) and therefore libstdc++ concludes that there is no fully functional C99
support, and therefore it doesn't enable std::to_string() and many other
methods.

When building with uClibc:

configure:16721: checking for ISO C99 support in <complex.h>
[...]
/tmp/cc2ksPYJ.o: In function `main':
/home/test/outputs/arm-uclibc/build/host-gcc-final-4.8.3/build/arm-buildroot-linux-uclibcgnueabihf/libstdc++-v3/conftest.cpp:49:
undefined reference to `ccosf'
/home/test/outputs/arm-uclibc/build/host-gcc-final-4.8.3/build/arm-buildroot-linux-uclibcgnueabihf/libstdc++-v3/conftest.cpp:50:
undefined reference to `ccoshf'
[...]
configure:16861: result: no
configure:17182: checking for fully enabled ISO C99 support
configure:17184: result: no

When building with glibc:

configure:17182: checking for fully enabled ISO C99 support
configure:17184: result: yes

And the std::to_string method is wrapped into a C99 conditional:

#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99) \
     && !defined(_GLIBCXX_HAVE_BROKEN_VSWPRINTF))

#include <ext/string_conversions.h>

namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
[...]
  inline string
  to_string(int __val)
  { return __gnu_cxx::__to_xstring<string>(&std::vsnprintf, 4 * sizeof(int),
                                           "%d", __val); }

So, for an immediate solution, use glibc. I'll try to see if we can integrate
the patch proposed in the bug report.

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (3 preceding siblings ...)
  2014-07-01 18:47 ` bugzilla at busybox.net
@ 2014-07-07 21:34 ` bugzilla at busybox.net
  2014-07-08 21:06 ` bugzilla at busybox.net
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-07-07 21:34 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #5 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2014-07-07 21:34:49 UTC ---
Created attachment 5498
  --> https://bugs.busybox.net/attachment.cgi?id=5498
gcc patch

Could you put this patch in package/gcc/4.8.3/ in the Buildroot sources,
rebuild the toolchain, and try again? Here it seems to fix the problem. It
would be good if you could also test the runtime execution of the program.
Thanks!

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (4 preceding siblings ...)
  2014-07-07 21:34 ` bugzilla at busybox.net
@ 2014-07-08 21:06 ` bugzilla at busybox.net
  2014-07-09 17:50 ` bugzilla at busybox.net
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-07-08 21:06 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

Thomas Petazzoni <thomas.petazzoni@free-electrons.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Attachment #5498|0                           |1
        is obsolete|                            |

--- Comment #6 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2014-07-08 21:06:57 UTC ---
Created attachment 5510
  --> https://bugs.busybox.net/attachment.cgi?id=5510
Patch to fix the issue for gcc 4.8

This time, here is a Buildroot patch that fixes the issue. Could you test it?
I'm currently build-testing it (and similar patches for gcc 4.7 and 4.9) with
gcc4.7/uclibc, gcc4.8/uclibc, gcc4.9/uclibc and gcc4.8/glibc.

Thanks!

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (5 preceding siblings ...)
  2014-07-08 21:06 ` bugzilla at busybox.net
@ 2014-07-09 17:50 ` bugzilla at busybox.net
  2014-08-09 15:23 ` bugzilla at busybox.net
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-07-09 17:50 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #7 from Richard <tarka.t.otter@gmail.com> 2014-07-09 17:50:44 UTC ---
Hey,

yeah, that patch works for me, package builds and runs fine.

Thanks all,,

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (6 preceding siblings ...)
  2014-07-09 17:50 ` bugzilla at busybox.net
@ 2014-08-09 15:23 ` bugzilla at busybox.net
  2014-08-09 15:49 ` bugzilla at busybox.net
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-08-09 15:23 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #8 from Thomas De Schampheleire <patrickdepinguin@gmail.com> 2014-08-09 15:23:13 UTC ---
Thomas, has this patch already been sent to the list? I guess we should fix
this in  2014.08?

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (7 preceding siblings ...)
  2014-08-09 15:23 ` bugzilla at busybox.net
@ 2014-08-09 15:49 ` bugzilla at busybox.net
  2014-08-09 20:11 ` bugzilla at busybox.net
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-08-09 15:49 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #9 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2014-08-09 15:49:28 UTC ---
Not yet, because the same patch needs to be made for gcc 4.7, 4.8, 4.9 and the
special ARC version. I've already done that, and started building toolchains
with those various gcc versions. But it takes some time, and I was busy with
the maintenance. Now that Peter has taken over the maintenance, I'll focus on
bug fixes, and I know I have this bug, and the one related to musl patches to
fix. Those are my top priorities issues to fix for 2014.08.

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (8 preceding siblings ...)
  2014-08-09 15:49 ` bugzilla at busybox.net
@ 2014-08-09 20:11 ` bugzilla at busybox.net
  2014-08-13 17:52 ` bugzilla at busybox.net
  2014-08-17  7:44 ` bugzilla at busybox.net
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-08-09 20:11 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #10 from Thomas De Schampheleire <patrickdepinguin@gmail.com> 2014-08-09 20:11:49 UTC ---
Ok, thanks for the feedback!

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (9 preceding siblings ...)
  2014-08-09 20:11 ` bugzilla at busybox.net
@ 2014-08-13 17:52 ` bugzilla at busybox.net
  2014-08-17  7:44 ` bugzilla at busybox.net
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-08-13 17:52 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

--- Comment #11 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2014-08-13 17:52:02 UTC ---
Patch series sent at
http://lists.busybox.net/pipermail/buildroot/2014-August/104150.html.

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [Buildroot] [Bug 7250] Cannot build with -std=c++11
  2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
                   ` (10 preceding siblings ...)
  2014-08-13 17:52 ` bugzilla at busybox.net
@ 2014-08-17  7:44 ` bugzilla at busybox.net
  11 siblings, 0 replies; 13+ messages in thread
From: bugzilla at busybox.net @ 2014-08-17  7:44 UTC (permalink / raw)
  To: buildroot

https://bugs.busybox.net/show_bug.cgi?id=7250

Peter Korsgaard <jacmet@uclibc.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #12 from Peter Korsgaard <jacmet@uclibc.org> 2014-08-17 07:44:45 UTC ---
Patch series has now been applied:

http://git.buildroot.net/buildroot/commit/?id=48f182ece057b8dedf72a0c601310d72b3d91a86

-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2014-08-17  7:44 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-30 21:04 [Buildroot] [Bug 7250] New: Cannot build with -std=c++11 bugzilla at busybox.net
2014-06-30 21:05 ` [Buildroot] [Bug 7250] " bugzilla at busybox.net
2014-06-30 21:13 ` bugzilla at busybox.net
2014-06-30 21:52 ` bugzilla at busybox.net
2014-07-01 18:47 ` bugzilla at busybox.net
2014-07-07 21:34 ` bugzilla at busybox.net
2014-07-08 21:06 ` bugzilla at busybox.net
2014-07-09 17:50 ` bugzilla at busybox.net
2014-08-09 15:23 ` bugzilla at busybox.net
2014-08-09 15:49 ` bugzilla at busybox.net
2014-08-09 20:11 ` bugzilla at busybox.net
2014-08-13 17:52 ` bugzilla at busybox.net
2014-08-17  7:44 ` bugzilla at busybox.net

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.