编译 Ceph 的时候报错:No rule to make target `erasure-code/jerasure/jerasure/src/cauchy.c'

发布于 2021-11-25 11:59:09 字数 492 浏览 927 评论 4

好不容易前面的 ./configure 终于过了,不过需要 --without-libxfs

configure: error: xfs/xfs.h not found (--without-libxfs to disable)

通过 sudo apt-get install xfslibs-dev 解决了上述问题。

安装了很多很多的依赖包,然后来到了编译阶段

结果报了如下错误:

make[3]: *** No rule to make target `erasure-code/jerasure/jerasure/src/cauchy.c', needed by `erasure-code/jerasure/jerasure/src/libec_jerasure_generic_la-cauchy.lo'.  Stop.

操作系统:Ubuntu Server 14.04 Beta2,
软件版本:Ceph 0.72.2

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

梅窗月明清似水 2021-11-30 15:53:22

错误原因原来是这样的:

ceph 在github上,还有好多的submodules, 如:

src/erasure-code/jerasure/gf-complete

src/erasure-code/jerasure/jerasure

src/libs3

src/rocksdb

git clone https://github.com/ceph/ceph.git 是不会取这下submodule的代码的。

而上面编译ceph遇到的错误就是:编译过程中用到了erasure-code/jerasure/jerasure/src/cauchy.c,由于没有git submodule, 所以找不到这个文件而报错。

解决方法:

把submodule的代码也取下来

git submodule update --init --recursive

网名女生简单气质 2021-11-30 11:33:46

引用来自“红薯”的评论

终于知道问题所在了,这份代码是直接从 https://github.com/ceph/ceph.git 上克隆下来的最新版本有问题。如果从官网上直接下载压缩包的是没问题的。

裸钻 2021-11-30 08:26:52

没有,./configure 之前# CXXFLAGS=”-g” 了没。看来是 makefile 没生成对,分析一下./configure 的log吧

猫性小仙女 2021-11-30 03:07:38

@oscfox 你没有出现这个问题?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文