package/protobuf: depend on gcc >= 4.5
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
From: "Mario J. Rugiero" <[email protected]>
Protobuf hits a bug in gcc < 4.5 which breaks the build. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=189
--- package/protobuf/Config.in | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
package/protobuf/Config.in +4 -2
@@ -22,6 +22,7 @@ config BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS default y if BR2_x86_64 default y if BR2_sparc64 default y if BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_HOST_GCC_AT_LEAST_4_5 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_USE_MMU # fork()
@@ -30,6 +31,7 @@ config BR2_PACKAGE_PROTOBUF depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 depends on !BR2_STATIC_LIBS help Protocol buffers are Google's language-neutral, platform-neutral,
@@ -37,7 +39,7 @@ config BR2_PACKAGE_PROTOBUF https://developers.google.com/protocol-buffers -comment "protobuf needs a toolchain w/ C++, threads, dynamic library" +comment "protobuf needs a toolchain w/ C++, threads, dynamic library, gcc >= 4.5" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
Signature · 1 line
2.12.2
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
Hello,
Quoted 4 lines · mrugiero at gmail.com
From: "Mario J. Rugiero" <[email protected]>
Protobuf hits a bug in gcc < 4.5 which breaks the build. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=189
This bug is marked as FIXED, and it has been fixed since many years.
What is the actual problem you are seeing? Is there a reference to an autobuilder issue?
I've tried to build with gcc 4.3, and indeed I'm getting:
./google/protobuf/metadata.h: In constructor 'google::protobuf::internal::InternalMetadataWithArena::InternalMetadataWithArena(google::protobuf::Arena*)':./google/protobuf/metadata.h:175: error: class 'google::protobuf::internal::InternalMetadataWithArena' does not have any field named 'InternalMetadataWithArenaBase' ./google/protobuf/metadata.h: In constructor 'google::protobuf::internal::InternalMetadataWithArenaLite::InternalMetadataWithArenaLite(google::protobuf::Arena*)':./google/protobuf/metadata.h:204: error: class 'google::protobuf::internal::InternalMetadataWithArenaLite' does not have any field named 'InternalMetadataWithArenaBase'
Is this the issue we're talking about ?
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
2017-04-29 9:31 GMT-03:00 Thomas Petazzoni
<[email protected]>:
Quoted 13 lines
Hello,
Quoted 4 lines · mrugiero at gmail.com
From: "Mario J. Rugiero" <[email protected]>
Protobuf hits a bug in gcc < 4.5 which breaks the build. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=189
This bug is marked as FIXED, and it has been fixed since many years.
What is the actual problem you are seeing? Is there a reference to an autobuilder issue?
Quoted 8 lines
I've tried to build with gcc 4.3, and indeed I'm getting:
./google/protobuf/metadata.h: In constructor 'google::protobuf::internal::InternalMetadataWithArena::InternalMetadataWithArena(google::protobuf::Arena*)':./google/protobuf/metadata.h:175: error: class 'google::protobuf::internal::InternalMetadataWithArena' does not have any field named 'InternalMetadataWithArenaBase'./google/protobuf/metadata.h: In constructor 'google::protobuf::internal::InternalMetadataWithArenaLite::InternalMetadataWithArenaLite(google::protobuf::Arena*)':./google/protobuf/metadata.h:204: error: class 'google::protobuf::internal::InternalMetadataWithArenaLite' does not have any field named 'InternalMetadataWithArenaBase'Is this the issue we're talking about ?
Exactly.
Quoted 6 lines
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
I just realized there was more before The question I answered. The bug got fixed in versi?n 4.5.0 of gcc, thus it is unsupported to build with earlier versions. The message seen is an instance of this bug.
El abr. 29, 2017 11:54, "Mario Rugiero" <[email protected]> escribi?:
Quoted 24 lines
2017-04-29 9:31 GMT-03:00 Thomas Petazzoni
<[email protected]>:Quoted 8 lines
Hello,
Quoted 4 lines · mrugiero at gmail.com
From: "Mario J. Rugiero" <[email protected]>
Protobuf hits a bug in gcc < 4.5 which breaks the build. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=189
Quoted 8 lines
This bug is marked as FIXED, and it has been fixed since many years.
What is the actual problem you are seeing? Is there a reference to an autobuilder issue?
I've tried to build with gcc 4.3, and indeed I'm getting:
./google/protobuf/metadata.h: In constructor'
google::protobuf::internal::InternalMetadataWithArena::InternalMetadataWithArena(google::protobuf::Arena*)':Quoted 1 line
./google/protobuf/metadata.h:175: error: class'
google::protobuf::internal::InternalMetadataWithArena' does not have any field named 'InternalMetadataWithArenaBase'Quoted 1 line
./google/protobuf/metadata.h: In constructor
Quoted 15 lines
'
google::protobuf::internal::InternalMetadataWithArenaLite::InternalMetadataWithArenaLite(google::protobuf::Arena*)':Quoted 1 line
./google/protobuf/metadata.h:204: error: class'
google::protobuf::internal::InternalMetadataWithArenaLite' does not have any field named 'InternalMetadataWithArenaBase'Quoted 2 lines
Is this the issue we're talking about ?
Exactly.
Quoted 6 lines
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20170429/e3124482/attachment.html>
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
Hello,
Quoted 3 lines · Mario Rugiero
I just realized there was more before The question I answered. The bug got fixed in versi?n 4.5.0 of gcc, thus it is unsupported to build with earlier versions. The message seen is an instance of this bug.
Then we also have a problem with the host variant: host-protobuf also requires gcc >= 4.5.0. I've restarted my autobuilder, and it uses an old version of gcc on the host, which causes host-protobuf to fail building:
http://autobuild.buildroot.net/results/539/53908fe11b5b6497205e17c151f02e94fab10999/build-end.log
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
2017-04-30 4:29 GMT-03:00 Thomas Petazzoni
<[email protected]>:
Quoted 2 lines
Hello,
Hi
Quoted 6 lines · Mario Rugiero
Then we also have a problem with the host variant: host-protobuf also requires gcc >= 4.5.0. I've restarted my autobuilder, and it uses an old version of gcc on the host, which causes host-protobuf to fail building:
I'll give it a shot at reproducing locally. Hopefully I can patch the triggering instances.
If I succeed, I'll commit a different patch to support building on older versions of gcc,
and will send it upstream, too, so the patches can be dropped in a following version.
Wish me luck!
Quoted 10 lines
http://autobuild.buildroot.net/results/539/53908fe11b5b6497205e17c151f02e94fab10999/build-end.log
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
Regards,
Mario.
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
All,
Quoted 12 lines · Mario Rugiero
2017-04-30 4:29 GMT-03:00 Thomas Petazzoni
<[email protected]>:Quoted 2 lines
Hello,
Hi
Quoted 6 lines · Mario Rugiero
Then we also have a problem with the host variant: host-protobuf also requires gcc >= 4.5.0. I've restarted my autobuilder, and it uses an old version of gcc on the host, which causes host-protobuf to fail building:
Quoted 7 lines
I'll give it a shot at reproducing locally. Hopefully I can patch the triggering instances.
If I succeed, I'll commit a different patch to support building on older versions of gcc,
and will send it upstream, too, so the patches can be dropped in a following version.
Wish me luck!
Another data point, This Ubuntu host GCC seems to not have the issue, so some distros have pulled the fix in.
g++ (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
Matt
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
Hello,
Quoted 11 lines · Matthew Weber
Quoted 7 lines
I'll give it a shot at reproducing locally. Hopefully I can patch the triggering instances.
If I succeed, I'll commit a different patch to support building on older versions of gcc,
and will send it upstream, too, so the patches can be dropped in a following version.
Wish me luck!Another data point, This Ubuntu host GCC seems to not have the issue, so some distros have pulled the fix in.
g++ (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
Well, the problem has been fixed in gcc upstream since 4.5 apparently, so obviously a 4.8 gcc does not exhibit the issue, and it's not because of distro-specific patches.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH 1/1 package/protobuf: depend on gcc >= 4.5
I got gcc 4.3 to build on my Arch box, so I'll try to get it building with it. I'll probably send the patches to work around this issue by the weekend.
Cheers,
Mario.