JuliaPackaging / Homebrew.jl

OSX Binary dependency provider for Julia
Other
27 stars 32 forks source link

LoadError: Provider BinDeps.PackageManager failed to satisfy dependency libwand while building ImageMagick #175

Closed hpoit closed 7 years ago

hpoit commented 7 years ago

Hi @staticfloat, thanks for helping me out. I ran using BinDeps before trying to build ImageMagick.

julia> versioninfo()
Julia Version 0.5.0
Commit 3c9d753 (2016-09-19 18:14 UTC)
Platform Info:
  System: Darwin (x86_64-apple-darwin13.4.0)
  CPU: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.7.1 (ORCJIT, ivybridge)

julia> Homebrew.versioninfo()
Julia Version 0.5.0
Commit 3c9d753 (2016-09-19 18:14 UTC)
Platform Info:
  System: Darwin (x86_64-apple-darwin13.4.0)
  CPU: Intel(R) Core(TM) i7-3520M CPU @ 2.90GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Sandybridge)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.7.1 (ORCJIT, ivybridge)
Homebrew git revision 664d0c6; last commit 13 days ago
homebrew/core git revision 6d35fa6; last commit 2 hours ago
staticfloat/juliadeps revision cc974db; last commit 4 weeks ago

30 total packages installed:
cairo, cmake, ffmpeg, fontconfig, freetype, gettext, glfw, glib, gmp, gobject-introspection, harfbuzz, icu4c, imagemagick, jpeg, lame, libffi, libpgm, libpng, libtiff, libtool, nettle, pango, pcre, pixman, pkg-config, szip, x264, xvid, xz, hdf5

julia> 

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Already up-to-date.
INFO: Building ImageMagick
===========================================================================[ ERROR: ImageMagick ]============================================================================

LoadError: Provider BinDeps.PackageManager failed to satisfy dependency libwand
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 98

=============================================================================================================================================================================

==============================================================================[ BUILD ERRORS ]===============================================================================

WARNING: ImageMagick had build errors.

 - packages with build errors remain installed in /Users/Corvus/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("ImageMagick")`
 - build a single package by running its `deps/build.jl` script

=============================================================================================================================================================================
staticfloat commented 7 years ago

What does BinDeps.debug("ImageMagick") say? What happens if you manually Homebrew.rm("ImageMagick") then run Pkg.build("ImageMagick") again?

hpoit commented 7 years ago
julia> BinDeps.debug("ImageMagick")
INFO: Reading build script...
ERROR: LoadError: LoadError: Unable to load 

libwand (/Users/Corvus/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib)

Please re-run Pkg.build(package), and restart Julia.
 in include_from_node1(::String) at ./loading.jl:488
 in include_from_node1(::String) at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:?
 in include_from_node1(::String) at ./loading.jl:488
 in include_from_node1(::String) at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib:?
 in debug_context(::String) at /Users/Corvus/.julia/v0.5/BinDeps/src/debug.jl:54
 in debug(::Base.TTY, ::String) at /Users/Corvus/.julia/v0.5/BinDeps/src/debug.jl:59
 in debug(::String) at /Users/Corvus/.julia/v0.5/BinDeps/src/debug.jl:65
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/deps.jl, in expression starting on line 18
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 112

julia> Homebrew.rm("ImageMagick")
Uninstalling ImageMagick... (1,518 files, 22.5M)

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Updated 1 tap (homebrew/science).
No changes to formulae.
INFO: Building ImageMagick
===========================================================================[ ERROR: ImageMagick ]============================================================================

LoadError: Provider BinDeps.PackageManager failed to satisfy dependency libwand
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 98

=============================================================================================================================================================================

==============================================================================[ BUILD ERRORS ]===============================================================================

WARNING: ImageMagick had build errors.

 - packages with build errors remain installed in /Users/Corvus/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("ImageMagick")`
 - build a single package by running its `deps/build.jl` script

=============================================================================================================================================================================

julia> 

I restarted Julia and ran Pkg.build("ImageMagick") but same error.

staticfloat commented 7 years ago

Huh. What if you manually run Homebrew.add("imagemagick") again?

hpoit commented 7 years ago
julia> using Homebrew

julia> Homebrew.add("ImageMagick")

julia> 

I guess it worked?

staticfloat commented 7 years ago

It should have printed something out. Run Homebrew.rm("imagemagick"; force=true, verbose=true). to force-uninstall all the imagemagick versions that might be hiding in there, then run Homebrew.add("imagemagick"; verbose=true)

hpoit commented 7 years ago
julia> Homebrew.rm("imagemagick"; force=true, verbose=true)

julia> Homebrew.add("imagemagick"; verbose=true)
runtime_deps: String["xz","libpng","freetype","jpeg","libtiff","libtool"]
translation: beginning for xz
translation: bailing because xz is in the translation blacklist
translation: beginning for pkg-config
translation: successfully finished for pkg-config
translation: beginning for libpng
translation: successfully finished for libpng
translation: beginning for freetype
translation: replacing dependency libpng because it's been translated before
translation: successfully finished for freetype
translation: beginning for jpeg
translation: successfully finished for jpeg
translation: beginning for libtiff
translation: replacing dependency jpeg because it's been translated before
translation: successfully finished for libtiff
translation: beginning for libtool
translation: successfully finished for libtool
sorted_deps: AbstractString["xz","staticfloat/juliatranslated/libpng","staticfloat/juliatranslated/freetype","staticfloat/juliatranslated/jpeg","staticfloat/juliatranslated/libtiff","staticfloat/juliatranslated/libtool"]
build_deps only: AbstractString["staticfloat/juliatranslated/pkg-config"]
translation: beginning for imagemagick
translation: replacing dependency pkg-config because it's been translated before
translation: replacing dependency libtool because it's been translated before
translation: replacing dependency jpeg because it's been translated before
translation: replacing dependency libpng because it's been translated before
translation: replacing dependency libtiff because it's been translated before
translation: replacing dependency freetype because it's been translated before
translation: successfully finished for imagemagick

julia> 
staticfloat commented 7 years ago

Okay, that is really weird. I don't know why we're not seeing brew print out its installation status. Let's try manually calling Homebrew.install_brew(), quitting Julia, then running those two commands above again.

hpoit commented 7 years ago
julia> using Homebrew

julia> Homebrew.rm("imagemagick"; force=true, verbose=true)

julia> Homebrew.add("imagemagick"; verbose=true)
runtime_deps: String["xz","libpng","freetype","jpeg","libtiff","libtool"]
translation: beginning for xz
translation: bailing because xz is in the translation blacklist
translation: beginning for pkg-config
translation: successfully finished for pkg-config
translation: beginning for libpng
translation: successfully finished for libpng
translation: beginning for freetype
translation: replacing dependency libpng because it's been translated before
translation: successfully finished for freetype
translation: beginning for jpeg
translation: successfully finished for jpeg
translation: beginning for libtiff
translation: replacing dependency jpeg because it's been translated before
translation: successfully finished for libtiff
translation: beginning for libtool
translation: successfully finished for libtool
sorted_deps: AbstractString["xz","staticfloat/juliatranslated/libpng","staticfloat/juliatranslated/freetype","staticfloat/juliatranslated/jpeg","staticfloat/juliatranslated/libtiff","staticfloat/juliatranslated/libtool"]
build_deps only: AbstractString["staticfloat/juliatranslated/pkg-config"]
translation: beginning for imagemagick
translation: replacing dependency pkg-config because it's been translated before
translation: replacing dependency libtool because it's been translated before
translation: replacing dependency jpeg because it's been translated before
translation: replacing dependency libpng because it's been translated before
translation: replacing dependency libtiff because it's been translated before
translation: replacing dependency freetype because it's been translated before
translation: successfully finished for imagemagick

julia> 
staticfloat commented 7 years ago

what does it say if you enter shell> mode and run brew rm -v -f imagemagick; brew install -v staticfloat/juliatranslated/imagemagick?

hpoit commented 7 years ago
shell> brew rm -v -f imagemagick; brew install -v staticfloat/juliatranslated/imagemagick
Error: No available formula with the name "staticfloat/juliatranslated/imagemagick" 
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
Error: No formulae found in taps.

julia> 
staticfloat commented 7 years ago

Alright, well there are some error messages at least. :)

I forgot that we need to translate the name instead of just typing it out like that. Try this:

shell> brew install -v $(Homebrew.translate_formula("imagemagick"))
==> Installing imagemagick from staticfloat/juliatranslated
==> Downloading https://homebrew.bintray.com/bottles/imagemagick-7.0.4-7.el_capitan.bottle.tar.gz
Already downloaded: /Users/sabae/Library/Caches/Homebrew.jl/imagemagick-7.0.4-7.el_capitan.bottle.tar.gz
==> Verifying imagemagick-7.0.4-7.el_capitan.bottle.tar.gz checksum
==> Pouring imagemagick-7.0.4-7.el_capitan.bottle.tar.gz
tar xzf /Users/sabae/Library/Caches/Homebrew.jl/imagemagick-7.0.4-7.el_capitan.bottle.tar.gz
==> Finishing up
mkdir -p /Users/sabae/.julia/v0.5/Homebrew/deps/usr/etc/ImageMagick-7
...
hpoit commented 7 years ago

https://docs.google.com/document/d/1pHoVTuK7xbYLM0i-CLM3T_jsDgSZYSnEmhkpnwk9c_Y/edit?usp=sharing

staticfloat commented 7 years ago

Well, interesting. I.......... huh. Does Pkg.build() work now?

It looks like you've somehow got dangling symlinks in your Cellar. If Pkg.build() doesn't work now, try running brew rm -f imagemagick; brew prune; brew install -v $(Homebrew.translate_formula("imagemagick"))

hpoit commented 7 years ago

Hi Elliot, I'm sorry about the delay. I'm on UTC-03:00 time, six hours ahead of Seattle.

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Updated 2 taps (homebrew/core, homebrew/science).
==> New Formulae
chocolate-doom                           openmsx
==> Updated Formulae
chakra                                   homebrew/science/suite-sparse
homebrew/science/ceres-solver            homebrew/science/sundials
homebrew/science/dealii                  homebrew/science/trilinos
homebrew/science/dynare                  libmagic
homebrew/science/g2o                     temporal_tables
homebrew/science/getdp                   terragrunt
homebrew/science/petsc                   vim
homebrew/science/slepc
INFO: Building ImageMagick
=============================[ ERROR: ImageMagick ]=============================

LoadError: Provider BinDeps.PackageManager failed to satisfy dependency libwand
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 98

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: ImageMagick had build errors.

 - packages with build errors remain installed in /Users/Corvus/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("ImageMagick")`
 - build a single package by running its `deps/build.jl` script

================================================================================

julia> using BinDeps

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Already up-to-date.
INFO: Building ImageMagick
=============================[ ERROR: ImageMagick ]=============================

LoadError: Provider BinDeps.PackageManager failed to satisfy dependency libwand
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 98

================================================================================

================================[ BUILD ERRORS ]================================

WARNING: ImageMagick had build errors.

 - packages with build errors remain installed in /Users/Corvus/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("ImageMagick")`
 - build a single package by running its `deps/build.jl` script

================================================================================

julia> using Homebrew

