Bug 680644

Summary: Clang compiler: Can't find bits/c++config.h
Product: [Fedora] Fedora Reporter: Ben Greear <greearb>
Component: llvmAssignee: Michel Alexandre Salim <michel>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 13CC: bos, dcantrell, dmalcolm, jgarzik, michel, vedran
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: llvm-2.8-10.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-03-22 03:49:32 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Ben Greear 2011-02-26 17:27:23 UTC
Description of problem:

Clang seems to have hard-coded ideas about where to search for some
include files.  These don't work on Fedora-13.

clang++ -o obj/i686-pc-linux-gnu/cli/tools/cli_generic.o -c -O1 -g3 -Werror -W -Wall -Wwrite-strings -Wcast-qual -Wpointer-arith -Wcast-align -Woverloaded-virtual -ftemplate-depth-25 -pipe -fno-color-diagnostics -DXRL_PF=120 -D_FORTIFY_SOURCE=0 -Iobj/i686-pc-linux-gnu -I. -I. cli/tools/cli_generic.cc
In file included from cli/tools/cli_generic.cc:23:
In file included from ./libxorp/xorp.h:84:
In file included from /usr/include/c++/4.4.4/new:39:
/usr/include/c++/4.4.4/cstddef:42:10: fatal error: 'bits/c++config.h' file not found
#include <bits/c++config.h>
         ^
1 error generated.


Also, there is no 'clang' component in bugzilla.


Version-Release number of selected component (if applicable):

clang-2.8-5.fc13.i686

How reproducible:

Always.

Steps to Reproduce:
1. Try to compile some c++ application using clang.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Michel Alexandre Salim 2011-03-17 11:33:59 UTC
There's no separate package for clang since upstream still recommends it being built as part of llvm; our bugzilla components reflect SRPM names, not binaries.

Thanks for reporting this! clang's detection of include directory is really quite primitive, and indeed we're substituting the correct directories at compile time, otherwise it defaults to having some presets for different versions of different Linux distributions, and trying them one by one at runtime.

Will issue an update shortly.

Comment 2 Fedora Update System 2011-03-17 16:26:24 UTC
llvm-2.8-9.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/llvm-2.8-9.fc14

Comment 3 Fedora Update System 2011-03-17 16:26:32 UTC
llvm-2.8-9.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/llvm-2.8-9.fc15

Comment 4 Fedora Update System 2011-03-17 16:26:40 UTC
llvm-2.8-9.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/llvm-2.8-9.el6

Comment 5 Fedora Update System 2011-03-17 16:26:47 UTC
llvm-2.8-9.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/llvm-2.8-9.fc13

Comment 6 Fedora Admin XMLRPC Client 2011-03-17 23:51:23 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 7 Fedora Update System 2011-03-22 03:49:22 UTC
llvm-2.8-10.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Fedora Update System 2011-03-27 19:28:39 UTC
llvm-2.8-10.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 9 Fedora Update System 2011-03-27 19:29:03 UTC
llvm-2.8-10.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2011-04-05 03:00:59 UTC
llvm-2.8-10.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Vedran Miletić 2011-04-22 11:02:15 UTC
*** Bug 694868 has been marked as a duplicate of this bug. ***

Comment 12 Vedran Miletić 2011-04-22 11:05:40 UTC
This is still an issue on i686; clang is searching for /usr/include/c++/4.6.0/i386-redhat-linux/32, which doesn't exist on 32-bit (it should be i686-redhat-linux).

Why does %{_arch} become i386?