I'm trying to make a trivial shell script (as portable as possible) to build an executable and then run it. Basically something like this:
----------------------------- #!/bin/sh # Assume that foo is a natively-compiled program, # not a script or anything, and gets placed in './bin' make foo ./bin/foo ----------------------------- But, when I try to run that, it complains that './bin/foo' doesn't exist and exits *before* it ever actually invokes 'make foo' (just an example) which is exactly what *creates* './bin/foo' in the first place. Can anyone provide any insight/perspective/background-info to this apparent "validate all commands in the script against the filesystem before actually running the script" behavior? I apologize for bringing something so enormously off-topic here, but the closest thing I'm getting to an intelligent answer over at the Ubuntu Forums is "It's 'make', not 'make foo', and if that doesn't work, what are you trying to build?" I'm a bit fearful for my sanity at the thought of bringing the same question to yet other forum that I don't already know for certain to be populated with people who actually know what they're talking about. So I just came straight here with it instead. I *know* that people here are intelligent.