shell> brew rm -f imagemagick; brew prune; brew install -v $(Homebrew.translate_formula("imagemagick"))
Uninstalling imagemagick... (1,518 files, 22.5M)
Pruned 0 symbolic links and 2 directories from /Users/Corvus/.julia/v0.5/Homebrew/deps/usr
==> Installing imagemagick from staticfloat/juliatranslated
==> Downloading https://homebrew.bintray.com/bottles/imagemagick-7.0.4-7.sierra.bottle.tar.gz
Already downloaded: /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick-7.0.4-7.sierra.bottle.tar.gz
==> Verifying imagemagick-7.0.4-7.sierra.bottle.tar.gz checksum
==> Pouring imagemagick-7.0.4-7.sierra.bottle.tar.gz
tar xzf /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick-7.0.4-7.sierra.bottle.tar.gz
==> Finishing up
mkdir -p /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/etc/ImageMagick-7
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/coder.xml coder.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/colors.xml colors.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/delegates.xml delegates.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/log.xml log.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/magic.xml magic.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/mime.xml mime.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/policy.xml policy.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/quantization-table.xml quantization-table.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/thresholds.xml thresholds.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/type-apple.xml type-apple.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/type-dejavu.xml type-dejavu.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/type-ghostscript.xml type-ghostscript.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/type-windows.xml type-windows.xml
ln -s ../../Cellar/imagemagick/7.0.4-7/etc/ImageMagick-7/type.xml type.xml
ln -s ../Cellar/imagemagick/7.0.4-7/bin/Magick++-config Magick++-config
ln -s ../Cellar/imagemagick/7.0.4-7/bin/MagickCore-config MagickCore-config
ln -s ../Cellar/imagemagick/7.0.4-7/bin/MagickWand-config MagickWand-config
ln -s ../Cellar/imagemagick/7.0.4-7/bin/animate animate
ln -s ../Cellar/imagemagick/7.0.4-7/bin/compare compare
ln -s ../Cellar/imagemagick/7.0.4-7/bin/composite composite
ln -s ../Cellar/imagemagick/7.0.4-7/bin/conjure conjure
ln -s ../Cellar/imagemagick/7.0.4-7/bin/convert convert
ln -s ../Cellar/imagemagick/7.0.4-7/bin/display display
ln -s ../Cellar/imagemagick/7.0.4-7/bin/identify identify
ln -s ../Cellar/imagemagick/7.0.4-7/bin/import import
ln -s ../Cellar/imagemagick/7.0.4-7/bin/magick magick
ln -s ../Cellar/imagemagick/7.0.4-7/bin/magick-script magick-script
ln -s ../Cellar/imagemagick/7.0.4-7/bin/mogrify mogrify
ln -s ../Cellar/imagemagick/7.0.4-7/bin/montage montage
ln -s ../Cellar/imagemagick/7.0.4-7/bin/stream stream
ln -s ../Cellar/imagemagick/7.0.4-7/include/ImageMagick-7 ImageMagick-7
ln -s ../Cellar/imagemagick/7.0.4-7/share/ImageMagick-7 ImageMagick-7
ln -s ../../Cellar/imagemagick/7.0.4-7/share/doc/ImageMagick-7 ImageMagick-7
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/ImageMagick.1 ImageMagick.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/Magick++-config.1 Magick++-config.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/MagickCore-config.1 MagickCore-config.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/MagickWand-config.1 MagickWand-config.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/animate.1 animate.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/compare.1 compare.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/composite.1 composite.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/conjure.1 conjure.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/convert.1 convert.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/display.1 display.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/identify.1 identify.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/import.1 import.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/magick-script.1 magick-script.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/magick.1 magick.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/mogrify.1 mogrify.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/montage.1 montage.1
ln -s ../../../Cellar/imagemagick/7.0.4-7/share/man/man1/stream.1 stream.1
ln -s ../Cellar/imagemagick/7.0.4-7/lib/ImageMagick ImageMagick
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagick++-7.Q16HDRI.1.dylib libMagick++-7.Q16HDRI.1.dylib
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagick++-7.Q16HDRI.a libMagick++-7.Q16HDRI.a
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagick++-7.Q16HDRI.dylib libMagick++-7.Q16HDRI.dylib
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagick++-7.Q16HDRI.la libMagick++-7.Q16HDRI.la
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickCore-7.Q16HDRI.2.dylib libMagickCore-7.Q16HDRI.2.dylib
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickCore-7.Q16HDRI.a libMagickCore-7.Q16HDRI.a
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickCore-7.Q16HDRI.dylib libMagickCore-7.Q16HDRI.dylib
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickCore-7.Q16HDRI.la libMagickCore-7.Q16HDRI.la
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickWand-7.Q16HDRI.0.dylib libMagickWand-7.Q16HDRI.0.dylib
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickWand-7.Q16HDRI.a libMagickWand-7.Q16HDRI.a
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickWand-7.Q16HDRI.dylib libMagickWand-7.Q16HDRI.dylib
ln -s ../Cellar/imagemagick/7.0.4-7/lib/libMagickWand-7.Q16HDRI.la libMagickWand-7.Q16HDRI.la
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/ImageMagick-7.Q16HDRI.pc ImageMagick-7.Q16HDRI.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/ImageMagick.pc ImageMagick.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/Magick++-7.Q16HDRI.pc Magick++-7.Q16HDRI.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/Magick++.pc Magick++.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/MagickCore-7.Q16HDRI.pc MagickCore-7.Q16HDRI.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/MagickCore.pc MagickCore.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/MagickWand-7.Q16HDRI.pc MagickWand-7.Q16HDRI.pc
ln -s ../../Cellar/imagemagick/7.0.4-7/lib/pkgconfig/MagickWand.pc MagickWand.pc
==> Summary
🍺  /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick/7.0.4-7: 1,518 files, 22.5M

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Already up-to-date.
INFO: Building ImageMagick
===========================================================================[ ERROR: ImageMagick ]============================================================================

LoadError: Provider BinDeps.PackageManager failed to satisfy dependency libwand
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 98

=============================================================================================================================================================================

==============================================================================[ BUILD ERRORS ]===============================================================================

WARNING: ImageMagick had build errors.

 - packages with build errors remain installed in /Users/Corvus/.julia/v0.5
 - build the package(s) and all dependencies with `Pkg.build("ImageMagick")`
 - build a single package by running its `deps/build.jl` script

=============================================================================================================================================================================

julia>  
bjarthur commented 7 years ago

7.0.4 rears it's ugly head again! see https://github.com/JuliaIO/ImageMagick.jl/issues/66

hpoit commented 7 years ago

Hi Ben, I am using macOS Sierra v10.12.2. Elliot suggested to manually remove and reinstall it, but it didn't correctly build. I am pretty far off from my end goal, which is to add packages Escher and ThreeJS (both noisy because of Homebrew) for NetworkViz to then provide a reliable solution for rendering in BayesNets, as described on issue 56. I chose NetworkViz because its build passes for Linux, OSX, and Windows, because it offers 3D, and because I didn't find any major operational issues compared to other PGM rendering packages. #158

staticfloat commented 7 years ago

@bjarthur I don't quite follow the linked thread; are you saying that ImageMagick v7.0.4 is somehow not satisfying the ImageMagick.jl package properly? That this is a problem between ImageMagick.jl and and version 7.0.4 and not a problem with Homebrew.jl?

hpoit commented 7 years ago

Guys your help is very much appreciated. I am now adding the Sugiyama layout to NetworkLayout, but will soon have to come back to this issue.

bjarthur commented 7 years ago

ImageMagick.jl currently only supports libimagemagick version 6. if during the week or so that homebrew updated to v7 before we merged a commit to require @6 a user who had master checked out out did a Pkg.update() then they will have 7 and it will not work.

staticfloat commented 7 years ago

Aha, I see. Yes, I remember now. @hpoit I've been telling you to install the wrong version, because I didn't remember that we need to install imagemagick@6. We will need to Homebrew.rm("imagemagick"; force=true) and then Homebrew.add("imagemagick@6"; verbose=true) and see what Pkg.build() says then.

hpoit commented 7 years ago
julia> using Homebrew

julia> Homebrew.rm("imagemagick"; force=true)
Uninstalling imagemagick... (1,518 files, 22.5M)

