【发布时间】:2016-02-14 00:33:49
【问题描述】:
我正在尝试在 CentOS 6.x 上安装 ejabberd,当我运行“make”命令时,它会出现以下错误。
ejabberd]# make
rm -rf deps/.got
rm -rf deps/.built
/usr/lib/erlang/bin/escript rebar get-deps && :> deps/.got
==> goldrush (get-deps)
==> lager (get-deps)
==> p1_utils (get-deps)
==> p1_cache_tab (get-deps)
==> p1_tls (get-deps)
==> p1_stringprep (get-deps)
==> p1_xml (get-deps)
==> p1_stun (get-deps)
==> esip (get-deps)
==> p1_yaml (get-deps)
==> jiffy (get-deps)
==> oauth2 (get-deps)
==> xmlrpc (get-deps)
==> p1_zlib (get-deps)
==> p1_iconv (get-deps)
==> rel (get-deps)
==> ejabberd (get-deps)
checking for gcc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... configure: error: in `/root/ejabberd/deps/p1_tls':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details
ERROR: Command ['get-deps'] failed!
make: *** [deps/.got] Error 1
你能帮我解决这个问题吗?我已经安装了 Erlang-17.5 和所有必需的“开发工具”。谢谢。
【问题讨论】:
-
上面写着
See config.log for more details,config.log 没有显示任何有用的信息吗?您可以尝试yum groupinstall "Development Tools" -y以确保您拥有所有正确的软件包,然后再试一次。虽然不是以 root 身份运行“make”(构建不需要或具有 root 访问权限),然后您可以以 root 身份运行“make install”。 -
我的猜测是您没有安装真正的 C 编译器,而只是安装了一些无法编译真正程序的默认值。安装 gcc,然后重新配置。
-
@Michael - 你想看看我的 config.log 文件吗?。我安装了你提到的所有“开发工具”,但它对我没有用。
-
@Steve - 我安装了 gcc。但我怎样才能确定它是真的还是假的呢?
-
尝试重新运行配置。如果它说“检查 gcc”,它应该报告找到 gcc 而不是 cc。
标签: linux gcc centos erlang ejabberd