简体   繁体   中英

Circos execution fails due to missing module GD which causes dyld[14230]: missing symbol called

First of all I would like to mention that I am not a programmer and neither do I have an english mother tongue, but I will try to do my best:-)

I was looking for a way to create some nice circular visualizations (chord graphs) and stumped across Circos ( http://circos.ca ), which seemed to fit my needs.

The installation was smooth until the last step, where I've encountered a problem with GD and running in circles while trying to fix it.

Here some details:

  • MacBook Air (Retina, 13-inch, 2020)
  • macOS Monterey Version 12.0.1 (21A559)
  • Circos 0.69-9
  • Perl v5.34.0

And a bunch of perl different modules I've managed to install successfully:-)

If the perl modules are checked using circos -modules there are two missing and that's where the problem starts:

ok       1.52 Carp
ok       0.45 Clone
ok       2.63 Config::General
ok       3.80 Cwd
ok      2.179 Data::Dumper
ok       2.58 Digest::MD5
ok       2.85 File::Basename
ok       3.80 File::Spec::Functions
ok     0.2311 File::Temp
ok       1.52 FindBin
ok       0.39 Font::TTF::Font
missing            GD
missing            GD::Polyline
ok       2.52 Getopt::Long
ok       1.46 IO::File
ok      0.430 List::MoreUtils
ok       1.55 List::Util
ok       0.01 Math::Bezier
ok   1.999818 Math::BigFloat
ok       0.07 Math::Round
ok       0.08 Math::VecStat
ok    1.03_01 Memoize
ok       1.97 POSIX
ok       1.30 Params::Validate
ok       2.01 Pod::Usage
ok       2.05 Readonly
ok 2017060201 Regexp::Common
ok       2.84 SVG
ok       1.19 Set::IntSpan
ok     1.6611 Statistics::Basic
ok       3.23 Storable
ok       1.23 Sys::Hostname
ok       2.04 Text::Balanced
ok       0.61 Text::Format
ok     1.9767 Time::HiRes

I tried various methods and googled extensively but I'm unable to get those two GD perl modules working.

When I use brew to install GD it seems to install nicely, but when checking using circos -modules I get:

dyld[14230]: missing symbol called

After uninstalling using brew uninstall --ignore-dependencies gd and checking again circos -modules the two missing modules are reported again and the dyld error is not shown anymore.

So I tried something I didn't quite know what I was doing:-)

... and downloaded GD 2.73 and compiled it...

perl Makefile.PL --ignore_missing_gd

Where is libgd installed? [/usr/lib] /usr/local/Cellar/

Please choose the features that match how libgd was built:
Build JPEG support? [y] y
Build PNG support? [y] y
Build FreeType support? [y] y
Build GIF support? [y] n
Build XPM support? [y] n

If you experience compile problems, please check the @INC, @LIBPATH and @LIBS
arrays defined in Makefile.PL and manually adjust, if necessary.

Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for GD
Writing MYMETA.yml and MYMETA.json

So I was encouraged to run the make command, but unfortunately a ton of warnings have been reported so that I decided not to continue with sudo make install

Now when checking with circos -modules I get the same error again:-(

After repeating brew uninstall --ignore-dependencies gd the same modules missing are reported again and I'm back at the beginning of the loop.

Here I'm stuck and running in circles any hint or little help would be very much appreciated.

Thanks and have a nice day!

In the mean time I've followed the link @Håkon Hægland posted

missing GD while installing circos on Mac OS Big Sur Version 11.0.1

So I did the following:

brew install pkg-config
Running `brew update --preinstall`...
==> Auto-updated Homebrew!
Updated Homebrew from cf4848b17 to e76dce1ae.
Updated 1 tap (homebrew/core).
==> Updated Formulae
Updated 16 formulae.
Warning: pkg-config 0.29.2_3 is already installed and up-to-date.
To reinstall 0.29.2_3, run:
  brew reinstall pkg-config

brew install libgd
==> Downloading https://ghcr.io/v2/homebrew/core/gd/manifests/2.3.3_1
Already downloaded: /Users/dirk/Library/Caches/Homebrew/downloads/fb430dd3c55c9f1f523cb280513372f2cc630661b0adf7c78e40dbbb040fe81c--gd-2.3.3_1.bottle_manifest.json
==> Downloading https://ghcr.io/v2/homebrew/core/gd/blobs/sha256:8976ef6710a704e27557e1ad9c2b3aecf9b0b3dc266b212922a6ac22
Already downloaded: /Users/dirk/Library/Caches/Homebrew/downloads/641ee2beaa19a84d66e7e62cb57a1b792eb02fb05306fbfe9ee15b4741649622--gd--2.3.3_1.monterey.bottle.tar.gz
==> Pouring gd--2.3.3_1.monterey.bottle.tar.gz
🍺  /usr/local/Cellar/gd/2.3.3_1: 33 files, 1.4MB
==> Running `brew cleanup gd`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).

cpanm GD
GD is up to date. (2.73)

But then when rerun circos -modules , I get again the following error:

dyld[3534]: missing symbol called
zsh: abort      circos -modules

Still running in circles, it's just to despair and now about time to sleep, tomorrow is a new day...

Thanks to all for the help and good night:-)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM