Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 820282
Summary: | qpid-cpp Fails To Build From Source on Fedora 17 (and Rawhide) for ARM architectures | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Niels de Vos <ndevos> |
Component: | qpid-cpp | Assignee: | Darryl L. Pierce <dpierce> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | high | ||
Version: | 18 | CC: | jose.p.oliveira.oss, nsantos, pbrobinson, tross |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | arm | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2013-01-28 11:41:09 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 245418 | ||
Attachments: |
Description
Niels de Vos
2012-05-09 14:08:00 UTC
Created attachment 583308 [details]
build.log from the failed build without RDMA support on arm.koji.fedoraproject.org
Ai, even disabling RDMA is not sufficient. The attached log contains the output of the build. This is the error that caused the build to fail:
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../include -I../include -I. -I=. -Werror -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long -Wvolatile-register-var -Winvalid-pch -Wno-system-headers -Woverloaded-virtual -DQPID_LIBEXEC_DIR=\"/usr/libexec/qpid\" -DBOOST_FILESYSTEM_VERSION=2 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -DNDEBUG -O3 -Wno-unused-result -c qpid/sys/posix/SocketAddress.cpp -fPIC -DPIC -o qpid/sys/posix/.libs/SocketAddress.o
qpid/sys/posix/SocketAddress.cpp: In static member function 'static uint16_t qpid::sys::SocketAddress::getPort(const sockaddr*)':
qpid/sys/posix/SocketAddress.cpp:87:30: error: cast from 'const sockaddr*' to 'const sockaddr_in*' increases required alignment of target type [-Werror=cast-align]
qpid/sys/posix/SocketAddress.cpp:88:31: error: cast from 'const sockaddr*' to 'const sockaddr_in6*' increases required alignment of target type [-Werror=cast-align]
qpid/sys/posix/SocketAddress.cpp: In member function 'void qpid::sys::SocketAddress::setAddrInfoPort(uint16_t)':
qpid/sys/posix/SocketAddress.cpp:115:39: error: cast from 'sockaddr*' to 'sockaddr_in*' increases required alignment of target type [-Werror=cast-align]
qpid/sys/posix/SocketAddress.cpp:116:40: error: cast from 'sockaddr*' to 'sockaddr_in6*' increases required alignment of target type [-Werror=cast-align]
cc1plus: all warnings being treated as errors
Created attachment 594951 [details]
build.log of qpid-cpp-0.16 when configured --without-rdma
After disabling RDMA, the next issue is a problem in store-0.16:
DEBUG: libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -pedantic -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long -Wvolatile-register-var -Winvalid-pch -Wno-system-headers -I/builddir/build/BUILD/qpid-0.16/cpp/include -I/builddir/build/BUILD/qpid-0.16/cpp/src -I./gen -DRHM_CLEAN -pthread -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -DNDEBUG -c StorePlugin.cpp -fPIC -DPIC -o .libs/StorePlugin.o
DEBUG: In file included from ./jrnl/rcvdat.hpp:38:0,
DEBUG: from ./jrnl/fcntl.hpp:47,
DEBUG: from jrnl/jcntl.hpp:47,
DEBUG: from JournalImpl.h:29,
DEBUG: from MessageStoreImpl.h:33,
DEBUG: from StorePlugin.cpp:29:
DEBUG: ./jrnl/jcfg.hpp:49:2: error: #error endian?
DEBUG: make[3]: *** [StorePlugin.lo] Error 1
DEBUG: make[3]: Leaving directory `/builddir/build/BUILD/store-0.16.4509/lib'
It seems that there is no defined(__arm__) check to set the right number of bits and endianness.
*** Bug 836736 has been marked as a duplicate of this bug. *** Still a problem in F-18 and rawhide with version qpid-cpp-0.18-5.fc18 http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=1204375 The actual error is: qpid/sys/rdma/RdmaClient.cpp: In function 'void qpid::tests::write(Rdma::AsynchIO&)': qpid/sys/rdma/RdmaClient.cpp:100:62: error: cast from 'char*' to 'uint32_t* {aka unsigned int*}' increases required alignment of target type [-Werror=cast-align] qpid/sys/rdma/RdmaClient.cpp: In function 'void qpid::tests::data(qpid::sys::Poller::shared_ptr, Rdma::AsynchIO&, Rdma::Buffer*)': qpid/sys/rdma/RdmaClient.cpp:119:58: error: cast from 'char*' to 'uint32_t* {aka unsigned int*}' increases required alignment of target type [-Werror=cast-align] Though there seem to be errors regarding ARM GCC that should be addressed as well by that package. Darryl: any movement of fixing the alignment errors? (In reply to comment #5) > Darryl: any movement of fixing the alignment errors? I will start on this now. Thanks! any update? (In reply to comment #8) > any update? Sorry, no. With the holiday and other tasks I was pulled off of this. Have you looked into fixes for this? My ARM-fu is weak. Any status update? (In reply to comment #10) > Any status update? I won't repeat the holiday line again (was off for two weeks). I'm planning to have something with the 0.20 release. I have access to some ARM hardware now so should hopefully have something shortly. I just attempted a build using cmake on one of our ARM systems against tip (0.20 + recent commits) without a problem. I also performed a build using the autotool chain with the same result. What can I do to help recreate the problem? Hi Darryl, it is easy to reproduce with the latest version in rawhide (qpid-cpp-0.18), no need to run these commands on an ARM box: $ fedkg clone -a qpid-cpp ; cd qpid-cpp $ arm-koji build --scratch f18 $(fedpkg giturl | grep ^git) Created task: 1371619 Task info: http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=1371619 -> http://arm.koji.fedoraproject.org/koji/getfile?taskID=1371628&name=build.log Or, if you have an arm system with mock available: $ fedkg clone -a qpid-cpp ; cd qpid-cpp $ fedpkg mockbuild --root fedora-18-arm Or, on an ARM development system: $ fedkg clone -a qpid-cpp ; cd qpid-cpp $ fedpkg local Now, you write that qpid-cpp-0.20 contains fixes for this build issues. That gives at least two possible ways to go forward: a) update to qpid-cpp-0.20 b) cherry-pick the patches that fix the issue and include them in the RPM Note that qpid-cpp is not available on any Fedora ARM platform at the moment. This prevents other packages that depend on qpid-cpp from being built as well. Therefore it would be much appreciated to solve this Bug in Fedora 18 and in Rawhide. I've briefly looked at updating qpid-cpp to 0.20 for test-building. But the .spec refers to some subversion revisions, and I am not able to judge which revision would be suitable. We're about to release 0.20 soon. You can grab the latest release of it from: http://www.apache.org/dyn/closer.cgi/qpid/0.20/qpid-0.20.tar.gz I'm trying to do a build of the 0.20 code using arm-koji and it failed with the same error. Strange since building tip on a machine worked without error. http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=1371655 I'll do some patching on top of 0.20 to fix this. (In reply to comment #14) > We're about to release 0.20 soon. You can grab the latest release of it from: We build the NVRs that are tagged in mainline so once it lands in mainline our build sync scripts will pick it up. > I'm trying to do a build of the 0.20 code using arm-koji and it failed with > the same error. Strange since building tip on a machine worked without error. > > http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=1371655 > > I'll do some patching on top of 0.20 to fix this. If you're seeing the error on 0.20 in koji as well once you have a fix can we have it on F-18 too please.h qpid-cpp-0.20-1.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/qpid-cpp-0.20-1.fc17 qpid-cpp-0.20-1.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/qpid-cpp-0.20-1.fc18 Package qpid-cpp-0.20-1.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing qpid-cpp-0.20-1.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2013-1488/qpid-cpp-0.20-1.fc17 then log in and leave karma (feedback). Scratch build succeeded: - https://arm.koji.fedoraproject.org/koji/taskinfo?taskID=1388154 Now we'll have to wait for koji-shadow to catch up and qpid-cpp will be available for ARM. Quite some packages can be build as well then. Thanks for looking into this! That build is failing on mainline F-19/rawhide http://koji.fedoraproject.org/koji/buildinfo?buildID=380421 (In reply to comment #20) > That build is failing on mainline F-19/rawhide > > http://koji.fedoraproject.org/koji/buildinfo?buildID=380421 We have the same problem with x86 platforms as well. Something seems to have changed with (I assume) GCC 4.8.0 since Qpid builds on all but F19, unrelated to the ARM fix.
> We have the same problem with x86 platforms as well. Something seems to have
> changed with (I assume) GCC 4.8.0 since Qpid builds on all but F19,
> unrelated to the ARM fix.
Or glibc or a number of other changes have gone into rawhide of late. It still needs to be investigated and fixed.
(In reply to comment #22) > > We have the same problem with x86 platforms as well. Something seems to have > > changed with (I assume) GCC 4.8.0 since Qpid builds on all but F19, > > unrelated to the ARM fix. > > Or glibc or a number of other changes have gone into rawhide of late. It > still needs to be investigated and fixed. Agreed. Since the ARM issue is fixed, I'm going to close this BZ. qpid-cpp-0.20-2.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/qpid-cpp-0.20-2.fc18 qpid-cpp-0.20-2.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/qpid-cpp-0.20-2.fc17 qpid-cpp-0.20-2.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report. qpid-cpp-0.20-2.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report. |