Project

General

Profile

Bug #3255

Trunk fail to build without explicit ./configure options (yaml.h not found)

Added by Eregon (Benoit Daloze) over 8 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
ruby -v:
ruby 1.9.2dev (2010-05-06 trunk 27635) [x86_64-darwin10.3.0]
[ruby-core:30070]

Description

=begin
Hi,

I tried many times today and yesterday to build Ruby on OSX and it get some errors when running 'make'.

Here is the interesting part of the 'make' output.
https://gist.github.com/e3ee480ffe1bc654e635

It complains about libyaml, which I do have installed via MacPorts.
It used to compile without any configuration (just autoconf).

Here is 4 lines of the output:
"yaml.h is missing. Please install libyaml.
ld: warning: directory '/opt/lib' following -L not found
ld: warning: directory '/usr/local/share/lib' following -L not found
ld: warning: directory '/usr/share/lib' following -L not found"

I did, tough, build without errors, but I had to add:
./configure --includedir /opt/local/include

It did build before without needing this 'hack'.

How the 'include' PATH is builded?
from $PATH replacing 'bin' by 'include' ?
Then it should find it.

Regards,
B.D.

PS: There are a lot of warnings, some seem not significant, but others not (in 64bit I speak). Would the Ruby core team be interested in removing some of these? I'd be happy to help, but I need some help to get started.

PS2: Weirdly, another guy on OSX did compile without any problem, but he does not have libyaml installed.
=end

History

#1 Updated by Eregon (Benoit Daloze) over 8 years ago

=begin
Hi,

I tried again today, and it works without configuration,

but I need to

make # fail with 'libyaml missing'
make clean
make # OK

Do anyone have an idea why I get these results?

Regards,
B.D.

PS: Probably the precedant message's cause can be replaced by this one.

=end

#2 Updated by Eregon (Benoit Daloze) over 8 years ago

=begin
Hi,
On 8 May 2010 19:51, Aaron Patterson aaron@tenderlovemaking.com wrote:

You're getting that result because ext/psych/extconf.rb doesn't know
where to find your installation of libyaml.  You need to provide
configure with the location of your libyaml installation.

For example, if you've installed libyaml via macports, you should build
like this:

   $ ./configure --with-libyaml-dir=/opt/local
   $ make

Hope that helps!

--
Aaron Patterson

Yes, thanks for the hint.
I searched a bit for which configure option is with libyaml, but
completing option did not work.

So this method, as the first one works.

But, it seems the problem is even bigger.

I'm currently using rvm, and so I did: "rvm install ruby-head -C
--with-libyaml-dir=/opt/local"

Which apparently works, seeing the first line of config.log:
$ ./configure --prefix=/Users/benoitdaloze/.rvm/rubies/ruby-head
--with-libyaml-dir=/opt/local

But I still get:
Error running 'make -j 3', please check
/Users/benoitdaloze/.rvm/log/ruby-head/make*.log

The make error log just complains about libyaml, and not finding miniruby.

So I went myself in the src (.rvm/src/ruby-head)

And using 'make' it works.
But using 'make -j 3' I get the error.
(before each 'make' command I did a 'make clean')

I don't know much about the syntax of make,
but as far as I know '-j 3' was just to specify the number of
threads/processes gcc can use.

So here is the output of 'make' and the one of 'make -j 3':
https://gist.github.com/c8034f83cc9afbf79e6b

Regards,
B.D.

=end

#3 Updated by mame (Yusuke Endoh) over 8 years ago

  • Status changed from Open to Closed

=begin
Hi,

But I still get:
Error running 'make -j 3', please check
/Users/benoitdaloze/.rvm/log/ruby-head/make*.log

This would be fixed at r27717.
If you still have a problem, please inform us.

I'm currently using rvm, and so I did: "rvm install ruby-head -C
--with-libyaml-dir=/opt/local"

When you report a bug, could you test it without rvm?
It is for excluding possible causes.

Thanks!

--
Yusuke Endoh mame@tsg.ne.jp
=end

Also available in: Atom PDF