Opened 19 years ago
Closed 19 years ago
#1487 closed defect (fixed)
GCC-3.4.4 (ffitarget.h)
Reported by: | Owned by: | Randy McMurchy | |
---|---|---|---|
Priority: | high | Milestone: | 6.2.0 |
Component: | BOOK | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description
it appears to me: install -v -m644 libffi/src/[arch]/ffitarget.h \
/usr/include
should be: install -v -m644 ../gcc-3.4.3/libffi/src/[arch]/ffitarget.h \
/usr/include
Someone verify?
Change History (8)
comment:1 by , 19 years ago
Milestone: | future → 6.1 |
---|---|
rep_platform: | PC → All |
Version: | 6.1 → SVN |
comment:2 by , 19 years ago
Milestone: | 6.1 → future |
---|
Although the general solution would be better, I've changed the instructions to David's solution for now. Leaving the bug open, but retargeting to future.
comment:3 by , 19 years ago
Milestone: | future → 6.2 |
---|---|
Owner: | changed from | to
Summary: | GCC-3.4.3 → GCC-3.4.4 (ffitarget.h) |
I'm going to update BLFS to the GCC-3.4.4 version. I will check this issue out during this update.
comment:4 by , 19 years ago
Status: | new → assigned |
---|
comment:5 by , 19 years ago
In my installation, ffitarget.h is installed in </usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/libffi/ffitarget.h> without any additional instructions. Is there any reason for installing the header in /usr/include too?
comment:6 by , 19 years ago
Yes. It needs to be in /usr/include so that librep can find it if you wish to link the libffi library at build time.
comment:7 by , 19 years ago
Now that you mention that it is installed in the /usr/lib/gcc hierarchy, I wonder if it wouldn't make more sense to create a symbolic link in /usr/include to the installed copy?
comment:8 by , 19 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Modified the command (and the supporting text) to create the interface header as a symlink. The command uses 'find' to locate the installed copy of the header and then creates a symlink to it.
Actually, if there is a wildcard we could use for i686-pc-linux-gnu that would cover all the architectures, then we could get it from
i686-pc-linux-gnu/libffi/include/ffitarget.h (sub the wildcard in there)
(the file shown above is actually a symlink to the proper architecture in the gcc-3.4.3 source tree)
This way (drawing from the build tree) we don't have to have the replaceable [arch] stuff in there. But since I only build on x86, I don't know what should be used in place of i686-pc-linux-gnu.
If a valid wildcard can't be used, then using what David suggests is the next best thing.
Definately appears to be a valid bug, though, and I've flagged this to get fixed for the 6.1 release. If someone knows for sure the ffitarget.h file is now installed in this version of GCC, the whole thing is moot, and the instruction (and associated text) can be removed.