| Summary: | use of clock_gettime and librt | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | jcpunk | ||||
| Component: | at | Assignee: | Tomas Mraz <tmraz> | ||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | qe-baseos-daemons | ||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 7.0 | CC: | csieh, jcpunk, jscotka, manuel.wolfshant, misterbonnie, riehecky | ||||
| Target Milestone: | rc | ||||||
| Target Release: | --- | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | at-3.1.13-17.el7 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2014-09-16 13:44:39 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: | |||||
| Attachments: |
|
||||||
|
Description
jcpunk
2013-12-18 20:52:38 UTC
Strange, I see the -lrt in my build.log on every gcc line. How do you define minimal RHEL-7? I was just using mock and the same package list as fedora. I just ran a test on my desktop, installed from the DVD. It is a full desktop and it also fails to link against librt..... Curious I have exactly the same issue. I suspect the difference comes from the different config detected by configure. Right by the end of the detection steps, in Fedora it says: checking for is_selinux_enabled in -lselinux... yes checking for library containing timer_create... -lrt checking for timer_create... yes while in mock/RHEL7B1 it gives: checking for is_selinux_enabled in -lselinux... yes checking for library containing clock_gettime... none required checking for clock_gettime... yes And -ltr is exactly the missing bit which leads to the error. I guess you are missing some packages in the buildroot, so the config can't find it. Do you have glibc-headers in the buildroot? Of course it is, the compiler stack ( gcc / glibc-devel ) brings it in. I can attach mock's build logs if needed but I suspect this is not needed as , as far as I can see the problems lies in the changes that were introduced to gcc between Nov 2012 when at-3.1.13-12.el7.src.rpm was built and now. I have build the package just fine if I switched to a F18 buildroot instead of F19 or rhel7b1. I suspect the solution is http://pkgs.fedoraproject.org/cgit/at.git/commit/?id=ecd5f487e831837e1668a8079621b5a04bd68b2f This patch is applied in at-3.1.13-12.el7.src.rpm. There are other possible explanation, what's wrong in build. It could be fixed by removal of the smp_flag or the very old Configure script could be altered. Also it would be better to call autoreconf instead of autoconf, but it failed at different point. Feel free to send a patch. I'm not able to fix it if I can't reproduce it. Do you have both some non x86 architecture? Created attachment 846183 [details]
mock config to generate the error
I've attached a mock config you can use to replicate the error
Ok, now I'm trying rebuild on life ppc64 and I have the same issue. :-/ Thanks for reproducer. Guys, I removed smp_flag from specfile and all random errors disappeared. Does it work also for you? As far as I can see there is no explicit reference to smp in the spec included in at-3.1.13-12.el7.src.rpm.
%build
# patch9 touches configure.in
autoconf
# uselles files
rm -f lex.yy.* y.tab.*
%configure --with-atspool=%{_localstatedir}/spool/at/spool \
--with-jobdir=%{_localstatedir}/spool/at \
--with-daemon_username=root \
--with-daemon_groupname=root \
--with-selinux \
%if %{with pam}
--with-pam
%endif
make <=== no %{?_smp_mflags}
%install
Could you please share the exact spec you want tested ?
I have version 3.1.13-17.el7. I do not use smp_mflags, which appeared in one of the previous releases. Anyway I'm not able to reproduce the missing library. It happened to me only once on ppc64. I can't fix it without better reproducer. Does the attached mock config not reproduce the error for you? Maybe this matters: the version of the src.rpm which jcpunk and I are using/testing is at-3.1.13-12.el7.src.rpm. We do not have access to 3.1.13-17.el7. Rebuilding at-3.1.13-12.el7.src.rpm using mock and the packages from ftp://ftp.redhat.com/redhat/rhel/beta/7/x86_64/os/ fails for me 100% of the time. Now that RHEL-7 was released does it still happen for you with at-3.1.13-17.el7? The bug is resolved (jcpunk is my other bz account) |