一个奇怪的软件编译错误
文件存放目录为系统为集群上挂在的nfs4存储。
情形一
安装ruby-3.4.1,进行make时报错
make[2]: Entering directory '/path/to/01.bin/ruby/ruby-3.4.1/ext/-test-/cxxanyargs'
make[2]: *** No rule to make target 'all'. Stop.
make[2]: Leaving directory '/path/to/01.bin/ruby/ruby-3.4.1/ext/-test-/cxxanyargs'
exts.mk:139: recipe for target 'ext/-test-/cxxanyargs/all' failed
make[1]: *** [ext/-test-/cxxanyargs/all] Error 2
进入发生错误的目录(ext/-test-/cxxanyargs),命令`ls`第一次没有显示Makefile以及某个头文件。但第二次执行命令`ls`后Makefile等文件出现了。然后可以继续make ......
情形二
在另一个集群编译安装软件,频繁出现的一个问题是,configure 后出现不存在的,名为idle的文件,从而阻止编译过程。在该目录下通过rsync 复制另一个不相关的文件,如
rsync -avzP Makefile aaaaaaaaaaaaaaa
会发现文件idle消失了。然后可以继续make ......