I tried to install a decompiler on my macbook, but the terminal returned errors below.

ouekihodos-MacBook-Pro:radare2 LewisWang$ gmake
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C libr/util
../config.mk:29: /Users/LewisWang/Desktop/Computer: No such file or directory
../config.mk:29: Programming/Hack/radare2/libr/../global.mk: No such file or directory
../config.mk:30: /Users/LewisWang/Desktop/Computer: No such file or directory
../config.mk:30: Programming/Hack/radare2/libr/../mk/.mk: No such file or directory
make[1]: *** No rule to make target `Programming/Hack/radare2/libr/../mk/.mk'.  Stop.
make: *** [all] Error 2
  • 1
    The output looks like word splitting has occurred. Try installing it in a path that contains no spaces/special chars. – user000001 Sep 10 '14 at 17:39
  • @user000001 you should post that as an answer. – derobert Sep 10 '14 at 17:59
  • @derobert It was more of a guess than a definite answer, but I added one since you asked for it. – user000001 Sep 10 '14 at 18:10
  • I've tried and it works well! – Yicheng Wang Sep 10 '14 at 22:32
  • but how to post this as an answer? – Yicheng Wang Sep 10 '14 at 22:33

Looking at the error message the output looks suspicious: You have /Users/LewisWang/Desktop/Computer and the next error Programming/Hack/radare2/libr/../global.mk. It looks like the actual path is

/Users/LewisWang/Desktop/Computer Programming/Hack/radare2/libr/../global.mk

And that the make scripts fails to parse it correctly. A common reason for word splitting to happen is if somebody forgot to quote a shell variable, like writing

touch $file

... instead of

touch "$file"

If you try to install it in a path that contains no spaces, I suspect that the error messages (if any) will be different.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.