HTK compile error: make[1]: Nothing to be done for 'all'

非 Y 不嫁゛ 提交于 2019-12-13 03:26:57

问题


Following the official HTK Unix/Linux installation guide, I had similar issues to the ones described in this thread when trying to run make all on HTK. I had initially been looking at the wrong Makefile (/htk-3.4.1/Makefile), as suggested by MadScientist. After fixing the extra indentation on line 77 in the correct Makefile (/htk-3.4.1/HLMTools/Makefile) generated by running ./configure --prefix=/tmp, the HTK compile error:

Makefile:77: *** missing separator (did you mean TAB instead of 8 spaces?). Stop.

has disappeared, but I am still unable to compile on make all:

$ make all
(cd HTKTools && make all) \
  || case "" in *k*) fail=yes;; *) exit 1;; esac;
make[1]: Entering directory '/home/zeesy/htk-3.4.1/HTKTools'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/zeesy/htk-3.4.1/HTKTools'
(cd HLMTools && make all) \
  || case "" in *k*) fail=yes;; *) exit 1;; esac;
make[1]: Entering directory '/home/zeesy/htk-3.4.1/HLMTools'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/home/zeesy/htk-3.4.1/HLMTools'

Prior to make all, running ./configure --prefix=/tmp results in the error:

config.status: WARNING:  HLMTools/Makefile.in seems to ignore the --datarootdir setting

for HTKLib, HLMLib, HTKTools and HLMTools. It also resets line 77 of the Makefile to quadruple indented tabs.

I have gcc-multilib installed. Based on this post, I installed libc6:i386 zlib1g:i386 lib32ncurses5 and lib32z1 in order to run this 32bit program on a 64bit computer.

Has anyone run into this problem? Step 4 of the VoxForge HTK install guide suggests that gcc 3.4 compiler compatibility modules are required.


回答1:


As suggested by MadScientist, I was at first looking at the wrong Makefile. I had been looking at /htk-3.1.4/Makefile, when the file that needed to be edited was /htk-3.1.4/HLMTools/Makefile. A case of not reading the error messages thoroughly.

After getting the same error message for line 77

missing separator (did you mean TAB instead of 8 spaces?).

I ran Spaces to Tabs in Atom, and corrected the quadruple tab in the default Makefile.

The make all command initially ran successfully, but as I was unable to access ls /tmp/bin.linux I attempted make all again and received the second error message

make[1]: Nothing to be done for 'all'

The fix for this was to run make clean (see this post). However, Nikolay Shmyrev has pointed out that this error means that everything has compiled, there for there is 'nothing to be done'.

I'm now having problems accessing /tmp/bin.linux but will deal with that elsewhere.

SUMMARY: The make[1]: Nothing to be done for 'all' error means that everything has already compiled.



来源:https://stackoverflow.com/questions/57597548/htk-compile-error-make1-nothing-to-be-done-for-all

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!