Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 70570 - dev-perl/perlmagick-6.1.3.2 refuses to build without X11
Summary: dev-perl/perlmagick-6.1.3.2 refuses to build without X11
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High major (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
: 70229 71764 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-11-09 05:04 UTC by Stuart Hickinbottom
Modified: 2005-03-13 14:26 UTC (History)
5 users (show)

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


Attachments
Copy of my world file (world,2.56 KB, text/plain)
2004-11-09 05:05 UTC, Stuart Hickinbottom
Details
Copy of my failed build output (perlmagick-build.txt,22.18 KB, text/plain)
2004-11-09 05:06 UTC, Stuart Hickinbottom
Details
ebuild that fixed the build problem for me (perlmagick-6.1.3.4.ebuild,2.01 KB, text/plain)
2004-11-15 17:21 UTC, Neil Katin
Details
Emerge info for Wendall (emerge.info,1.63 KB, text/plain)
2004-11-16 10:54 UTC, Wendall Cada
Details
Wendall's world file (world,1.42 KB, text/plain)
2004-11-16 10:58 UTC, Wendall Cada
Details
Wendall's emerge output (emerge.out,19.59 KB, text/plain)
2004-11-16 11:19 UTC, Wendall Cada
Details
Fixes bug for me (perlmagick-6.1.3.4-r1.ebuild,2.01 KB, text/plain)
2004-11-16 12:30 UTC, Neil Katin
Details
StuartH's updated failed emerge output (magickbuild.txt,23.46 KB, text/plain)
2004-11-16 14:39 UTC, Stuart Hickinbottom
Details
perlmagick-6.1.3.4-r1.ebuild (perlmagick-6.1.3.4-r1.ebuild,2.02 KB, application/octet-stream)
2004-11-16 16:09 UTC, Neil Katin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Stuart Hickinbottom 2004-11-09 05:04:26 UTC
I have a small headless server that does not have X11 installed, but does have dev-perl/perlmagick. Up to, and including, version 6.0.7.1 this has been fine.

Starting with version 6.1.3.2 the ebuild fails with what appears to be a dependency on the X11 headers.

While this might be solved with the addition of X11 as a base dependency, I believe that perlmagick should compile without any dependency on X11 (with the appropriate loss of X11-related capability).

I'll attach a copy of my world file and the output of the failed build.

Many thanks,
Stuart
Comment 1 Stuart Hickinbottom 2004-11-09 05:05:04 UTC
Created attachment 43600 [details]
Copy of my world file
Comment 2 Stuart Hickinbottom 2004-11-09 05:06:00 UTC
Created attachment 43601 [details]
Copy of my failed build output
Comment 3 Wendall Cada 2004-11-14 15:20:15 UTC
I can confirm this bug. Same problem. X11 isn't installed on my server, nor will it be ;)

Wendall
Comment 4 Neil Katin 2004-11-15 08:48:32 UTC
perlmagick-6.1.3.4 is broken in the same way, so upgrading to
the most current masked package won't help.
Comment 5 Neil Katin 2004-11-15 17:20:14 UTC
OK; I think I have found the problem and I'm working on a solution.

The issue is the perlmagick ebuild does not run the imagemagick configure
process; it just goes to the PerlMagick subdirectory and runs
"perl Makefile.PL" (through the perl-module_src_prep command).

The problem is that the "stock" Makefile.PL has this LIBS directive:

   'LIBS'       => ['-L/usr/local/lib -L../magick/.libs -lMagick -L/usr/X11R6/lib -L/usr/lib/graphviz -lfreetype -lz -L/usr/lib -llcms -ltiff -lfreetype -ljpeg -lpng -ldpstk -ldps -lXext -lXt -lSM -lICE -lX11 -lbz2 -lxml2 -ldotneato -lz -lp thread -lm -lpthread'],

which clearly has a lot of X stuff.

Makefile.PL is actually generated when you run the top level configure script;
if X is not defined then the LIBS line will be regenerated without that
dependency.  This completely cures the problem.

I've tested taking the imagemagick ebuild, running the imagemagick
configure process and then building and installing the PerlMagick sub
directory.  I'll attach that ebuild to this bug.

I tested 6.1.3.4 (which is still masked) but the ebuild file is
identitical to 6.1.3.2.  If you want to test 6.1.3.4 you'll need to
add these three lines to your /etc/portage/package.keywords file:

=media-gfx/imagemagick-6.1.3.4 ~x86
=dev-perl/perlmagick-6.1.3.4 ~x86
=sys-devel/libtool-1.5.2-r7 ~x86

It would be nice if Stuart or Wendall or one of the perl folks could
confirm that this works for them.
Comment 6 Neil Katin 2004-11-15 17:21:08 UTC
Created attachment 44026 [details]
ebuild that fixed the build problem for me
Comment 7 Wendall Cada 2004-11-16 10:47:05 UTC
I still have the same failure with dev-perl/perlmagick-6.1.3 I'll add my failure messages, world file, etc for review.

Wendall
Comment 8 Wendall Cada 2004-11-16 10:54:10 UTC
Created attachment 44087 [details]
Emerge info for Wendall
Comment 9 Stuart Hickinbottom 2004-11-16 10:58:11 UTC
I'm trying to verify it, but I think I fail to understand how to try the suggested ebuild. I've modified my packages.keywords and that works OK (the right versions become available), and I've created the local portage overlay for the package and generated the manifest (OK, I think), but when I try the ebuild for imagemagick I get:

/usr/lib/portage/bin/ebuild.sh: line 75: perl-module_src_prep: command not found
/usr/lib/portage/bin/ebuild.sh: line 76: perl-module_src_compile: command not found

This occurs after the configure step. I think it's nearly there, though, as it seems to detect OK that X11 isn't there, and shows a LIBS that *doesn't* include -lX11.

I suspect that I've just not applied the modified ebuild correctly. If anyone has any suggestions I'm more than willing to try some more.
Comment 10 Wendall Cada 2004-11-16 10:58:26 UTC
Created attachment 44088 [details]
Wendall's world file
Comment 11 Wendall Cada 2004-11-16 11:19:48 UTC
Created attachment 44091 [details]
Wendall's emerge output
Comment 12 Neil Katin 2004-11-16 12:30:22 UTC
Created attachment 44096 [details]
Fixes bug for me


I attached a new version of the ebuild; I had named the old one the same as
what was in the tree; that was clearly wrong.  I bumped the version number to
-r1 to make it clear that it is different.  Otherwise the bits are identical.
Comment 13 Neil Katin 2004-11-16 12:35:36 UTC
This is a reply to comment #9.

Thanks Stuart for trying the patch.  Here is more explicit directions:

Make a portage overlay directory (it sounds like you have that).  I'm assuming that directory is /usr/local/portage.

Copy the new ebuild file into /usr/local/portage/dev-perl/perlmagick/perlmagick-6.1.3.4-r1.ebuild.

Add "dev-perl/perlmagick ~x86" to your /etc/portage/package.keywords.

Emerge perlmagick.

(I had thought bugzilla would preserve the filename of the attachment,
but I guess it doesn't for text/plain attachments...)
Comment 14 Wendall Cada 2004-11-16 14:27:41 UTC
The attatched "Fixes bug for me" compiles and installs. I didn't test to see if perlmagick actually works or not.

Wendall
Comment 15 Stuart Hickinbottom 2004-11-16 14:37:32 UTC
Hmmm... I still get those errors from ebuild.sh:
/usr/lib/portage/bin/ebuild.sh: line 75: perl-module_src_prep: command not found
/usr/lib/portage/bin/ebuild.sh: line 76: perl-module_src_compile: command not found
/usr/lib/portage/bin/ebuild.sh: line 81: perl-module_src_install: command not found

I've attached the output from "emerge perlmagick", which shows the full perlmagick emerge process. There's some improvement, however, as you can see that the configure is definitely taking place and regenerating the Makefile, and that it's correctly spotted that X11 isn't there.
Comment 16 Stuart Hickinbottom 2004-11-16 14:39:11 UTC
Created attachment 44102 [details]
StuartH's updated failed emerge output
Comment 17 Neil Katin 2004-11-16 16:09:16 UTC
Created attachment 44113 [details]
perlmagick-6.1.3.4-r1.ebuild



Oops, sorry Stuart.  I see what the problem was: thanks for attaching the
output.  Here's a new version that should work better.

Thanks for your patience.
Comment 18 Stuart Hickinbottom 2004-11-16 17:22:00 UTC
That last update has done the trick. Thanks very much for all the effort - very much appreciated.

It now emerges fine.
Comment 19 Wendall Cada 2004-11-16 17:55:26 UTC
Emerges without errors now for me as well.

Wendall
Comment 20 Carsten Lohrke (RETIRED) gentoo-dev 2004-11-19 09:44:51 UTC
*** Bug 71764 has been marked as a duplicate of this bug. ***
Comment 21 Karol Wojtaszek (RETIRED) gentoo-dev 2004-11-19 09:49:12 UTC
*** Bug 70229 has been marked as a duplicate of this bug. ***
Comment 22 xyon 2004-11-26 06:22:28 UTC
works like a champ for me as well... Thank you! :)
Comment 23 Michael Cummings (RETIRED) gentoo-dev 2005-03-13 14:26:38 UTC
Many thanks to Neil. I've taken the existing imagemagick ebuild's config/use sequence to rebuild the perlmagick ebuild (6.2.0.4-r1) so that it is compatible with how imagemagick is built, and just as importantly to this bug, so that if you do not have X enabled it shouldn't be enabled in perlmagick either. This ebuild differs from Neil's only in the evolution of use flags in imagemagick - otherwise it follows the same formula. Thank you all for your patience,

Mike