Bug 637017
Summary: | dhcp-devel is missing bind-9.7.1 devel files | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Carl Roth <roth> | ||||||||
Component: | dhcp | Assignee: | Adam Tkac <atkac> | ||||||||
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||||
Severity: | medium | Docs Contact: | |||||||||
Priority: | low | ||||||||||
Version: | 15 | CC: | atkac, carlosd2002, ovasik | ||||||||
Target Milestone: | --- | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | All | ||||||||||
OS: | Linux | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | bind-9.8.1-1.fc15 | Doc Type: | Bug Fix | ||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2011-09-14 08:59:22 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Attachments: |
|
Description
Carl Roth
2010-09-24 01:43:02 UTC
http://koji.fedoraproject.org/koji/taskinfo?taskID=2486665 I made a scratch-build of a new release where headers and libraries from bind-9.7.1 are shipped with dhcp-devel. I added explicit 'Conflicts: bind-devel' line into spec.file so you have to first remove bind-devel. I don't have any better solution on mind at the moment. Try it and let me know what do you think. I'm also adding bind maintainer to CC. Adame, do you have any other idea how to solve this problem ? After quick inspection both bind-devel-9.7.2-0.3.rc1.fc14 and bind-devel-9.7.2-1.fc14 contains /usr/include/isc/lang.h. It seems your installation is broken, can you please reinstall bind-devel package? Note about "Conflicts: bind-devel". "Conflicts" directive is forbidden by Packaging guidelines and should not be used in Fedora packages. As an initial first step, I set up my F14 build environment with dhcp-devel as per Comment #1. It seems to work fine when building against dhcp libraries (omcmd in my case). As per Comment #2, yes my build environment was (temporarily) broken. I had a few broken symlinks in /usr/include as I was borrowing files from bind-debuginfo. I'll take a look at that dhcp-devel to see if there's a way to configure it to live alongside bind-devel-9.7.2. OK here is a small patch to dhcp.spec that pushes the bind compatibility files to a subdirectory. This requires sources built against dhcp-devel to use a cooked-up CPPFLAGS and LDFLAGS, which I am OK with. I'm open to other suggestions. Created attachment 449774 [details]
patch to dhcp.spec
May I ask you why you need the patch? I tried to compile sample program and everything is fine (with dhcp-devel and bind-devel installed). [atkac@traged ~]$ cat test.c #include <omapip/result.h> int main(void) { return 0; } [atkac@traged ~]$ gcc -o test test.c -Wall [atkac@traged ~]$ rpm -q bind-devel dhcp-devel bind-devel-9.7.2-1.fc15.x86_64 dhcp-devel-4.2.0-7.fc15.x86_64 I think you're right, the bind-9.7.2 headers mostly work with source compiles against dhcp. The libraries on the other hand are not compatible. See http://people.bridgewater.edu/~dparsley/omcmd/omcmd-0.4.8-1.src.rpm for an example; this compiles find with bind-devel-9.7.2 but fails at link time due to symbol mismatches. I'll attach diffs for F14 that should work with this SRPM. You should be able to see the difference there with bind-devel-9.7.1 and bind-devel-9.7.2. Created attachment 450503 [details]
patches for omcmd to compile with F14
Created attachment 450504 [details]
patch to omcmd.spec
After more inspection omcmd is not compilable due four different issues which should be fixed: 1. omcmd includes wrong headers (and is probably linked against wrong libraries) 2. bind-devel is missing /usr/include/dns/tsec.h header 3. dhcp-devel package contains static (.a) omapi libraries which is forbidden, dhcp-devel should contain shared libraries only. You are probably receiving linking errors because of this. BIND source is little tricky and when compiled with different configure flags (and dhcp's bundled bind source is compiled with different flags than distribution bind) same symbols can have different names in output library 4. dhcp source contains BIND source which is forbidden, dhcp should be modified and should use libraries shipped in bind-libs package instead of recompile bind source I will create propose patches. Hi, i m new at devel things... I m coding a program and when i include dhcpctl.h and isc/result.h have this compile errors: In file included from /usr/include/dhcpctl.h:38, from rece.c:11: /usr/local/include/omapip/omapip.h:40:22: error: dns/tsec.h: No such file or directory In file included from /usr/include/dhcpctl.h:38, from rece.c:11: /usr/local/include/omapip/omapip.h:158: error: expected specifier-qualifier-list before 'dns_tsec_t' rece.c: In function 'main': rece.c:455: warning: return type of 'main' is not 'int' I think that are related to this problem. how can i workaround this? Any idea? thanks in advance and sorry if not the appropriated place. This issue is fixed in the latest bind-9.8.1-1.fc15 (Fedora 15), it won't be fixed in Fedora 14. |