Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 22597 - g-cpan fails to find existing Makefile.PL for Chemistry::MolecularMass
Summary: g-cpan fails to find existing Makefile.PL for Chemistry::MolecularMass
Status: RESOLVED CANTFIX
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-06-11 02:41 UTC by Markus Luisser
Modified: 2011-10-30 22:22 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Luisser 2003-06-11 02:41:26 UTC
trying to get Chemistry::MolecularMass installed: 
 
----------- snip ----------- 
zet6 root # g-cpan.pl Chemistry::MolecularMass 
mkdir /tmp/perl-modules_20910 
mkdir /tmp/perl-modules_20910/dev-perl 
CPAN: Storable loaded ok 
Going to read /root/.cpan/Metadata 
  Database was generated on Mon, 02 Jun 2003 23:43:22 GMT 
************************************************************************ 
* 
* 
*  Need to create ebuild for 'Chemistry::MolecularMass': Chemistry-MolecularMass 
* 
* 
************************************************************************ 
Running make for M/MK/MKHRAPOV/Chemistry-MolecularMass-0.1.tar.gz 
LWP not available 
CPAN: Net::FTP loaded ok 
Fetching with Net::FTP: 
  
ftp://ftp.tuwien.ac.at/pub/CPAN/authors/id/M/MK/MKHRAPOV/Chemistry-MolecularMass-0.1.tar.gz 
CPAN: Compress::Zlib loaded ok 
Checksum for 
/root/.cpan/sources/authors/id/M/MK/MKHRAPOV/Chemistry-MolecularMass-0.1.tar.gz 
ok 
Scanning cache /root/.cpan/build for sizes 
Deleting from cache: /root/.cpan/build/Term-ReadLine-Perl-1.0203 (10.1>10.0 MB) 
Chemistry/ 
Chemistry/MolecularMass/ 
Chemistry/MolecularMass/MolecularMass.xs 
Chemistry/MolecularMass/MolecularMass.pm 
Chemistry/MolecularMass/Makefile.PL 
Chemistry/MolecularMass/test.pl 
Chemistry/MolecularMass/Changes 
Chemistry/MolecularMass/MANIFEST 
Chemistry/MolecularMass/README 
Removing previously used /root/.cpan/build/Chemistry 
Package seems to come without Makefile.PL. 
  (The test -f "/root/.cpan/build/Chemistry/Makefile.PL" returned false.) 
  Writing one on our own (setting NAME to ChemistryMolecularMass) 
 
  CPAN.pm: Going to build M/MK/MKHRAPOV/Chemistry-MolecularMass-0.1.tar.gz 
 
Checking if your kit is complete... 
Looks good 
Writing Makefile for Chemistry::MolecularMass 
Writing Makefile for ChemistryMolecularMass 
make[1]: Entering directory `/root/.cpan/build/Chemistry/MolecularMass' 
cp MolecularMass.pm ../blib/lib/Chemistry/MolecularMass.pm 
/usr/bin/perl /usr/lib/perl5/5.8.0/ExtUtils/xsubpp  -typemap 
/usr/lib/perl5/5.8.0/ExtUtils/typemap  MolecularMass.xs > MolecularMass.xsc && mv 
MolecularMass.xsc MolecularMass.c 
Please specify prototyping behavior for MolecularMass.xs (see perlxs manual) 
gcc -c   -DPERL5 -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-march=athlon -O3 -pipe -fomit-frame-pointer -ffast-math -funroll-loops 
-frerun-loop-opt   -DVERSION=\"0.1\" -DXS_VERSION=\"0.1\" -fpic 
"-I/usr/lib/perl5/5.8.0/i686-linux/CORE"   MolecularMass.c 
Running Mkbootstrap for Chemistry::MolecularMass () 
chmod 644 MolecularMass.bs 
rm -f ../blib/arch/auto/Chemistry/MolecularMass/MolecularMass.so 
LD_RUN_PATH="" gcc  -shared -L/usr/local/lib MolecularMass.o  -o 
../blib/arch/auto/Chemistry/MolecularMass/MolecularMass.so 
chmod 755 ../blib/arch/auto/Chemistry/MolecularMass/MolecularMass.so 
cp MolecularMass.bs ../blib/arch/auto/Chemistry/MolecularMass/MolecularMass.bs 
chmod 644 ../blib/arch/auto/Chemistry/MolecularMass/MolecularMass.bs 
Manifying ../blib/man3/Chemistry::MolecularMass.3pm 
make[1]: Leaving directory `/root/.cpan/build/Chemistry/MolecularMass' 
  /usr/bin/make  -- OK 
emerging Chemistry-MolecularMass 
Calculating dependencies ...done! 
>>> emerge (1 of 1) dev-perl/Chemistry-MolecularMass-0.1 to / 
--- No package manifest found: 
/tmp/perl-modules_20910/dev-perl/Chemistry-MolecularMass/Manifest 
>>> md5 src_uri ;-) Chemistry-MolecularMass-0.1.tar.gz 
>>> Unpacking source... 
>>> Unpacking Chemistry-MolecularMass-0.1.tar.gz to 
/var/tmp/portage/Chemistry-MolecularMass-0.1/work 
>>> Source unpacked. 
Can't open perl script "Makefile.PL": No such file or directory 
make: *** No targets specified and no makefile found.  Stop. 
 
!!! ERROR: dev-perl/Chemistry-MolecularMass-0.1 failed. 
!!! Function perl-module_src_compile, Line 37, Exitcode 2 
!!! compilation failed 
----------- snip ----------- 
 
but the Makefile.PL exists... 
 
----------- snip ----------- 
zet6 root # find /root/.cpan -iname 'Makefile.PL' | grep -i chemistry 
/root/.cpan/build/Chemistry/Makefile.PL 
/root/.cpan/build/Chemistry/MolecularMass/Makefile.PL 
zet6 root # find /var/tmp/portage/ -iname 'Makefile.PL' | grep -i chemistry 
/var/tmp/portage/Chemistry-MolecularMass-0.1/work/Chemistry/MolecularMass/Makefile.PL 
----------- snip ----------- 
 
dont know if it is an error with the module or with g-cpan - this is the first module 
where i experienced this... anyway reporting cant hurt ;) 

Reproducible: Always
Steps to Reproduce:
1. g-cpan.pl Chemistry::MolecularMass 
2. 
3. 
Actual Results:  
compilation fails 

Expected Results:  
compiled 

Portage 2.0.48-r1 (default-x86-1.4, gcc-3.2.2, glibc-2.3.1-r4) 
================================================================= 
System uname: 2.4.20-gentoo-r5 i686 AMD Duron(tm) Processor 
GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo 
ftp://gentoo.linux.no/pub/gentoo/ ftp://trumpetti.atm.tut.fi/gentoo/ 
ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ 
ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/" 
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config 
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config 
/usr/share/config" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" 
PORTDIR="/usr/portage" 
DISTDIR="/usr/portage/distfiles" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR_OVERLAY="/usr/local/portage" 
USE="x86 oss 3dnow apm avi crypt cups encode gif jpeg libg++ mikmod mmx mpeg 
ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib gdbm berkdb slang 
readline arts svga X sdl gpm tcpd pam libwww ssl python esd imlib oggvorbis gtk qt 
kde motif opengl alsa apache2 curl evo gd -gnome gtk2 -java kerberos lcms maildir 
mysql odbc perl plotutils postgres samba tcltk tetex tiff usb wmf xml" 
COMPILER="gcc3" 
CHOST="i686-pc-linux-gnu" 
CFLAGS="-march=athlon -O3 -pipe -fomit-frame-pointer -ffast-math -funroll-loops 
-frerun-loop-opt" 
CXXFLAGS="-march=athlon -O3 -pipe -fomit-frame-pointer -ffast-math -funroll-loops 
-frerun-loop-opt" 
ACCEPT_KEYWORDS="x86" 
MAKEOPTS="-j2" 
AUTOCLEAN="yes" 
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" 
FEATURES="sandbox ccache userpriv fixpackages"
Comment 1 Gentoo Perl team gentoo-dev 2003-06-11 04:47:20 UTC
Looks like the problem is that this particular module is packaged differently than normal. Usually when you unpack the tarball for a module, the Makefile.PL is in the top level. MolecularMass has instead a top level empty directory containing a directory where the guts really are. Looks like we'll need to consider writing a rule for this, though this is a rare case and to be honest, not sure how to do it...
Comment 2 Markus Luisser 2003-06-11 05:47:38 UTC
ok when i understand this correctly it works like this: 
 
1) download tarball 
2) unpack it in /root/.cpan/whatever 
3) CPAN.pm detects there is no Makefile.pm 
4) CPAN.pm writes a correct Makefile.pm (confirmed that) 
(/root/.cpan/build/Chemistry/Makefile.PL - i'm able to install via CPAN shell) 
5) the tarball is moved to /tmp/perl/whatever 
6) the tarball is unpacked again (no makefile, as it was left in .cpan) 
 
wouldnt it be possible to move the .cpan/whatever directory to /tmp/perl/whatever instead of 
unpacking the tarball twice? this would have two advantages: no double unpacking of the tarball 
and working compilation of packages without makefile... 
 
i agree that the module is malformed but the CPAN module is written to handle this - so 
perhaps it is not sooo uncommon... 
Comment 3 Gentoo Perl team gentoo-dev 2003-06-16 05:26:35 UTC
CPAN is used for the calculation of dependancies only. The actual build process is handled in a "normal" portage/Gentoo method with the generated ebuild. Two possible solutions present themselves (ignoring solution number three, which is just to have you manually install the module and move on): we can either create the necessary modified ebuilds for you and put them in portage so that this is resolved for you, or we can work on a change to g-cpan to account for this variance (which, even once fixed, will have to wait until the next portage release to reach the masses). The first option is certainly faster, though it isn't the route we would normally like to take.
Comment 4 Markus Luisser 2003-06-16 08:33:43 UTC
never mind me - i know how to handle such things - i installed it via cpan shell. just wanted to 
inform u of the issue. whatever u guys think is the best solution, is the best solution :) - so if u 
think this is common enough to include it in g-cpan do that - if not u can just close the bug and 
forget it... 
Comment 5 Michael Cummings (RETIRED) gentoo-dev 2004-02-27 06:31:23 UTC
Can't fix for now. We need a serious rewrite of g-cpan at some point soon.