Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Portage & Programming
  • Search

Perl emerge failed - can't find "asm/page.h" [SOLVED]

Problems with emerge or ebuilds? Have a basic programming question about C, PHP, Perl, BASH or something else?
Post Reply
Advanced search
19 posts • Page 1 of 1
Author
Message
jerann
n00b
n00b
User avatar
Posts: 67
Joined: Wed Jan 26, 2005 4:52 pm

Perl emerge failed - can't find "asm/page.h" [SOLV

  • Quote

Post by jerann » Tue Feb 27, 2007 4:03 pm

Howdy everyone. I just did a world update on my new install of Gentoo, but two packages aren't compiling. They're giving me the same error - each says it can't find asm/page.h. The packages are perl (dev-lang/perl-5.8.8-r2) and util-linux (sys-apps/util-linux-2.12r-r5). I'm looking at the failed ebuild for util-linux, so here's the error message:

fsck.cramfs.c:79:22: error: asm/page.h: No such file or directory

Obviously, the error from perl came from a different file (not fsck.cramfs.c). I did some checking, and there is an asm/page.h in /usr/src/linux/include, but not in /usr/include. /usr/include has an asm directory, but does not contain page.h. I am willing to copy page.h from the /usr/src/linux/include/asm directory, but I'd really rather not until I know (or get a response from somebody who knows :D) what that file does. I googled it, but everything I found was over my head. Any help would be appreciated, and I'd also gladly post any other info which might be helpful. Thanks!
Last edited by jerann on Wed Feb 28, 2007 8:07 am, edited 1 time in total.
Top
Dan
Veteran
Veteran
Posts: 1302
Joined: Tue Oct 25, 2005 3:04 pm

  • Quote

Post by Dan » Tue Feb 27, 2007 7:09 pm

can you post emerge --info please..
try

Code: Select all

emerge linux-headers
- Failure is not an option. It's bundled with your software.
Top
Oranjjje
n00b
n00b
Posts: 2
Joined: Tue Feb 27, 2007 7:35 pm

  • Quote

Post by Oranjjje » Tue Feb 27, 2007 7:57 pm

Similar situation here, fresh install and trying to update world. Perl (dev-lang/perl-5.8.8-r2) fails with:

Code: Select all

SysV.xs:7:25: error: asm/page.h: No such file or directory
make[1]: *** [SysV.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/dev-lang/perl-5.8.8-r2/work/perl-5.8.8/ext/IPC/SysV'
make: *** [lib/auto/IPC/SysV/SysV.so] Error 2
Tried to emerge linux-headers but it didn't fix it. I really don't know where to go from here. :?


My emerge --info:

Code: Select all

Portage 2.1.2-r11 (default-linux/x86/no-nptl, gcc-4.1.2, glibc-2.5-r0, 2.6.19-gentoo-r5 i686)
=================================================================
System uname: 2.6.19-gentoo-r5 i686 AMD Athlon(tm) 64 Processor 3200+
Gentoo Base System release 1.12.9
Timestamp of tree: Mon, 26 Feb 2007 19:30:01 +0000
dev-java/java-config: 1.3.7, 2.0.31-r3
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.20-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=athlon -O3 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.usu.edu/mirrors/gentoo/"
LANG="en_US"
LC_ALL="en_US"
LINGUAS="en_US fr"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/xeffects /usr/portage/local/layman/xeffects-experimental /usr/portage/local/layman/sunrise /usr/local/layman/xeffects"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X alsa apm avahi berkdb bitmap-fonts boost bzip2 cli cracklib crypt cups dbus dri eds emboss encode flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 hal iconv icq imlib ipv6 irc isdnlog jabber java jpeg libg++ libwww mad midi mikmod motif mp3 mpeg msn mysql ncurses ogg opengl oss pam pcre perl php png pppd python quicktime readline real reflection samba sdl session socks5 spell spl sse sse2 ssl svg tcpd threads tiff tk truetype truetype-fonts type1-fonts vorbis x86 xml xorg xv" ALSA_CARDS="emu10k2" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_US fr" USERLAND="GNU" VIDEO_CARDS="none dummy"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Top
jerann
n00b
n00b
User avatar
Posts: 67
Joined: Wed Jan 26, 2005 4:52 pm

  • Quote

Post by jerann » Wed Feb 28, 2007 12:22 am

Good suggestion, but my linux-headers package is already up-to-date. My emerge --info:

Code: Select all

Portage 2.1.2-r11 (default-linux/amd64/2006.1, gcc-4.1.2, glibc-2.5-r0, 2.6.20-gentoo x86_64)
=================================================================
System uname: 2.6.20-gentoo x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
Gentoo Base System release 1.12.9
Timestamp of tree: Mon, 26 Feb 2007 19:20:01 +0000
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.20-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -msse3 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=athlon64 -msse3 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="ftp://gentoo.cites.uiuc.edu/pub/gentoo/"
LDFLAGS="-w1,-O1"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="amd64 berkdb bitmap-fonts bzip2 cli cracklib crypt cups doc dri fortran gdbm gpm iconv ipv6 isdnlog libg++ midi ncurses nls nptl nptlonly pam pcre perl ppds pppd python readline reflection session spl sse3 ssl tcpd truetype-fonts type1-fonts unicode xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="apm ark ati chips cirrus cyrix dummy fbdev glint i128 i810 mga neomagic nv rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY


EDIT:
BTW, I know that the w1 in the LDFLAGS should be capitolized - I corrected it, but of course, it didn't change this ebuild. I looked back over the portage log, and that flag is ignored by gcc, so it shouldn't affect this or any previous ebuilds.
Top
Oranjjje
n00b
n00b
Posts: 2
Joined: Tue Feb 27, 2007 7:35 pm

  • Quote

Post by Oranjjje » Wed Feb 28, 2007 2:20 am

I tried to simply copy the file over like jerann mentioned and it worked just fine. I am still clueless but can resume my world update now. :)
Top
r00t440
Tux's lil' helper
Tux's lil' helper
Posts: 93
Joined: Wed Sep 14, 2005 4:49 am

  • Quote

Post by r00t440 » Wed Feb 28, 2007 2:38 am

Here's a work around:

If you are doing a fresh install like you've followed Conrad's Guide or similar, do the following:

1. emerge a kernel source

Code: Select all

emerge viper-sources
2. create a symlink of page.h in /usr/include/asm/

Code: Select all

ln -s /usr/src/linux/include/asm-i386/page.h /usr/include/asm/page.h
*replace asm-i386 with your architecture (i.e., asm-x86_64)

If you are doing an upgrade you may skip step #1

Hope that helps :D
Top
nbensa
l33t
l33t
User avatar
Posts: 799
Joined: Wed Jul 10, 2002 11:09 am
Location: Buenos Aires, Argentina

  • Quote

Post by nbensa » Wed Feb 28, 2007 3:40 am

downgrade to "<linux-headers-2.6.20"
Top
jerann
n00b
n00b
User avatar
Posts: 67
Joined: Wed Jan 26, 2005 4:52 pm

  • Quote

Post by jerann » Wed Feb 28, 2007 7:56 am

nbensa wrote:downgrade to "<linux-headers-2.6.20"
Ah, yes - that seems obvious now. Thank you! I did that, and there's page.h right where it should be.
Top
foudebassan
n00b
n00b
User avatar
Posts: 13
Joined: Thu Feb 09, 2006 6:28 pm
Location: France

  • Quote

Post by foudebassan » Thu Mar 01, 2007 9:01 am

I 'm currently using this kernel:

rea x86 # uname -a
Linux rea 2.6.20.1 #1 SMP PREEMPT Mon Feb 26 21:00:36 CET 2007 i686 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz GenuineIntel GNU/Linux

rea ~ # ls -al /etc/make.profile
lrwxrwxrwx 1 root root 54 déc 9 01:21 /etc/make.profile -> /usr/portage/profiles/default-linux/x86/2006.1/desktop

rea x86 # gcc -v
version gcc 4.1.2 (Gentoo 4.1.2)

#emerge -e system
i have troubles on the same packages : util-linux,perl
looking for the asm/page.h file

Using a 2.6.20 kernel could i downgrade the linux-headers to <2.6.20 ?

I don't know what is the real link between the kernel-sources et and the linux-headers.

For the util-linux part, i used a custum ebuild Here.
For perl i removed the lines looking for the asm/page.h file. and emerge goes through.

Is it a "clean" solution?


Thank You
Top
Dan
Veteran
Veteran
Posts: 1302
Joined: Tue Oct 25, 2005 3:04 pm

  • Quote

Post by Dan » Fri Mar 02, 2007 9:47 pm

yes it is the correct fix for now

Code: Select all

echo ">=sys-kernel/linux-headers-2.6.19.2-r2" >> /etc/portage/package.mask && emerge >=sys-kernel/linux-headers-2.6.17-r2
Last edited by Dan on Fri Mar 02, 2007 11:38 pm, edited 1 time in total.
- Failure is not an option. It's bundled with your software.
Top
PaulBredbury
Watchman
Watchman
User avatar
Posts: 7310
Joined: Thu Jul 14, 2005 3:47 pm

  • Quote

Post by PaulBredbury » Fri Mar 02, 2007 9:55 pm

dcoats wrote:headers- 2
Remove that space :wink:
Top
drjimmy42
Guru
Guru
User avatar
Posts: 512
Joined: Mon Feb 03, 2003 10:24 pm
Location: Nashua, NH

  • Quote

Post by drjimmy42 » Sat Mar 03, 2007 2:39 am

While it might work, I think the removal of asm/page.h from linux-headers was deliberate.

here's the kernel patch removing it from being exported to user space
http://lkml.org/lkml/2007/1/5/1

and the perl patch for removing the dependency
http://www.nntp.perl.org/group/perl.per ... 21370.html

I applied that perl patch, which is just deleting those three lines from the SysV.xs file, and perl compiled fine.
Top
mroconnor
Guru
Guru
User avatar
Posts: 402
Joined: Fri Feb 24, 2006 3:02 pm
Location: USA

how to patch it?

  • Quote

Post by mroconnor » Sat Mar 03, 2007 1:27 pm

I was able to remove those three lines and perl compiled fine. But I had to be clever about it...I waited until in unpacked into the 'work' directory and edited the file there. But if I go to emerge it again it fails(obviously).
So how do I 'patch' this permenantly? Do I have to go into the .bzip and then rezip it? And how? Thanks for any tips.
Top
PaulBredbury
Watchman
Watchman
User avatar
Posts: 7310
Joined: Thu Jul 14, 2005 3:47 pm

  • Quote

Post by PaulBredbury » Sat Mar 03, 2007 1:48 pm

Add this to the end of src_unpack(), for the ebuild to compile with linux-headers-2.6.20-r1

Code: Select all

	sed -i \
		-e "s:include <asm/page.h>::" \
		ext/IPC/SysV/SysV.xs || die "sed SysV.xs failed"
Top
mroconnor
Guru
Guru
User avatar
Posts: 402
Joined: Fri Feb 24, 2006 3:02 pm
Location: USA

  • Quote

Post by mroconnor » Sat Mar 03, 2007 1:54 pm

First of thanks for the direction! Secondly....what does that snippet actually do(I must know for learning's sake)? And thirdly...dont I now have to do 'something' to the ebuild because I changed it? Sorry, I need some hand holding on this one. Cheers
Top
mroconnor
Guru
Guru
User avatar
Posts: 402
Joined: Fri Feb 24, 2006 3:02 pm
Location: USA

  • Quote

Post by mroconnor » Sat Mar 03, 2007 2:20 pm

This is what really makes me love gentoo!! You do something stupid like run ~arch ;), something doesnt work you post on this forum, smart people post two ways to fix your issue. You implement the fix, do a little extra reading and presto!! You have emerged perl! I remembered the 'ebuild /usr/portage.... digest command, but I still have no idea wha that little bit of sed did. Should I be learning sed?
Top
mroconnor
Guru
Guru
User avatar
Posts: 402
Joined: Fri Feb 24, 2006 3:02 pm
Location: USA

  • Quote

Post by mroconnor » Sat Mar 03, 2007 3:50 pm

First of thanks for the direction! Secondly....what does that snippet actually do(I must know for learning's sake)? And thirdly...dont I now have to do 'something' to the ebuild because I changed it? Sorry, I need some hand holding on this one. Cheers
Top
PaulBredbury
Watchman
Watchman
User avatar
Posts: 7310
Joined: Thu Jul 14, 2005 3:47 pm

  • Quote

Post by PaulBredbury » Sat Mar 03, 2007 5:52 pm

That sed command just gets rid of include <asm/page.h>

Code: Select all

man sed
Top
mroconnor
Guru
Guru
User avatar
Posts: 402
Joined: Fri Feb 24, 2006 3:02 pm
Location: USA

  • Quote

Post by mroconnor » Sat Mar 03, 2007 6:15 pm

Cheers! I am back to completing my install. I tihnk I will save sed for a rainy day. ;)
Top
Post Reply

19 posts • Page 1 of 1

Return to “Portage & Programming”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic