-
-
Notifications
You must be signed in to change notification settings - Fork 905
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Nokogiri install fails because of missing lzma symbols in self built libxml2 #1119
Comments
Can you please provide information on the Linux distro you're using and the version of Nokogiri you're trying to install? Also the command line or method you are using to install the gem. |
Sorry, my bad. This is OS X 10.9.3 (13D65) with nokogiri-1.6.2.1 installed via Do you need any more information? |
I'm seeing this same thing on OS X 10.7.5, installing nokogiri-1.6.2.1 via Any ideas on how to fix this? |
Has this issue been resolved because I'm similar issue on Ubuntu 14.04 when deploying with Capistrano 3.2.1.? Here's a gist of mkmf.log: |
I did end up getting this installed and apparently working with
But, since I have libxml-2.9.1 installed system wide and the nokogiri specifically states in its installation message that it has included its own libxml-2.8.x because libxml-2.9.x is broken, this seems suboptimal. I'm going to go with linking against system libraries but I don't know how I'll know if this is going to bite me later. |
try fixing your homebrew installation of xz:
if it still doesn't work try |
Reinstalling didn't work, but removing xz did the trick and allowed to install nokogiri without any flags. Thanks! To phrase this problem as a question: Is it a bug in libxml or in the way it's config script is called that it can pick up some references to libxz just because it's on the system? If there are configure flags for libxml2 that prevent it from looking for libxz, would the nokogiri project want them for the packaged libxml2 package? |
I'd say this is a homebrew bug. Since libzma exists in /usr/lib/liblzma.5.dylib it is part of the Xcode base install on a Mac. When you install xz you get /usr/local/lib/liblzma.5.dylib and /usr/local/include/lzma.h installed. In contrast when you install libiconv (on an up-to-date homebrew) you get the library and the header files hidden away:
In that location those files are available for other homebrew programs to compile and link against but they don't conflict with the system iconv. When you try to link libiconv into
now we have the have the files in /usr/local:
and now I broke building nokogiri by brew linking libiconv:
I have to 'brew unlink libiconv' to fix gem installs, which displays precisely the issue that 'brew link libiconv' was yelling at me about. Something similar is likely going on with the liblzma that is packaged in xz. |
@zenspider Anything in here that we should add to the OSX installation tutorial? |
The following worked for me being that Nokogiri 1.6.5 is a dependency for Rails 4.2.0 installation:
|
@flavorjones yeah. In my experiences helping people get their systems back up and running, removing libiconv from homebrew was sometimes the trick. You might want to add that to the osx/iconv section. I'd push heavily towards plain |
I believe #1218 getting merged into master addresses this. Will be in 1.6.7 when it's cut. If you still have this problem on master, please comment and I'll re-open. |
this worked for me:
|
Here's the errors I'm getting:
My c is a bit rusty, but I think this means that when nokogiri builds it's own libxml2 it is missing a dependency.
So what to do? If that is the case, another release is probably necessary.
The text was updated successfully, but these errors were encountered: