This repository has been archived by the owner. It is now read-only.

libssl is not in linker path on mountain lion #15283

Closed
avalanche123 opened this Issue Oct 3, 2012 · 51 comments

Comments

Projects
None yet
9 participants
Contributor

avalanche123 commented Oct 3, 2012

Output from system clang:

$ /usr/bin/clang -Wl,-t -lssl 2>/dev/null 
/usr/lib/libSystem.dylib
/usr/lib/libssl.dylib
/usr/lib/system/libcache.dylib
/usr/lib/system/libcommonCrypto.dylib
/usr/lib/system/libcompiler_rt.dylib
/usr/lib/system/libcopyfile.dylib
/usr/lib/system/libdispatch.dylib
/usr/lib/system/libdnsinfo.dylib
/usr/lib/system/libdyld.dylib
/usr/lib/system/libkeymgr.dylib
/usr/lib/system/liblaunch.dylib
/usr/lib/system/libmacho.dylib
/usr/lib/system/libquarantine.dylib
/usr/lib/system/libremovefile.dylib
/usr/lib/system/libsystem_blocks.dylib
/usr/lib/system/libsystem_c.dylib
/usr/lib/system/libsystem_dnssd.dylib
/usr/lib/system/libsystem_info.dylib
/usr/lib/system/libsystem_kernel.dylib
/usr/lib/system/libsystem_m.dylib
/usr/lib/system/libsystem_network.dylib
/usr/lib/system/libsystem_notify.dylib
/usr/lib/system/libsystem_sandbox.dylib
/usr/lib/system/libunc.dylib
/usr/lib/system/libunwind.dylib
/usr/lib/system/libxpc.dylib

Output from brew clang:

$ eval $(brew --env) && clang -Wl,-t -lssl 2>/dev/null 
/usr/lib/libSystem.dylib
/usr/lib/system/libcache.dylib
/usr/lib/system/libcommonCrypto.dylib
/usr/lib/system/libcompiler_rt.dylib
/usr/lib/system/libcopyfile.dylib
/usr/lib/system/libdispatch.dylib
/usr/lib/system/libdnsinfo.dylib
/usr/lib/system/libdyld.dylib
/usr/lib/system/libkeymgr.dylib
/usr/lib/system/liblaunch.dylib
/usr/lib/system/libmacho.dylib
/usr/lib/system/libquarantine.dylib
/usr/lib/system/libremovefile.dylib
/usr/lib/system/libsystem_blocks.dylib
/usr/lib/system/libsystem_c.dylib
/usr/lib/system/libsystem_dnssd.dylib
/usr/lib/system/libsystem_info.dylib
/usr/lib/system/libsystem_kernel.dylib
/usr/lib/system/libsystem_m.dylib
/usr/lib/system/libsystem_network.dylib
/usr/lib/system/libsystem_notify.dylib
/usr/lib/system/libsystem_sandbox.dylib
/usr/lib/system/libunc.dylib
/usr/lib/system/libunwind.dylib
/usr/lib/system/libxpc.dylib

as you can see /usr/lib/libssl.dylib, (third line of system clang output) is missing from homebrew clang.

$ brew --config
HOMEBREW_VERSION: 0.9.3
HEAD: a2ea7da6031bb60a8ab5d95b79d57ecec50ca2fc
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: 8-core 64-bit ivybridge
OS X: 10.8.2-x86_64
Xcode: 4.5.1
CLT: 4.5.0.0.1.1249367152
GCC-4.2: build 5666
LLVM-GCC: build 2336
Clang: 4.1 build 421
X11: N/A
System Ruby: 1.8.7-358
Perl: /usr/bin/perl
Python: /usr/bin/python
Ruby: /Users/bulatshakirzyanov/.rbenv/shims/ruby
$ brew doctor
Error: Homebrew doesn't know what compiler versions ship with your version of
Xcode. Please file an issue with the output of `brew --config`:
  https://github.com/mxcl/homebrew/issues

Thanks!
Your system is raring to brew.
Contributor

avalanche123 commented Oct 3, 2012

found a similar issue, closing this

Contributor

avalanche123 commented Oct 4, 2012

reopening, I manually fixed compiler by adding same versions to StandardCompilers hash, the issue is still present it is described by the first two outputs that I provided in description

@avalanche123 avalanche123 reopened this Oct 4, 2012

Contributor

adamv commented Oct 4, 2012

You'll need to gist your actual brew install error. We don't even know what you're trying to compile here.

Contributor

avalanche123 commented Oct 4, 2012

ah, sure

$ brew upgrade git
==> Upgrading git
==> Downloading http://git-core.googlecode.com/files/git-1.7.12.2.tar.gz
Already downloaded: /Library/Caches/Homebrew/git-1.7.12.2.tar.gz
==> make prefix=/usr/local/Cellar/git/1.7.12.2 CC=cc CFLAGS= LDFLAGS= install
      _ssl_socket_connect in imap-send.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [git-imap-send] Error 1
make: *** Waiting for unfinished jobs....

Error: git did not build
Logs: /Users/bulatshakirzyanov/Library/Logs/Homebrew/git/
Help: https://github.com/mxcl/homebrew/wiki/troubleshooting
      https://github.com/mxcl/homebrew/issues/11481
      https://github.com/mxcl/homebrew/issues/14423
      https://github.com/mxcl/homebrew/issues/14585
Contributor

avalanche123 commented Oct 4, 2012

I have tracked down the issue to /usr/local/Library/ENV/4.3/cc

Contributor

avalanche123 commented Oct 4, 2012

looks like I didn't create a dedicated gist, sorry. Here it is - https://gist.github.com/5bbb6ae9a7f7f3753223

Contributor

avalanche123 commented Oct 4, 2012

after some more poking around here is the command that brew runs behind the scenes:

$ clang -Wl,-t -lssl --sysroot= -isystem/usr/local/include -isystem/usr/include/libxml2 -isystem/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers/ -L/usr/local/lib -L/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries 2>/dev/null 
/usr/lib/libSystem.dylib
/usr/lib/system/libcache.dylib
/usr/lib/system/libcommonCrypto.dylib
/usr/lib/system/libcompiler_rt.dylib
/usr/lib/system/libcopyfile.dylib
/usr/lib/system/libdispatch.dylib
/usr/lib/system/libdnsinfo.dylib
/usr/lib/system/libdyld.dylib
/usr/lib/system/libkeymgr.dylib
/usr/lib/system/liblaunch.dylib
/usr/lib/system/libmacho.dylib
/usr/lib/system/libquarantine.dylib
/usr/lib/system/libremovefile.dylib
/usr/lib/system/libsystem_blocks.dylib
/usr/lib/system/libsystem_c.dylib
/usr/lib/system/libsystem_dnssd.dylib
/usr/lib/system/libsystem_info.dylib
/usr/lib/system/libsystem_kernel.dylib
/usr/lib/system/libsystem_m.dylib
/usr/lib/system/libsystem_network.dylib
/usr/lib/system/libsystem_notify.dylib
/usr/lib/system/libsystem_sandbox.dylib
/usr/lib/system/libunc.dylib
/usr/lib/system/libunwind.dylib
/usr/lib/system/libxpc.dylib

getting rid of -L/usr/local/lib gives me expected output:

$ clang -Wl,-t -lssl --sysroot= -isystem/usr/local/include -isystem/usr/include/libxml2 -isystem/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers/ -L/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries 2>/dev/null 
/usr/lib/libssl.dylib
/usr/lib/libSystem.dylib
/usr/lib/system/libcache.dylib
/usr/lib/system/libcommonCrypto.dylib
/usr/lib/system/libcompiler_rt.dylib
/usr/lib/system/libcopyfile.dylib
/usr/lib/system/libdispatch.dylib
/usr/lib/system/libdnsinfo.dylib
/usr/lib/system/libdyld.dylib
/usr/lib/system/libkeymgr.dylib
/usr/lib/system/liblaunch.dylib
/usr/lib/system/libmacho.dylib
/usr/lib/system/libquarantine.dylib
/usr/lib/system/libremovefile.dylib
/usr/lib/system/libsystem_blocks.dylib
/usr/lib/system/libsystem_c.dylib
/usr/lib/system/libsystem_dnssd.dylib
/usr/lib/system/libsystem_info.dylib
/usr/lib/system/libsystem_kernel.dylib
/usr/lib/system/libsystem_m.dylib
/usr/lib/system/libsystem_network.dylib
/usr/lib/system/libsystem_notify.dylib
/usr/lib/system/libsystem_sandbox.dylib
/usr/lib/system/libunc.dylib
/usr/lib/system/libunwind.dylib
/usr/lib/system/libxpc.dylib

Not sure why it is there in the first place

Contributor

avalanche123 commented Oct 4, 2012

here is what I did temporarily to make git install

