Bug 1496425 - lvm2 FTBFS due to changes in ld
Summary: lvm2 FTBFS due to changes in ld
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: lvm2
Version: 27
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Marian Csontos
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1494598
TreeView+ depends on / blocked
 
Reported: 2017-09-27 11:40 UTC by Marian Csontos
Modified: 2018-02-16 12:30 UTC (History)
17 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-02-16 12:30:58 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Marian Csontos 2017-09-27 11:40:25 UTC
Description of problem:
Can not build lvm2 on F27 and Rawhide

Version-Release number of selected component (if applicable):
- any version of lvm2
- binutils                     ppc64le  2.29-6.fc27               build  3.9 M
- corosynclib                  ppc64le  2.4.2-5.fc27              build  178 k
- libqb                        ppc64le  1.0.2-5.fc27              build  117 k

This is tracked as ld Bug 1477354, libqb Bug 1487787 in Rawhide, and Bug 1478089 in F27.

We may need some linker magic to build lvm2 for Fedora.

Additional info:

gcc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mcpu=power8 -mtune=power8 -fPIC   -fPIE -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -L./libdm -L./lib -L./libdaemon/client -L./daemons/dmeventd -L../libdm -L../lib -L../libdaemon/client -L../daemons/dmeventd -L../../libdm -L../../lib -L../../libdaemon/client -L../../daemons/dmeventd -Wl,-z,relro,-z,now -pie -fPIE -o cmirrord clogd.o cluster.o compat.o functions.o link_mon.o local.o logging.o  \
	 -lcpg   -lrt -lsystemd  -ldevmapper
/usr/lib/gcc/ppc64le-redhat-linux/7/../../../../lib64/libcpg.so: undefined reference to `QB_ATTR_SECTION_STOP'
/usr/lib/gcc/ppc64le-redhat-linux/7/../../../../lib64/libcpg.so: undefined reference to `QB_ATTR_SECTION_START'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:35: cmirrord] Error 1

Comment 1 Marian Csontos 2017-09-27 11:53:26 UTC
BTW, same on Rawhide with supposedly fixed libqb-1.0.2-7.fc28:

gcc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mcpu=power8 -mtune=power8 -fPIC   -fPIE -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -L./libdm -L./lib -L./libdaemon/client -L./daemons/dmeventd -L../libdm -L../lib -L../libdaemon/client -L../daemons/dmeventd -L../../libdm -L../../lib -L../../libdaemon/client -L../../daemons/dmeventd -Wl,-z,relro,-z,now -pie -fPIE -Wl,--export-dynamic -o cmirrord clogd.o cluster.o compat.o functions.o link_mon.o local.o logging.o  \
	 -lcpg    -ldevmapper
/usr/lib/gcc/ppc64le-redhat-linux/7/../../../../lib64/libcpg.so: undefined reference to `QB_ATTR_SECTION_STOP'
/usr/lib/gcc/ppc64le-redhat-linux/7/../../../../lib64/libcpg.so: undefined reference to `QB_ATTR_SECTION_START'


DEBUG util.py:439:   corosync                       ppc64le  2.4.2-5.fc28              build  237 k
DEBUG util.py:439:   corosynclib                    ppc64le  2.4.2-5.fc28              build  140 k
DEBUG util.py:439:   corosynclib-devel              ppc64le  2.4.2-5.fc28              build  178 k

DEBUG util.py:439:   libqb                          ppc64le  1.0.2-7.fc28              build  117 k
DEBUG util.py:439:   libqb-devel                    ppc64le  1.0.2-7.fc28              build   99 k

Comment 2 Jan Pokorný [poki] 2017-10-14 10:23:44 UTC
Marian,

please try building for Fedora 27 once the buildroot override
with new libqb package gets active:
https://bodhi.fedoraproject.org/overrides/libqb-1.0.2-10.fc27
(which has just become active)

For rawhide, the right libqb package should be in buildroot right away.

If the corosynclib issue persists, let me know, I'll rebuild corosync
as well and set up another buildroot override.

Also, as recently reminded on devel ML:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/GS2SWDGXWSXERQOQHG5M7ZWGV77Y7CPY/
I think the best solution would be if you could add lvm2 build
(once it successfully finishes) to an existing bodhi update:
https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f

If we miss final freeze deadline, we can still ask for an exception
atomically for such composite update, I believe.

Comment 3 Jan Pokorný [poki] 2017-10-18 20:30:59 UTC
One more update, the fix in -10 wasn't complete, which affects
mostly "library using QB_LOG_INIT_DATA macro vs. program linked
with that library that doesn't use libqb's logging at all" scenario.

So -11 should be generally a safer bet, buildroot override coming:
https://bodhi.fedoraproject.org/overrides/libqb-1.0.2-11.fc27

Comment 4 Jan Pokorný [poki] 2017-10-19 18:39:14 UTC
Update: corosync also needed to be rebuilt, and the outcome of that is
likewise set as a buildroot override for Fedora 27, i.e. the overrides
needed:

https://bodhi.fedoraproject.org/overrides/libqb-1.0.2-11.fc27
https://bodhi.fedoraproject.org/overrides/corosync-2.4.2-6.fc27

I am prolonging their validity till 2017-10-24, let me know if
they expire before you get a chance to rebuild lvm2, Marian.

Comment 5 Marian Csontos 2018-02-16 12:30:58 UTC
This has worked for some time.


Note You need to log in before you can comment on or make changes to this bug.