julia> Homebrew.add("imagemagick@6"; verbose=true)
runtime_deps: String["xz","libpng","freetype","jpeg","libtiff","libtool"]
translation: beginning for xz
translation: bailing because xz is in the translation blacklist
translation: beginning for pkg-config
translation: successfully finished for pkg-config
translation: beginning for libpng
translation: successfully finished for libpng
translation: beginning for freetype
translation: replacing dependency libpng because it's been translated before
translation: successfully finished for freetype
translation: beginning for jpeg
translation: successfully finished for jpeg
translation: beginning for libtiff
translation: replacing dependency jpeg because it's been translated before
translation: successfully finished for libtiff
translation: beginning for libtool
translation: successfully finished for libtool
sorted_deps: AbstractString["xz","staticfloat/juliatranslated/libpng","staticfloat/juliatranslated/freetype","staticfloat/juliatranslated/jpeg","staticfloat/juliatranslated/libtiff","staticfloat/juliatranslated/libtool"]
build_deps only: AbstractString["staticfloat/juliatranslated/pkg-config"]
translation: beginning for imagemagick@6
translation: using staticfloat/juliadeps/imagemagick@6 for the source of our translation
translation: replacing dependency pkg-config because it's been translated before
translation: replacing dependency libtool because it's been translated before
translation: replacing dependency jpeg because it's been translated before
translation: replacing dependency libpng because it's been translated before
translation: replacing dependency libtiff because it's been translated before
translation: replacing dependency freetype because it's been translated before
translation: successfully finished for staticfloat/juliadeps/imagemagick@6
==> Installing imagemagick@6 from staticfloat/juliatranslated
==> Downloading https://juliabottles.s3.amazonaws.com/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
/usr/bin/curl --remote-time --location --user-agent Homebrew/1.1.9 (Macintosh; Intel macOS 10.12.2) curl/7.51.0 --fail https://juliabottles.s3.amazonaws.com/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz -C 0 -o /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz.incomplete
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 8596k  100 8596k    0     0   495k      0  0:00:17  0:00:17 --:--:--  656k
==> Verifying imagemagick@6-6.9.7-3.sierra.bottle.tar.gz checksum
==> Pouring imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
tar xzf /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
==> Finishing up
mkdir -p /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/etc/ImageMagick-6
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/coder.xml coder.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/colors.xml colors.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/delegates.xml delegates.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/log.xml log.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/magic.xml magic.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/mime.xml mime.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/policy.xml policy.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/quantization-table.xml quantization-table.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/thresholds.xml thresholds.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/type-apple.xml type-apple.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/type-dejavu.xml type-dejavu.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/type-ghostscript.xml type-ghostscript.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/type-windows.xml type-windows.xml
ln -s ../../Cellar/imagemagick@6/6.9.7-3/etc/ImageMagick-6/type.xml type.xml
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/Magick++-config Magick++-config
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/Magick-config Magick-config
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/MagickCore-config MagickCore-config
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/MagickWand-config MagickWand-config
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/Wand-config Wand-config
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/animate animate
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/compare compare
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/composite composite
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/conjure conjure
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/convert convert
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/display display
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/identify identify
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/import import
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/mogrify mogrify
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/montage montage
ln -s ../Cellar/imagemagick@6/6.9.7-3/bin/stream stream
ln -s ../Cellar/imagemagick@6/6.9.7-3/include/ImageMagick-6 ImageMagick-6
ln -s ../Cellar/imagemagick@6/6.9.7-3/share/ImageMagick-6 ImageMagick-6
ln -s ../../Cellar/imagemagick@6/6.9.7-3/share/doc/ImageMagick-6 ImageMagick-6
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/ImageMagick.1 ImageMagick.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/Magick++-config.1 Magick++-config.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/Magick-config.1 Magick-config.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/MagickCore-config.1 MagickCore-config.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/MagickWand-config.1 MagickWand-config.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/Wand-config.1 Wand-config.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/animate.1 animate.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/compare.1 compare.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/composite.1 composite.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/conjure.1 conjure.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/convert.1 convert.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/display.1 display.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/identify.1 identify.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/import.1 import.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/mogrify.1 mogrify.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/montage.1 montage.1
ln -s ../../../Cellar/imagemagick@6/6.9.7-3/share/man/man1/stream.1 stream.1
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/ImageMagick ImageMagick
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagick++-6.Q16.7.dylib libMagick++-6.Q16.7.dylib
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagick++-6.Q16.a libMagick++-6.Q16.a
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagick++-6.Q16.dylib libMagick++-6.Q16.dylib
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagick++-6.Q16.la libMagick++-6.Q16.la
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickCore-6.Q16.3.dylib libMagickCore-6.Q16.3.dylib
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickCore-6.Q16.a libMagickCore-6.Q16.a
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickCore-6.Q16.dylib libMagickCore-6.Q16.dylib
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickCore-6.Q16.la libMagickCore-6.Q16.la
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickWand-6.Q16.3.dylib libMagickWand-6.Q16.3.dylib
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickWand-6.Q16.a libMagickWand-6.Q16.a
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickWand-6.Q16.dylib libMagickWand-6.Q16.dylib
ln -s ../Cellar/imagemagick@6/6.9.7-3/lib/libMagickWand-6.Q16.la libMagickWand-6.Q16.la
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/ImageMagick++-6.Q16.pc ImageMagick++-6.Q16.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/ImageMagick++.pc ImageMagick++.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/ImageMagick-6.Q16.pc ImageMagick-6.Q16.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/ImageMagick.pc ImageMagick.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/Magick++-6.Q16.pc Magick++-6.Q16.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/Magick++.pc Magick++.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/MagickCore-6.Q16.pc MagickCore-6.Q16.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/MagickCore.pc MagickCore.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/MagickWand-6.Q16.pc MagickWand-6.Q16.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/MagickWand.pc MagickWand.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/Wand-6.Q16.pc Wand-6.Q16.pc
ln -s ../../Cellar/imagemagick@6/6.9.7-3/lib/pkgconfig/Wand.pc Wand.pc
==> Summary
🍺  /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3: 1,464 files, 22.2M
Warning: Already linked: /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Updated 2 taps (homebrew/core, homebrew/science).
==> New Formulae
arx-libertatis                             elasticsearch@2.3                          kompose                                    mingw-w64
boost-mpi                                  homebrew/science/scram                     magnetix                                   simutrans
==> Updated Formulae
ansible-cmdb                 docker-machine-completion    homebrew/science/jellyfish   juju                         purescript                   tomcat@8.0
antigen                      dub                          homebrew/science/mfem        juju@1.25                    puzzles                      ttyd
bash-preexec                 fonttools                    homebrew/science/octave      kerl                         redis                        vim
citus                        gofabric8                    homebrew/science/paraview    mcabber                      scriptcs                     wartremover
dark-mode                    homebrew/science/biomake     homebrew/science/quake       mpv                          snap-telemetry               wget
digdag                       homebrew/science/dgtal       homebrew/science/trinity     pkcs11-helper                svtplay-dl                   yadm
docker-completion            homebrew/science/healpix     jenkins                      planck                       swiftformat
==> Deleted Formulae
mingw-w64-binutils
Uninstalling imagemagick@6... (1,464 files, 22.2M)
==> Installing imagemagick@6 from staticfloat/juliatranslated
==> Downloading https://juliabottles.s3.amazonaws.com/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
Already downloaded: /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
==> Pouring imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
🍺  /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3: 1,464 files, 22.2M
Warning: Already linked: /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3
INFO: Building ImageMagick

signal (11): Segmentation fault: 11
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 113
MagickQueryConfigureOption at /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib (unknown line)
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x10a67dd8e)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:569
jl_eval_module_expr at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:196
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:465
jl_parse_eval_all at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/ast.c:717
jl_load at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:596 [inlined]
jl_load_ at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:605
include_from_node1 at ./loading.jl:488
jlcall_include_from_node1_20125 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
do_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:66
eval at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:190
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:558
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:533
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
evalfile at ./loading.jl:504
evalfile at ./loading.jl:504
unknown function (ip: 0x10a5c89b0)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
cd at ./file.jl:59
#1 at ./none:13
open at ./iostream.jl:113
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
do_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:66
eval at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:190
eval_body at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:465
jl_interpret_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:573
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:572
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:533
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
eval at ./boot.jl:234
jlcall_eval_19752 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
process_options at ./client.jl:239
_start at ./client.jl:318
jlcall__start_21452 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
true_main at /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia (unknown line)
main at /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia (unknown line)
Allocations: 5207549 (Pool: 5206364; Big: 1185); GC: 7
ERROR: Build process failed.
 in build!(::Array{String,1}, ::Dict{Any,Any}, ::Set{Any}) at ./pkg/entry.jl:622
 in build(::Array{String,1}) at ./pkg/entry.jl:641
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::Array{String,1}, ::Vararg{Array{String,1},N}) at ./pkg/dir.jl:31
 in build(::String, ::Vararg{String,N}) at ./pkg/pkg.jl:236

julia> 
staticfloat commented 7 years ago

