Skip to content
This repository has been archived by the owner on Aug 8, 2018. It is now read-only.

error: Cannot determine shared library suffix from libtool #211

Closed
trusktr opened this issue Mar 13, 2017 · 8 comments
Closed

error: Cannot determine shared library suffix from libtool #211

trusktr opened this issue Mar 13, 2017 · 8 comments

Comments

@trusktr
Copy link

trusktr commented Mar 13, 2017

I'm getting this error using Linuxbrew:

$ brew install neovim/neovim/neovim
==> Installing neovim from neovim/neovim
==> Installing dependencies for neovim/neovim/neovim: openssl, pkg-config, curl, homebrew/dupes/ncurses, cmake, libtool, homebrew/dupes/m4, autoconf, automake, jemalloc, libuv, msgpack, unibilium, libtermkey, libvterm, xz, libxml2, gettext, gperf, unzip
==> Installing neovim/neovim/neovim dependency: openssl
==> Downloading https://www.openssl.org/source/openssl-1.0.2k.tar.gz
Already downloaded: /home/cit/.cache/Homebrew/openssl-1.0.2k.tar.gz
==> Downloading https://github.com/openssl/openssl/pull/1524.patch
Already downloaded: /home/cit/.cache/Homebrew/openssl--patch-853a15755d3bc2b561d64c4f5d58a7ff4885e5cdbacbf429ce93b477e0d3d68e.patch
==> Patching
==> Applying 1524.patch
patching file Configure
Hunk #1 succeeded at 1723 (offset 2 lines).
==> perl ./Configure --prefix=/home/cit/.linuxbrew/Cellar/openssl/1.0.2k --openssldir=/home/cit/.linuxbrew/etc/openssl no-ssl2 zlib-dynamic shared enable-cms -isystem/home/cit/.linuxbrew/include -Os -w -pipe -march=native -Wa,--noexecstack -L/home/cit/.linuxbrew/lib -Wl,-
==> make depend
==> make
==> make test
==> make install MANDIR=/home/cit/.linuxbrew/Cellar/openssl/1.0.2k/share/man MANSUFFIX=ssl
==> Downloading https://curl.haxx.se/ca/cacert-2017-01-18.pem
######################################################################## 100.0%
==> Caveats
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
  /home/cit/.linuxbrew/etc/openssl/certs

and run
  /home/cit/.linuxbrew/opt/openssl/bin/c_rehash

==> Summary
🍺  /home/cit/.linuxbrew/Cellar/openssl/1.0.2k: 1,703 files, 14.3M, built in 2 minutes 33 seconds
==> Installing neovim/neovim/neovim dependency: pkg-config
==> Downloading https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.1.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/home/cit/.linuxbrew/Cellar/pkg-config/0.29.1_2 --disable-host-tool --with-internal-glib --with-pc-path=/home/cit/.linuxbrew/lib/pkgconfig:/home/cit/.linuxbrew/share/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/pkgconfig:/home/cit/.linuxbrew/Librar
Last 15 lines from /home/cit/.cache/Homebrew/Logs/pkg-config/01.configure:
checking for an implementation of __va_copy()... yes
checking whether va_lists can be copied by value... no
./configure: line 24338: ./libtool: Permission denied
checking for dlopen... no
checking for NSLinkModule... no
checking for dlopen in -ldl... yes
checking for dlsym in -ldl... yes
./configure: line 24565: ./libtool: Permission denied
checking for RTLD_GLOBAL brokenness... no
checking for preceeding underscore in symbols... no
checking for dlerror... yes
checking for the suffix of module shared libraries... ./configure: line 24685: ./libtool: Permission denied
.
configure: error: Cannot determine shared library suffix from libtool
configure: error: ./configure failed for glib

READ THIS: https://github.com/Linuxbrew/brew/blob/master/docs/Troubleshooting.md#troubleshooting
@trusktr
Copy link
Author

trusktr commented Mar 13, 2017

$ brew doctor
Your system is ready to brew.

@trusktr
Copy link
Author

trusktr commented Mar 13, 2017

I read this and though it would help, but that has errors too:

$ brew install libtool automake cmake pkg-config gettext
==> Downloading https://linuxbrew.bintray.com/bottles/libtool-2.4.6_2.x86_64_linux.bottle.tar.gz
######################################################################## 100.0%
==> Pouring libtool-2.4.6_2.x86_64_linux.bottle.tar.gz
==> Caveats
In order to prevent conflicts with Apple's own libtool we have prepended a "g"
so, you have instead: glibtool and glibtoolize.

==> Summary
🍺  /home/cit/.linuxbrew/Cellar/libtool/2.4.6_2: 73 files, 3.7M
==> Installing dependencies for automake: homebrew/dupes/m4, autoconf
==> Installing automake dependency: homebrew/dupes/m4
==> Downloading https://linuxbrew.bintray.com/bottles-dupes/m4-1.4.18.x86_64_linux.bottle.tar.gz
######################################################################## 100.0%
==> Pouring m4-1.4.18.x86_64_linux.bottle.tar.gz
🍺  /home/cit/.linuxbrew/Cellar/m4/1.4.18: 13 files, 582.2K
==> Installing automake dependency: autoconf
==> Downloading https://linuxbrew.bintray.com/bottles/autoconf-2.69.x86_64_linux.bottle.4.tar.gz
######################################################################## 100.0%
==> Pouring autoconf-2.69.x86_64_linux.bottle.4.tar.gz
==> Caveats

Emacs Lisp files have been installed to:
  /home/cit/.linuxbrew/share/emacs/site-lisp/autoconf
==> Summary
🍺  /home/cit/.linuxbrew/Cellar/autoconf/2.69: 70 files, 3.0M
==> Installing automake
==> Downloading https://linuxbrew.bintray.com/bottles/automake-1.15.x86_64_linux.bottle.2.tar.gz
######################################################################## 100.0%
==> Pouring automake-1.15.x86_64_linux.bottle.2.tar.gz
🍺  /home/cit/.linuxbrew/Cellar/automake/1.15: 130 files, 2.9M
==> Installing dependencies for cmake: pkg-config, curl, homebrew/dupes/ncurses
==> Installing cmake dependency: pkg-config
==> Downloading https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.1.tar.gz
Already downloaded: /home/cit/.cache/Homebrew/pkg-config-0.29.1.tar.gz
==> ./configure --prefix=/home/cit/.linuxbrew/Cellar/pkg-config/0.29.1_2 --disable-host-tool --with-internal-glib --with-pc-path=/home/cit/.linuxbrew/lib/pkgconfig:/home/cit/.linuxbrew/share/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/pkgconfig:/home/cit/.linuxbrew/Librar
==> make
==> make check
Last 15 lines from /home/cit/.cache/Homebrew/Logs/pkg-config/03.make:
/bin/bash: ./check-relocatable: No such file or directory
FAIL: check-relocatable
/bin/bash: ./check-variable-override: No such file or directory
FAIL: check-variable-override
/bin/bash: ./check-variables: No such file or directory
FAIL: check-variables
==============================================================================
12 of 28 tests failed
Please report to https://bugs.freedesktop.org/enter_bug.cgi?product=pkg-config
==============================================================================
make[2]: *** [check-TESTS] Error 1
make[2]: Leaving directory `/tmp/pkg-config-20170313-22812-1xubr2f/pkg-config-0.29.1/check'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory `/tmp/pkg-config-20170313-22812-1xubr2f/pkg-config-0.29.1/check'
make: *** [check-recursive] Error 1

READ THIS: https://github.com/Linuxbrew/brew/blob/master/docs/Troubleshooting.md#troubleshooting

@jszakmeister
Copy link
Contributor

checking for the suffix of module shared libraries... ./configure: line 24685: ./libtool: Permission denied.
configure: error: Cannot determine shared library suffix from libtool
configure: error: ./configure failed for glib

This is not a neovim error, but something else wrong with either Linuxbrew, your system, Homebrew, or the pkg-config recipe.

@trusktr
Copy link
Author

trusktr commented Mar 13, 2017

@jszakmeister If this were you having these problems, what would you do?

@jszakmeister
Copy link
Contributor

@trusktr I'd start with reporting it to the Linuxbrew team. They may say it's a Homebrew recipe issue and ask that you file an issue upstream. But seeing as Linuxbrew is trying to piggyback off of Homebrew's work, I'd start there. I like Linuxbrew, but it wouldn't be the first time they broke something in the environment accidentally. :-(

@jszakmeister
Copy link
Contributor

...or I'd start by debugging the pkg-config recipe. But you should really know how to build stuff and be comfortable with automake, autoconf, etc. if you're going to head down that path.

@trusktr
Copy link
Author

trusktr commented Mar 13, 2017

Alright, thanks! I'll see what I can find out. I really don't want to have to get familiar with automake, autoconf, etc.

@jszakmeister
Copy link
Contributor

Good luck! Debugging this stuff can sometimes be painful (speaking from experience). But it's worth it in that it generally helps many others in the process. :-)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants