安装 libyaml 后找不到 yaml.h

安装 libyaml 后找不到 yaml.h

我已经安装了 libyaml,但 Ruby 安装找不到 yaml.h。我没有 sudo 权限,因此一切都必须以普通用户身份完成。

wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
tar -xzf yaml-0.1.4.tar.gz
cd yaml-0.1.4
./configure --prefix=/users/$USER
make
make install

wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p484.tar.gz
tar -xzf ruby-1.9.3-p484.tar.gz
cd ruby-1.9.3-p484
./configure --prefix=/users/$USER
make

包含:

configuring psych
yaml.h is missing. Please install libyaml.
Failed to configure psych. It will not be installed.

yaml.h 确实存在于~/include/yaml.h如何指定包含~/include和路径?~/lib

注意:我安装的 libffi 也存在同样的问题。

操作系统和 shell:

$ cat /etc/redhat-release 
Red Hat Enterprise Linux WS release 4 (Nahant Update 9)
$ echo $shell
/bin/tcsh

答案1

尝试--with-opt-dir在编译 ruby​​ 时使用该选项。在这种情况下,由于您将 yaml 安装到了 中/users/$USER,因此您还会将其包含在 中--with-opt-dir

$ cd ruby-1.9.3-p484
$ ./configure --prefix=/users/$USER  --with-opt-dir=/users/$USER

如果你已将 yaml 安装在单独的目录中,如下所示:

$ cd yaml-0.1.4
$ ./configure --prefix=/users/$USER/yaml014

然后,您需要在编译 ruby​​ 时指定 yaml 目录:

$ ./configure --prefix=/users/$USER  --with-opt-dir=/users/$USER/yaml014

相关内容