Well well well! That's some serious progress. Looks like imagemagick is getting installed properly and BinDeps is satisfied, but we're getting a segfault on load. Try quitting Julia and re-running Pkg.build(), perhaps Julia was confused because it had loaded an older imagemagick library into memory previously. If that doesn't work, let's ask @bjarthur if he has any ideas why imagemagick would be segfaulting.

hpoit commented 7 years ago

That is some serious progress! However

julia> using Homebrew

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Already up-to-date.
Uninstalling imagemagick@6... (1,464 files, 22.2M)
==> Installing imagemagick@6 from staticfloat/juliatranslated
==> Downloading https://juliabottles.s3.amazonaws.com/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
Already downloaded: /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
==> Pouring imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
🍺  /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3: 1,464 files, 22.2M
Warning: Already linked: /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3
INFO: Building ImageMagick

signal (11): Segmentation fault: 11
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 113
MagickQueryConfigureOption at /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib (unknown line)
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x31c2b5d7e)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:569
jl_eval_module_expr at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:196
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:465
jl_parse_eval_all at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/ast.c:717
jl_load at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:596 [inlined]
jl_load_ at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:605
include_from_node1 at ./loading.jl:488
jlcall_include_from_node1_20125 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
do_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:66
eval at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:190
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:558
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:533
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
evalfile at ./loading.jl:504
evalfile at ./loading.jl:504
unknown function (ip: 0x31c2009b0)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
cd at ./file.jl:59
#1 at ./none:13
open at ./iostream.jl:113
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
do_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:66
eval at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:190
eval_body at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:465
jl_interpret_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:573
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:572
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:533
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
eval at ./boot.jl:234
jlcall_eval_19752 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
process_options at ./client.jl:239
_start at ./client.jl:318
jlcall__start_21452 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
true_main at /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia (unknown line)
main at /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia (unknown line)
Allocations: 5207536 (Pool: 5206351; Big: 1185); GC: 7
ERROR: Build process failed.
 in build!(::Array{String,1}, ::Dict{Any,Any}, ::Set{Any}) at ./pkg/entry.jl:622
 in build(::Array{String,1}) at ./pkg/entry.jl:641
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::Array{String,1}, ::Vararg{Array{String,1},N}) at ./pkg/dir.jl:31
 in build(::String, ::Vararg{String,N}) at ./pkg/pkg.jl:236

julia> 

Mr. Ben, please advise.

bjarthur commented 7 years ago

can you build it from a clean install?

$ export JULIA_PKGDIR="~/.foobar"
$ julia
julia> Pkg.dir()
[should say ~/.foobar here]
julia> Pkg.init()
julia> Pkg.add("ImageMagick")
hpoit commented 7 years ago

After export JULIA_PKGDIR=/Users/Corvus/.julia/v0.5

julia> Pkg.dir()
"/Users/Corvus/.julia/v0.5"

julia> Pkg.init()
INFO: Initializing package repository /Users/Corvus/.julia/v0.5
INFO: Package directory /Users/Corvus/.julia/v0.5 is already initialized.

julia> Pkg.add("ImageMagick")
INFO: Nothing to be done
INFO: METADATA is out-of-date — you may not have the latest version of ImageMagick
INFO: Use `Pkg.update()` to get the latest versions of your packages

julia> 
staticfloat commented 7 years ago

@hpoit do you have an imagemagick installed in your global homebrew?

hpoit commented 7 years ago

I'm almost certain I don't. Where would it be?

bjarthur commented 7 years ago

@hpoit by "clean install" i mean to point JULIA_PKGDIR to somewhere other than the default. that is, to an empty directory so that everything is installed from scratch. this is not what you seem to have done since it says "already initialized" and "nothing to be done".

hpoit commented 7 years ago

Ben, I export JULIA_PKGDIR=/Users/Corvus/Google\ Drive\ Kvtliu but then Pkg.dir() still remains "/Users/Corvus/.julia/v0.5"

hpoit commented 7 years ago

I also tried

julia> Pkg.dir()
"/Users/Corvus/.julia/v0.5"

julia> Pkg.dir("/Users/Corvus/Google\ Drive\ Kvtliu")
"/Users/Corvus/Google Drive Kvtliu"

julia> Pkg.init()
INFO: Initializing package repository /Users/Corvus/.julia/v0.5
INFO: Package directory /Users/Corvus/.julia/v0.5 is already initialized.

julia> 
staticfloat commented 7 years ago

Try JULIA_PKGDIR=/tmp julia e.g. put it all on one line. No export, no fancy paths, just JULIA_PKGDIR=/tmp julia. If your output is different than this, then it didn't work:

$ JULIA_PKGDIR=/tmp julia
               _
   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: http://docs.julialang.org
   _ _   _| |_  __ _   |  Type "?help" for help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 0.5.0 (2016-09-19 18:14 UTC)
 _/ |\__'_|_|_|\__'_|  |
|__/                   |  x86_64-apple-darwin15.6.0

julia> Pkg.init()
INFO: Initializing package repository /tmp/v0.5
INFO: Cloning METADATA from https://github.com/JuliaLang/METADATA.jl
hpoit commented 7 years ago
$ JULIA_PKGDIR=/tmp julia
-bash: julia: command not found
staticfloat commented 7 years ago

What shell are you using?

hpoit commented 7 years ago

bash

bjarthur commented 7 years ago

i'm guessing you installed the executable from the .dmg file. if so, try this:

JULIA_PKGDIR=/tmp /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia
hpoit commented 7 years ago

Nice guess! But... https://docs.google.com/document/d/1rPMJ9dPdp-BAq1yTX15CZrJn-_BMwibNCrtfrCaWzcg/edit?usp=sharing

bjarthur commented 7 years ago

check out master of ImageMagick and try again

Gnimuc commented 7 years ago

@bjarthur the problem still persists...

