Bugzilla will be upgraded to version 5.0 on a still to be determined date in the near future. The original upgrade date has been delayed.
Bug 432068 - gcc fails to build on ia64
gcc fails to build on ia64
Product: Fedora
Classification: Fedora
Component: gcc (Show other bugs)
ia64 Linux
urgent Severity urgent
: ---
: ---
Assigned To: Jakub Jelinek
Fedora Extras Quality Assurance
Depends On:
Blocks: fedora-ia64
  Show dependency treegraph
Reported: 2008-02-08 12:52 EST by Dennis Gilmore
Modified: 2008-02-19 11:15 EST (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2008-02-19 11:15:51 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
use $$(gcc_srcdir) in place of $(srcdir) in gcc/config/ia64/t-glibc-no-libunwind (707 bytes, patch)
2008-02-13 16:15 EST, Doug Chapman
no flags Details | Diff

  None (edit)
Description Dennis Gilmore 2008-02-08 12:52:09 EST
gcc  fails to build with the follwoing message 
gcc: ../../gcc/config/ia64/change-symver.c: No such file or directory

build logs are available at 

you are able to do scratch builds directly on the ia64 build system with the 
following command

koji -c ~/.koji/ia64-config build dist-f9 --scratch /path/to/srpm  

if you dont have ~/.koji/ia64-config  run fedora-packager-setup.sh  and it 
will put it there for you
Comment 1 Doug Chapman 2008-02-13 14:33:53 EST
This is triggered by the patch: gcc43-ia64-libunwind.patch not working properly
with gcc-4.3.

Which adds the file change-symver.c.  The file _is_ there but it is looking for
it in the wrong directory.

The patch adds this bit of code:
+       gcc -O2 -o $(SHLIB_DIR)/$(SHLIB_SONAME).tweak \
+         $(srcdir)/config/ia64/change-symver.c -lelf && \

which expands to ../../gcc/config/ia64/change-symver.c

The problem is at the point where this fails evidently srcdir is not set right
because we need one more ../ to find the right directory.

Comment 2 Doug Chapman 2008-02-13 14:43:49 EST
More detail....

The build fails in the directory:

If I go there I find I need to add an extra ../ to find the missing file:

[root@wing2 libgcc]# pwd

[root@wing2 libgcc]# ls ../../gcc/config/ia64/change-symver.c
ls: cannot access ../../gcc/config/ia64/change-symver.c: No such file or directory
[root@wing2 libgcc]# ls ../../../gcc/config/ia64/change-symver.c

However, oddly the Makefile in that directory looks right:

[root@wing2 libgcc]# grep ^srcdir Makefile 
srcdir = ../../../libgcc

Comment 3 Jakub Jelinek 2008-02-13 14:55:43 EST
Yeah, after the move of libgcc build to toplevel some of the $(srcdir)'s in
SHLIB_* variables need to be changed to $(gcc_srcdir).
Unfortunately, due to kernel-headers bug gcc can't build ATM at all, so I need
to wait for a new kernel to hit the koji buildroots.
Comment 4 Doug Chapman 2008-02-13 15:24:20 EST

This appears to do it however it also needs to be $$(gcc_srcdir) so it gets
expanded at the right time.  With just $(gcc_srcdir) it gets expanded when the
SHLIB_* variables are set and gcc_srcdir is not yet set at that point.

I tested this using a quick manual build.  I will edit a specfile and do a
scratch build on our ia64 koji server next.


- Doug
Comment 5 Doug Chapman 2008-02-13 16:15:38 EST
Created attachment 294837 [details]
use $$(gcc_srcdir) in place of $(srcdir) in gcc/config/ia64/t-glibc-no-libunwind

This fixes this issue.	I hit a build error later on in the "make check" stage
but that does not appear to be related.
Comment 6 Jakub Jelinek 2008-02-19 11:15:51 EST
Should be fixed now.

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