2014-10-27 74 views
0

我从make -j 8得到libfoo.so: file not recognized: File truncated错误。 当我删除该文件,并重新作出,一切正常:“libvw.so:file not recognized:File truncated”and“make -j 8”

$ make clean 
$ make -j 8 
... 
libvw.so: file not recognized: File truncated 
make: *** [all] Error 2 
$ mv libvw.so libvw.so- 
$ make -j 8 
success 
$ cmp libvw.so libvw.so- 

libvw.so的罚款。

-j 8它工作的时候了:

$ make clean 
$ make 
success 

所以,我怎么使用-j 8与共享库?

(这个项目使用GNU Make,所以GNU特定的解决方案很好)。

回答

1

很可能你错过了你的一个makefile规则中的依赖项,并且发生错误是因为libw.so在可执行文件尝试链接到它时仍在构建。

但是请注意,有一些版本的并行错误与依赖关系存在错误。确保你使用的是发行版来修补这种东西。