Excution causes No Match error - Unix

This is a discussion on Excution causes No Match error - Unix ; Hello, I shipped an executable to some users recently on both Linux and Solaris. After getting them to run the particular app they experiences the following: # ./myapp -param1 -param2 ../myapp: No match. What would be the reason that it ...

+ Reply to Thread
Results 1 to 6 of 6

Thread: Excution causes No Match error

  1. Excution causes No Match error

    Hello,

    I shipped an executable to some users recently on both Linux and Solaris.
    After getting them to run the particular app they experiences the following:

    # ./myapp -param1 -param2
    ../myapp: No match.

    What would be the reason that it behaves like this? In one case a person
    said they overcame this by running it as root.
    However it seems totally strange since there is nothing special about this
    executable.

    Furthermore the actual error is likely not a error coming from the actual
    application but rather the command shell.

    Thanks.

    -- Henrik


  2. Re: Excution causes No Match error

    Henrik Goldman wrote:
    > Hello,
    >
    > I shipped an executable to some users recently on both Linux and Solaris.
    > After getting them to run the particular app they experiences the
    > following:
    >
    > # ./myapp -param1 -param2
    > ./myapp: No match.
    >
    > What would be the reason that it behaves like this? In one case a person
    > said they overcame this by running it as root.
    > However it seems totally strange since there is nothing special about
    > this executable.
    >
    > Furthermore the actual error is likely not a error coming from the
    > actual application but rather the command shell.


    Just a guess: Does the "executable" lack execute permission?
    Try `chmod +x myapp' and see if that helps.

    --
    Eric Sosman
    esosman@ieee-dot-org.invalid

  3. Re: Excution causes No Match error

    Eric Sosman writes:

    > Henrik Goldman wrote:
    >> # ./myapp -param1 -param2
    >> ./myapp: No match.
    >> What would be the reason that it behaves like this?


    Does it behave like this on Linux, Solaris, or both?
    What does "strace ./myapp -param1 -param2" say?

    >> Furthermore the actual error is likely not a error coming from the
    >> actual application but rather the command shell.


    Which shell was that?

    > Just a guess: Does the "executable" lack execute permission?
    > Try `chmod +x myapp' and see if that helps.


    $ echo "int main() { return 0; }" | gcc -xc - && chmod -x ./a.out && ./a.out
    bash: ./a.out: Permission denied # Linux
    bash: ./a.out: Permission denied # Solaris

    $ /bin/sh -c ./a.out # Solaris
    /bin/sh: ./a.out: cannot execute
    $ /bin/ksh -c ./a.out # Solaris
    /bin/ksh: ./a.out: cannot execute

    Cheers,
    --
    In order to understand recursion you must first understand recursion.
    Remove /-nsp/ for email.

  4. Re: Excution causes No Match error

    "Henrik Goldman" wrote:
    > # ./myapp -param1 -param2
    > ./myapp: No match.

    <..>
    > Furthermore the actual error is likely not a error coming from the actual
    > application but rather the command shell.
    >


    This smells like tcsh and wild characters not matching. If they are
    running tcsh ja trying to feed your program arguments with wild
    characters not matching anything the shell will print the "[app]: No
    match.". For example (test1.sh prints its arguments and exits).

    $ tcsh
    $ ls
    test1.sh
    $ ./test1.sh adf
    adf
    $ ./test1.sh adf*
    ../test1.sh: No match.

  5. Re: Excution causes No Match error

    > Does it behave like this on Linux, Solaris, or both?

    Both. But not on our machines. Thats what makes it strange.

    > What does "strace ./myapp -param1 -param2" say?
    >


    I'll find out soon enough.

    > Which shell was that?
    >


    Bash under Linux. I don't know about Solaris.


    -- Henrik

  6. Re: Excution causes No Match error


    > This smells like tcsh and wild characters not matching. If they are
    > running tcsh ja trying to feed your program arguments with wild
    > characters not matching anything the shell will print the "[app]: No
    > match.". For example (test1.sh prints its arguments and exits).
    >
    > $ tcsh
    > $ ls
    > test1.sh
    > $ ./test1.sh adf
    > adf
    > $ ./test1.sh adf*
    > ./test1.sh: No match.


    In one customers case they are actually running tcsh. The weird thing though
    was that another executable worked fine.
    So how would I go about this? I guess I would need to setup a test
    environment to test it out. I just don't understand this since there is
    nothing special about the executable.
    In the particular care there was no wildcards involved though.

    -- Henrik


+ Reply to Thread