julia> Pkg.checkout("ImageMagick")
INFO: Checking out ImageMagick master...
INFO: Pulling ImageMagick latest master...
INFO: No packages to install, update or remove

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Already up-to-date.
Uninstalling imagemagick@6... (1,464 files, 22.2M)
==> Installing imagemagick@6 from staticfloat/juliatranslated
==> Downloading https://juliabottles.s3.amazonaws.com/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
Already downloaded: /Users/gnimuc/Library/Caches/Homebrew.jl/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
==> Pouring imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
🍺  /Users/gnimuc/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3: 1,464 files, 22.2M
Warning: Already linked: /Users/gnimuc/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3
INFO: Building ImageMagick

signal (11): Segmentation fault: 11
while loading /Users/gnimuc/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 122
MagickQueryConfigureOption at /Users/gnimuc/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib (unknown line)
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x31b052dfe)

after restart julia:

INFO: Building ImageMagick
========================================================[ ERROR: ImageMagick ]========================================================

LoadError: MethodError: no method matching generate_steps(::BinDeps.LibraryDependency, ::BinDeps.CustomPathBinaries, ::Dict{Symbol,Any})
Closest candidates are:
  generate_steps(::BinDeps.LibraryDependency, ::BinDeps.AptGet, ::Any) at /Users/gnimuc/.julia/v0.5/BinDeps/src/dependencies.jl:320
  generate_steps(::BinDeps.LibraryDependency, ::BinDeps.Yum, ::Any) at /Users/gnimuc/.julia/v0.5/BinDeps/src/dependencies.jl:331
  generate_steps(::BinDeps.LibraryDependency, ::BinDeps.Pacman, ::Any) at /Users/gnimuc/.julia/v0.5/BinDeps/src/dependencies.jl:343
  ...
while loading /Users/gnimuc/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 108

======================================================================================================================================
ERROR: UndefVarError: BinDeps not defined
bjarthur commented 7 years ago

this is the result on a clean clean install as we showed you how to do before?

Gnimuc commented 7 years ago

Update

Just fixed via a "clean install"(I removed everything in .julia/v0.5), it seems my problem is not the same as OP's.

@bjarthur no. I had an imagemagick installed in my global homebrew, then I removed it and corresponding libs, and before starting julia, I manually deleted the package folder in .julia/v0.5, and then after I run Pkg.update(), the following errors appeared:

INFO: Building ImageMagick
================================================================[ ERROR: ImageMagick ]=================================================================

LoadError: MethodError: no method matching generate_steps(::BinDeps.LibraryDependency, ::BinDeps.CustomPathBinaries, ::Dict{Symbol,Any})
Closest candidates are:
  generate_steps(::BinDeps.LibraryDependency, ::BinDeps.AptGet, ::Any) at /Users/gnimuc/.julia/v0.5/BinDeps/src/dependencies.jl:320
  generate_steps(::BinDeps.LibraryDependency, ::BinDeps.Yum, ::Any) at /Users/gnimuc/.julia/v0.5/BinDeps/src/dependencies.jl:331
  generate_steps(::BinDeps.LibraryDependency, ::BinDeps.Pacman, ::Any) at /Users/gnimuc/.julia/v0.5/BinDeps/src/dependencies.jl:343
  ...
while loading /Users/gnimuc/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 108

=======================================================================================================================================================
ERROR: UndefVarError: BinDeps not defined
 in deserialize(::SerializationState{IOStream}, ::Type{Module}) at ./serialize.jl:602
 in handle_deserialize(::SerializationState{IOStream}, ::Int32) at ./serialize.jl:581
 in deserialize(::SerializationState{IOStream}) at ./serialize.jl:541
 in deserialize_datatype(::SerializationState{IOStream}) at ./serialize.jl:822
 in handle_deserialize(::SerializationState{IOStream}, ::Int32) at ./serialize.jl:571
 in deserialize(::SerializationState{IOStream}, ::DataType) at ./serialize.jl:881
 in deserialize_datatype(::SerializationState{IOStream}) at ./serialize.jl:835
 in handle_deserialize(::SerializationState{IOStream}, ::Int32) at ./serialize.jl:571
 in deserialize(::SerializationState{IOStream}, ::DataType) at ./serialize.jl:881
 in deserialize_datatype(::SerializationState{IOStream}) at ./serialize.jl:835
 in handle_deserialize(::SerializationState{IOStream}, ::Int32) at ./serialize.jl:571
 in (::Base.Pkg.Entry.##54#55{Dict{Any,Any}})(::IOStream) at ./pkg/entry.jl:626
 in open(::Base.Pkg.Entry.##54#55{Dict{Any,Any}}, ::String, ::String) at ./iostream.jl:113
 in build!(::Array{String,1}, ::Dict{Any,Any}, ::Set{Any}) at ./pkg/entry.jl:623
 in build(::Array{String,1}) at ./pkg/entry.jl:641
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::Array{String,1}, ::Vararg{Array{String,1},N}) at ./pkg/dir.jl:31
 in build(::String, ::Vararg{String,N}) at ./pkg/pkg.jl:236

tomorrow, I'll test it via a clean install as you mentioned above because for now I'm blocked by homebrew as I updated it too frequently:

fatal: unable to access 'https://github.com/Homebrew/brew/': Failed to connect to github.com port 443: Connection refused
hpoit commented 7 years ago

https://docs.google.com/document/d/1uMIc_nOX9Jfmo0hk1gbDvWHqMCXawZq9KJPj_YB3DdA/edit?usp=sharing

hpoit commented 7 years ago

Alright guys, it's that time when I need your help to get this solved, if you please! image

staticfloat commented 7 years ago

Alright, let's get down to basics. In Julia, run Pkg.build("ImageMagick"). I don't care if you use the "clean install" pkg dir or not. Then, run these three commands:

shell> otool -L $(Pkg.dir("Homebrew", "deps/usr/lib/libMagickWand-6.Q16.dylib"))                                                                    /Users/sabae/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib: 
        /Users/sabae/.julia/v0.5/Homebrew/deps/usr/opt/imagemagick@6/lib/libMagickWand-6.Q16.4.dylib (compatibility version 5.0.0, current version 5.0.0) 
        /Users/sabae/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-8/lib/libMagickCore-6.Q16.4.dylib (compatibility version 5.0.0, current version 5.0.0) 
        /Users/sabae/.julia/v0.5/Homebrew/deps/usr/opt/freetype/lib/libfreetype.6.dylib (compatibility version 20.0.0, current version 20.0.0) 
        /Users/sabae/.julia/v0.5/Homebrew/deps/usr/opt/xz/lib/liblzma.5.dylib (compatibility version 8.0.0, current version 8.3.0) 
        /usr/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.5) 
        /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8) 
        /Users/sabae/.julia/v0.5/Homebrew/deps/usr/opt/libtool/lib/libltdl.7.dylib (compatibility version 11.0.0, currentversion 11.1.0) 
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.0.0) 