--- a/usr/local/Library/ENV/4.3/cc
+++ b/usr/local/Library/ENV/4.3/cc
@@ -163,7 +163,7 @@ class Cmd
     [sys, opt]
   end
   def libpath
-    ENV['CMAKE_PREFIX_PATH'].split(':').map{|d| "#{d}/lib" } +
+    # ENV['CMAKE_PREFIX_PATH'].split(':').map{|d| "#{d}/lib" } +
     ENV['CMAKE_LIBRARY_PATH'].split(':') -
     syslibpath
   end
Contributor

grzn commented Oct 8, 2012

I got the same error, but did another workaround.

First, I got a clue from #14039, so I did:

brew unlink nss

Then, I got the following error:

==> make prefix=/usr/local/Cellar/git/1.7.12.2 CC=cc CFLAGS= LDFLAGS= install
/usr/bin/make -C git_remote_helpers  PYTHON_PATH='/usr/bin/python' prefix='/usr/local/Cellar/git/1.7.12.2' all
/usr/bin/python setup.py  build
make[1]: /usr/bin/python: No such file or directory

So, I created the symbolic link:

sudo ln -s /usr/local/bin/python /usr/bin/python

and then git was built successfully.

Contributor

adamv commented Oct 8, 2012

I'm very sorry to hear that your /usr/bin/python link went missing; this is a system symlink and replacing it with a link to /usr/local/bin/python will likely cause weird things to happen.

Contributor

avalanche123 commented Oct 8, 2012

this won't help in my case, the problem are missing symbols during build, because libssl is not included:

Undefined symbols for architecture x86_64:
  "_SSL_CTX_new", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_CTX_set_default_verify_paths", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_CTX_set_verify", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_connect", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_free", referenced from:
      _imap_close_store in imap-send.o
  "_SSL_get_error", referenced from:
      _socket_perror in imap-send.o
  "_SSL_library_init", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_load_error_strings", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_new", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_read", referenced from:
      _buffer_gets in imap-send.o
  "_SSL_set_rfd", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_set_wfd", referenced from:
      _ssl_socket_connect in imap-send.o
  "_SSL_shutdown", referenced from:
      _imap_close_store in imap-send.o
  "_SSL_write", referenced from:
      _socket_write in imap-send.o
  "_SSLv23_method", referenced from:
      _ssl_socket_connect in imap-send.o
  "_TLSv1_method", referenced from:
      _ssl_socket_connect in imap-send.o
ld: symbol(s) not found for architecture x86_64
Contributor

grzn commented Oct 8, 2012

I probably did that a few months ago when I re-install my mac, but I wasn't sure so I noted it as well.

Contributor

grzn commented Oct 8, 2012

@avalanche123, I don't have ssl libraries (after unlinking nss, and git built successfully):

-> % brew unlink nss               
Unlinking /usr/local/Cellar/nss/3.12.10... 89 links removed
-> % ls -l /usr/local/lib/*ssl*
zsh: no matches found: /usr/local/lib/*ssl*
-> % brew link nss             
Linking /usr/local/Cellar/nss/3.12.10... 89 symlinks created
-> % ls -l /usr/local/lib/*ssl*
lrwxr-xr-x  1 guy  admin  34 Oct  8 21:56 /usr/local/lib/libssl.a -> ../Cellar/nss/3.12.10/lib/libssl.a
lrwxr-xr-x  1 guy  admin  39 Oct  8 21:56 /usr/local/lib/libssl3.dylib -> ../Cellar/nss/3.12.10/lib/libssl3.dylib
Contributor

avalanche123 commented Oct 8, 2012

@grzn can you paste output of eval $(brew --env) && clang -Wl,-t -lssl 2>/dev/null?

Contributor

grzn commented Oct 9, 2012

-> % brew --env
CC: cc
CXX: c++
MAKEFLAGS: -j2
CMAKE_PREFIX_PATH: /usr/local
CMAKE_INCLUDE_PATH: /usr/include/libxml2:/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers/
CMAKE_LIBRARY_PATH: /System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries
PKG_CONFIG_PATH: /usr/local/lib/pkgconfig:/usr/local/Library/Homebrew/pkgconfig
ACLOCAL_PATH: /usr/local/share/aclocal
PATH: /usr/local/Library/ENV/4.3:/usr/bin:/bin:/usr/sbin:/sbin

Contributor

grzn commented Oct 9, 2012

clang -Wl,-t -lssl 2>/dev/null
/usr/lib/libssl.dylib
/usr/lib/libSystem.dylib
/usr/lib/system/libcache.dylib
/usr/lib/system/libcommonCrypto.dylib
/usr/lib/system/libcompiler_rt.dylib
/usr/lib/system/libcopyfile.dylib
/usr/lib/system/libdispatch.dylib
/usr/lib/system/libdnsinfo.dylib
/usr/lib/system/libdyld.dylib
/usr/lib/system/libkeymgr.dylib
/usr/lib/system/liblaunch.dylib
/usr/lib/system/libmacho.dylib
/usr/lib/system/libquarantine.dylib
/usr/lib/system/libremovefile.dylib
/usr/lib/system/libsystem_blocks.dylib
/usr/lib/system/libsystem_c.dylib
/usr/lib/system/libsystem_dnssd.dylib
/usr/lib/system/libsystem_info.dylib
/usr/lib/system/libsystem_kernel.dylib
/usr/lib/system/libsystem_m.dylib
/usr/lib/system/libsystem_network.dylib
/usr/lib/system/libsystem_notify.dylib
/usr/lib/system/libsystem_sandbox.dylib
/usr/lib/system/libunc.dylib
/usr/lib/system/libunwind.dylib
/usr/lib/system/libxpc.dylib

Contributor

avalanche123 commented Oct 9, 2012

Thanks for this, as you can see from the second line of your output, you do have libssl showing up. Which I on the other hand don't, so your git compilation problem is unrelated to the issue being reported here, thanks for your genuine attempt to help!

Contributor

2bits commented Oct 18, 2012

@avalanche123 Any progress here? I realize that it can be frustrating, but I believe this is solvable. The first indication of likely problems is the error message:

Error: Homebrew doesn't know what compiler versions ship with your version of
Xcode. Please file an issue with the output of brew --config:
https://github.com/mxcl/homebrew/issues

When we look at your brew --config we see that your XCode 4.5.1 and CLT 4.5.0.0.1.1249367152 match the normal versions we all use, but then we see an extra entry: GCC-4.2: build 5666

In the past, I've seen that cause problems because gcc is not a part of XCode these days, and brew doctor is complaining. Something has a mismatch or leftover cruft. Then again it could be your choice to have gcc still existing. Do you still have a /Developer? What do you get for which gcc and which gcc-4.2? I realize this you are posting about clang, but for all I know libssl comes with the CLT.

Contributor

avalanche123 commented Oct 18, 2012

Hey, thanks for poking this. I'm using a MBP retina display, so the xcode is brand new and has never been upgraded, this is what I suspect as being the primary cause of the issue. Here are the output in order.

$ ls -la /Developer
total 0
drwxrwxr-x   3 root  admin   102 Oct  1 11:52 .
drwxr-xr-x  37 root  wheel  1326 Oct 17 10:32 ..
drwxrwxr-x   3 root  admin   102 Mar 22  2012 Applications
$ which gcc
/usr/bin/gcc
$ which gcc-4.2
/usr/local/bin/gcc-4.2

libssl is on the system, under /usr/lib/libssl.dylib - pretty much standard location for osx these days., However, like I said, having -L/usr/local/lib in the clang arguments causes it to not be listed. mxcl#15283 (comment) worked for me

Contributor

2bits commented Oct 18, 2012

It's odd to have a 2012 MBP with /Developer/Applications Do you remember installing something there? What's in that directory? What do you get for ls -l /usr/local/bin/gcc-4.2

I can't recreate your missing path to libssl on 10.8.2. So we have to keep trying. You might have to remove that gcc-4.2 you installed.

Contributor

avalanche123 commented Oct 18, 2012

Hey, thanks for the help!

/Developer/Applications contains Application Loader.app which comes with iphone sdk

 ls -l /usr/local/bin/gcc-4.2
lrwxr-xr-x  1 bulatshakirzyanov  admin  46 Sep 26 21:00 /usr/local/bin/gcc-4.2 -> ../Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2
Contributor

avalanche123 commented Oct 18, 2012

$ ls -la /Developer/Applications/Utilities/
total 0
drwxrwxr-x  3 root  admin  102 Mar 22  2012 .
drwxrwxr-x  3 root  admin  102 Mar 22  2012 ..
drwxrwxr-x  3 root  admin  102 Feb 29  2012 Application Loader.app
Contributor

2bits commented Oct 18, 2012

after some more poking around here is the command that brew runs behind the scenes:

$ clang -Wl,-t -lssl --sysroot= -isystem/usr/local/include -isystem/usr/include/libxml2 -isystem/System/Library/Frameworks/OpenGL.framework/Versions/Current/Headers/ -L/usr/local/lib -L/System/Library/Frameworks/OpenGL.framework/Versions/Current/Libraries 2>/dev/null

How did you figure that out so I can check it against mine? When I eval my brew --env and run that I still get libssl.dylib in the output.

The problem is probably not the presence of /Developer nor your gcc-4.2 install nor rbenv (but you should unlink all of those and try again to minimize variables)

So what do we have left? Superenv seems to make /usr/lib/libssl.dylib vanish from your list of libraries getting linked but not on my system.

What do you get for

eval $(brew --env)
clang -Wl,-t -lssl 2>/dev/null | grep ssl
clang -t -lssl 2>/dev/null | grep ssl
llvm-gcc -Wl,-t -lssl 2>/dev/null | grep ssl
llvm-gcc -t -lssl 2>/dev/null | grep ssl
ld -t -lssl 2>/dev/null | grep ssl
xcrun ld -t -lssl 2>/dev/null | grep ssl
ls -l /usr/lib/libssl*.dylib
env
Contributor

avalanche123 commented Oct 18, 2012

To find out which underlying command brew uses, I opened up /usr/local/Library/ENV/4.3/cc and added p cmd.args on line 200.

The only commands that produced output are below.

$ xcrun ld -t -lssl 2>/dev/null | grep ssl
/usr/lib/libssl.dylib
ip-10-21-27-187:di bulatshakirzyanov$ ls -l /usr/lib/libssl*.dylib
-rwxr-xr-x  1 root  wheel  411680 Jul 21 19:18 /usr/lib/libssl.0.9.7.dylib
-rwxr-xr-x  1 root  wheel  602704 Jul 21 19:18 /usr/lib/libssl.0.9.8.dylib
lrwxr-xr-x  1 root  wheel      18 Jul 21 19:19 /usr/lib/libssl.dylib -> libssl.0.9.8.dylib
Contributor

2bits commented Oct 19, 2012

Wow ld and xcrun ld behave differently. I think that means that your iphone sdk installed it's own ld over the ususal xcode system one. Let's see with

$ find /Applications/Xcode.app -type f -name ld -exec ls -l '{}' \;
-rwxr-xr-x  1 root  wheel  2872576 Sep 19 23:57 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ld
-rwxr-xr-x  1 root  wheel  1458208 Sep 19 23:57 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
-rwxr-xr-x  1 root  wheel  1458208 Sep 19 23:57 /Applications/Xcode.app/Contents/Developer/usr/bin/ld

iBlub:local nibbles$ ls -l /usr/bin/ld
-rwxr-xr-x  1 root  wheel  1458208 Oct  5 21:17 /usr/bin/ld

(Btw your ls -l libssl* is identical to mine in links and file size. So that's good news.)

Contributor

avalanche123 commented Oct 22, 2012

$ find /Applications/Xcode.app -type f -name ld -exec ls -l '{}' \;
-rwxr-xr-x  1 root  wheel  2872576 Oct  3 16:34 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ld
-rwxr-xr-x  1 root  wheel  1458208 Oct  3 16:35 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
-rwxr-xr-x  1 root  wheel  1458208 Oct  3 16:35 /Applications/Xcode.app/Contents/Developer/usr/bin/ld
$ ls -l /usr/bin/ld
-rwxr-xr-x  1 root  wheel  1458208 Sep 26 14:04 /usr/bin/ld
Contributor

2bits commented Oct 22, 2012

Well that's not it. I'm still not sure what is changing your search paths. You mentioned that removing -L/usr/local/lib fixed the problem, causing libssl to reappear in your clang -Wl,-t -lssl output? That seems like a hint. Why don't you

sudo mv /usr/local /usr/loc
sudo mkdir /usr/local
sudo chown $USER:admin /usr/local
chmod 775 /usr/local
cd /usr/local
<install Homebrew>
brew update
brew doctor
clang -Wl,-t -lssl 2>/dev/null

@adamv adamv referenced this issue Oct 26, 2012

Closed

opusfile 0.1 #15656

Contributor

rillian commented Oct 27, 2012

Thanks adamv. I have exactly this problem.

$ eval $(brew --env)
$ xcrun ld -t -lssl 2>/dev/null | grep ssl
/usr/lib/libssl.dylib
$ xcrunld -t -lssl 2>/dev/null | grep ssl
[no output]

Contributor

2bits commented Oct 27, 2012

This is not a valid command: xcrunld

Contributor

rillian commented Oct 28, 2012

That was 'xcrun ld'.

@adamv adamv referenced this issue Oct 30, 2012

Closed

Thrift 0.9.0 #15502

Contributor

grzn commented Dec 13, 2012

This fixed it for me:

diff --git a/Library/Formula/git.rb b/Library/Formula/git.rb
index 3d1a512..ff32156 100644
--- a/Library/Formula/git.rb
+++ b/Library/Formula/git.rb
@@ -31,6 +31,8 @@ class Git < Formula
     ENV['NO_GETTEXT'] = '1'
     ENV['PERL_PATH'] = which 'perl' # workaround for users of perlbrew
     ENV['PYTHON_PATH'] = which 'python' # python can be brewed or unbrewed
+    ENV['LDFLAGS'] = "-L/usr/local/opt/openssl/lib"
+    ENV['CPPFLAGS'] = "-I/usr/local/opt/openssl/include"

     # Clean XCode 4.x installs don't include Perl MakeMaker
     ENV['NO_PERL_MAKEMAKER'] = '1' if MacOS.version >= :lion
@@ -46,6 +48,7 @@ class Git < Formula
                    "CC=#{ENV.cc}",
                    "CFLAGS=#{ENV.cflags}",
                    "LDFLAGS=#{ENV.ldflags}",
+                   "CPPFLAGS=#{ENV.cppflags}",
                    "install"

     # Install the OS X keychain credential helper
Contributor

adamv commented Jan 3, 2013

Maintainers, is this still an env/superenv problem? Or does git need to be hard-coded to fix this? Not seeing continual reports of this SSL issue anymore.

Contributor

rillian commented Jan 3, 2013

I still get this issue with git, httping and a number of other packages. It would be nice to have a decision on whether we can work around the system openssl or just depend on the homebrew version in packages.

Contributor

adamv commented Jan 8, 2013

Who here has nss installed?

There's a conflict (as mentioned above) #16875.

Contributor

rillian commented Jan 8, 2013

I do, but:

$ brew info nss
nss: stable 3.14.1
http://www.mozilla.org/projects/security/pki/nss/
Depends on: nspr
/usr/local/Cellar/nss/3.12.10 (184 files, 19M)
/usr/local/Cellar/nss/3.14 (195 files, 15M)
/usr/local/Cellar/nss/3.14.1 (196 files, 14M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/nss.rb
$ brew unlink openssl
Unlinking /usr/local/Cellar/openssl/1.0.1c... 0 links removed

Is there another set of links I should be looking for?

Contributor

adamv commented Jan 8, 2013

I see NSS installing: libssl.a

This may be causing conflicts some how.

Contributor

adamv commented Jan 8, 2013

Reproduced!

I don't have Homebrew's openssl installed.

I removed git.

I installed nss.

I installed git: failure!

NSS's libssl.a is griefing us.

Contributor

adamv commented Jan 8, 2013

$ brew uses nss shows nothing using this software in core.

@ghost ghost assigned adamv Jan 8, 2013

Contributor

adamv commented Jan 8, 2013

Owner

MikeMcQuaid commented Jan 8, 2013

Let's remove and/or keg-only NSS.

I vote just "keg-only"-ing it instead of completely removing it

Contributor

adamv commented Jan 9, 2013

What is NSS used for, by the way?

Contributor

adamv commented Jan 9, 2013

Please list the among other things, I want to see the use cases.

Contributor

adamv commented Jan 9, 2013

That is, someone can install nss outside of Homebrew if they really want to build Firefox from source.

The "among other things" is meant to be read as going with the link after the colon there. Also in MacPorts the following things depend on it:

Local-Admins-MacBook-Pro:~ ericgallager$ port dependents nss
epiphany depends on nss
evolution-data-server depends on nss
pidgin depends on nss
pidgin-encryption depends on nss
xmlsec depends on nss
Owner

MikeMcQuaid commented Jan 9, 2013

I think that makes a reasonable argument for removing it.

Contributor

adamv commented Jan 10, 2013

Some other maintainer please make this keg-only or remove it, as you see fit, thanks.

Contributor

mistydemeo commented Jan 10, 2013

Marked keg-only in b971263. If it's not otherwise broken I don't have a problem with keeping it (but someone else can remove it you feel strongly about it).

dholm added a commit to dholm/homebrew that referenced this issue Jan 14, 2013

benel commented May 20, 2015

What is NSS used for, by the way?

Building Firefox from source, among other things

It is also needed when you develop Firefox extensions.

@jacknagel jacknagel locked and limited conversation to collaborators May 20, 2015

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.