Opened 11 years ago

Closed 11 years ago

#39110 closed defect (invalid)

p5-perlmagick @6.8.5-5 fails to build: ld: library not found for -lMagickCore-6.Q16

Reported by: jmgoicolea (Jose Goicolea) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.1.3
Keywords: Cc:
Port: p5-perlmagick

Description (last modified by mf2k (Frank Schima))

This port fails when building its first dependency:

$ sudo port install p5-perlmagick
--->  Computing dependencies for p5-perlmagick
--->  Dependencies to be installed: p5.12-perlmagick
--->  Building p5.12-perlmagick
Error: org.macports.build for port p5.12-perlmagick returned: command execution failed
Error: Failed to install p5.12-perlmagick
Please see the log file for port p5.12-perlmagick for details:
...

In the log file it appears to be an error in the linking stage:

...
:info:build ld: warning: directory not found for option '-L../magick/.libs'
:info:build ld: library not found for -lMagickCore-6.Q16
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)
...

This port is needed for auto-multiple-choice which is what I'm really interested in

Attachments (1)

main.log (62.5 KB) - added by jmgoicolea (Jose Goicolea) 11 years ago.
log file which fails for installing p5.12-perlmagick

Download all attachments as: .zip

Change History (9)

comment:1 Changed 11 years ago by jmgoicolea (Jose Goicolea)

to be more precise, I needed to build ImageMagick with the +perl variant, in order to install auto-multiple-choice which requires it. This +perl variant has been deprecated in the latest version of ImageMagick @6.8.5-5_0 , which upon build gives the following error message:

Error: org.macports.configure for port ImageMagick returned: The +perl variant is no longer used; use the separate p5-perlmagick port instead.

My system is Lion 10.7.5, with xcode version 4.2.1

Last edited 11 years ago by jmgoicolea (Jose Goicolea) (previous) (diff)

comment:2 Changed 11 years ago by mf2k (Frank Schima)

Cc: ryandesign@… added
Description: modified (diff)
Owner: changed from macports-tickets@… to astricker@…

In the future, please use WikiFormatting and Cc the port maintainer(s).

comment:3 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

This was not a clean attempt. Clean and try again.

Changed 11 years ago by jmgoicolea (Jose Goicolea)

Attachment: main.log added

log file which fails for installing p5.12-perlmagick

comment:4 Changed 11 years ago by jmgoicolea (Jose Goicolea)

I have cleaned ("sudo port clean p5-perlmagick p5.12-perlmagick") but the error remains the same

comment:5 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… removed
Owner: changed from astricker@… to ryandesign@…
Status: newassigned
Summary: p5-perlmagick @6.8.5-5 fails to buildp5-perlmagick @6.8.5-5 fails to build with old clang

Thanks for verifying that. This is the problem that old versions of clang don't understand LIBRARY_PATH. I'll see if I can work around it.

Upgrading to a newer version of Xcode (e.g. 4.6.2) would fix it too; you should probably do that anyway. You can get it from the Mac App Store. After upgrading Xcode, open Xcode, go to the Preferences window, to the Downloads section, and upgrade the command line tools too.

comment:6 in reply to:  5 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: p5-perlmagick @6.8.5-5 fails to build with old clangp5-perlmagick @6.8.5-5 fails to build: ld: library not found for -lMagickCore-6.Q16

Replying to ryandesign@…:

This is the problem that old versions of clang don't understand LIBRARY_PATH.

On second thought, that doesn't seem to be it. I can't reproduce the problem, even on the very old version of clang in Xcode 3.2.6.

The relevant error in your log is:

ld: library not found for -lMagickCore-6.Q16

Do these files actually exist? The ImageMagick port should have installed them:

/opt/local/lib/libMagickCore-6.Q16.dylib
/opt/local/lib/libMagickCore-6.Q16.1.dylib

If not, what do port -v installed ImageMagick and port contents ImageMagick say?

comment:7 Changed 11 years ago by jmgoicolea (Jose Goicolea)

You are right. I had an older version installed of ImageMagick (@6.8.0-7_2+perl+q16) and in this version the required libraries did not exist.

I have installed the new ImageMagick @6.8.5-5_0, it does contain the required libraries, and after that p5-perlmagick and p5.12-perlmagick build correctly.

It also appears that auto-multiple-choice which needed the +perl variant in the previous version of ImageMagick now works correctly.

Thanks indeed for your help

comment:8 in reply to:  7 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: invalid
Status: assignedclosed

Replying to jose.goicolea@…:

You are right. I had an older version installed of ImageMagick (@6.8.0-7_2+perl+q16) and in this version the required libraries did not exist.

I have installed the new ImageMagick @6.8.5-5_0, it does contain the required libraries, and after that p5-perlmagick and p5.12-perlmagick build correctly.

Glad you got it working. But MacPorts should have upgraded ImageMagick for you first; I'm not sure why it didn't.

It also appears that auto-multiple-choice which needed the +perl variant in the previous version of ImageMagick now works correctly.

auto-multiple-choice makes no mention of requiring ImageMagick; it declares a dependency on GraphicsMagick. If auto-multiple-choice actually requires ImageMagick (or rather p5.12-perlmagick), please file a bug report against it.

Note: See TracTickets for help on using tickets.