julia> Libdl.dlopen(Pkg.dir("Homebrew", "deps/usr/lib/libMagickWand-6.Q16.dylib")) 
Ptr{Void} @0x00007fcb5c4f3060

julia> using BinDeps; BinDeps.debug("ImageMagick") 
INFO: Reading build script... 
The package declares 1 dependencies. 
 - Library "libwand" 
    - Satisfied by: 
      - Homebrew Bottles homebrew/core/imagemagick@6 at /Users/sabae/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib 
    - Providers: 
      - Homebrew Bottles homebrew/core/imagemagick@6 
      - Binaries 

This is what the output looks like when things are "working".

hpoit commented 7 years ago

Thanks. What if the first step fails, proceed?

julia> Pkg.dir()
"/Users/Corvus/.julia/v0.5"

julia> Pkg.build("ImageMagick")
INFO: Building Homebrew
Updated 2 taps (homebrew/core, homebrew/science).
==> New Formulae
homebrew/science/mantaflow               homebrew/science/phyx
==> Updated Formulae
aws-sdk-cpp                              homebrew/science/iva
doxygen                                  homebrew/science/mlst
homebrew/science/armadillo               khal
homebrew/science/blast                   nzbget
Uninstalling imagemagick@6... (1,464 files, 22.2M)
==> Installing imagemagick@6 from staticfloat/juliatranslated
==> Downloading https://juliabottles.s3.amazonaws.com/imagemagick@6-6.9.7-3.sier
Already downloaded: /Users/Corvus/Library/Caches/Homebrew.jl/imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
==> Pouring imagemagick@6-6.9.7-3.sierra.bottle.tar.gz
🍺  /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3: 1,464 files, 22.2M
Warning: Already linked: /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/Cellar/imagemagick@6/6.9.7-3
INFO: Building ImageMagick

signal (11): Segmentation fault: 11
while loading /Users/Corvus/.julia/v0.5/ImageMagick/deps/build.jl, in expression starting on line 122
MagickQueryConfigureOption at /Users/Corvus/.julia/v0.5/Homebrew/deps/usr/lib/libMagickWand-6.Q16.dylib (unknown line)
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x3130487fe)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:569
jl_eval_module_expr at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:196
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:465
jl_parse_eval_all at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/ast.c:717
jl_load at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:596 [inlined]
jl_load_ at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:605
include_from_node1 at ./loading.jl:488
jlcall_include_from_node1_20125 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
do_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:66
eval at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:190
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:558
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:533
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
evalfile at ./loading.jl:504
evalfile at ./loading.jl:504
unknown function (ip: 0x312f969b0)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
cd at ./file.jl:59
#1 at ./none:13
open at ./iostream.jl:113
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
do_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:66
eval at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:190
eval_body at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:465
jl_interpret_call at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/interpreter.c:573
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:572
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:533
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
eval at ./boot.jl:234
jlcall_eval_19752 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
process_options at ./client.jl:239
_start at ./client.jl:318
jlcall__start_21452 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
true_main at /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia (unknown line)
main at /Applications/Julia-0.5.app/Contents/Resources/julia/bin/julia (unknown line)
Allocations: 4847554 (Pool: 4846342; Big: 1212); GC: 6
ERROR: Build process failed.
 in build!(::Array{String,1}, ::Dict{Any,Any}, ::Set{Any}) at ./pkg/entry.jl:622
 in build(::Array{String,1}) at ./pkg/entry.jl:641
 in (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}})() at ./pkg/dir.jl:31
 in cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#build,Tuple{Array{String,1}}}, ::String) at ./file.jl:59
 in #cd#1(::Array{Any,1}, ::Function, ::Function, ::Array{String,1}, ::Vararg{Array{String,1},N}) at ./pkg/dir.jl:31
 in build(::String, ::Vararg{String,N}) at ./pkg/pkg.jl:236

julia> 
staticfloat commented 7 years ago

yeah, I still want to see the output of all the steps.

hpoit commented 7 years ago

Ok, later I would like to understand what is wrong with ImageMagick.jl/blob/master/deps/build.jl#L122

hpoit commented 7 years ago

https://docs.google.com/document/d/1HeBMhj_4yhJeU0azINLgjdD24mgTGzvc3fdj2d7VfuU/edit?usp=sharing

staticfloat commented 7 years ago

Ok, later I would like to understand what is wrong with ImageMagick.jl/blob/master/deps/build.jl#L122

You and me both! We will definitely need to solve that. This reminds me of https://github.com/JuliaImages/Images.jl/issues/188, which is not good, because I thought we had laid that issue to rest.

hpoit commented 7 years ago

Should this issue be transferred to the ImageMagick.jl repo?

hpoit commented 7 years ago

If it's a seg fault there must be something wrong with the pointers?