[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]

Re: Linux include file suckage



Hi,

Tom Christiansen:
> Has anyone else tried to figure out what kind of rigamarole is
> needed for getting "require 'fcntl.ph'" working in Linux?  It's

That's not Linux, that's GNU libc plus the GCC compiler.

The problem will get worse when glibc gets more widespread.

> And even that's not enough, at all.  Because the "linux" and "asm"
> directories are symblimked, so you have to use
> 
>     cd /usr/include
>     h2ph `find . -follow -name *.h -print`
> 
Add a "-maxdepth 4" here, or you'll get cycles when somebody has stupid
symlinks.

> This still gives you this:
> 
>     % perl -e 'require "sys/fcntl.ph"'
>     Can't locate stddef.ph [...]

stddef.h is a GCC header; it lives in the GCC include directory.

There's a magic way to get GCC to spit out the path to them:
"$(basename $(gcc --print-libgcc-file-name))/include"

> PS: I can't wait for next release, at which point I'll get to
>     reinstall absolutely everything, include millions of libraries,
>     since they'll need to look for things in
> 	/opt/perl/lib/site_perl/5.00564 
>     instead of
> 	/opt/perl/lib/site_perl/5.00563

That's the joy of working with the development version of Perl.  ;-)

-- 
Matthias Urlichs  |  noris network GmbH   |   smurf@noris.de  |  ICQ: 20193661
The quote was selected randomly. Really.    |      http://www.noris.de/~smurf/
-- 
Success covers a multitude of blunders.
		-- George Bernard Shaw


References to:
Tom Christiansen <tchrist@chthon.perl.com>

[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]