The recent execution of an executable file using the Linux operating system results in a hint of no such file or directory that is confusing.
fileordirectory
Viewing the file information, you can see that the file is present and can be executed.
-rwxr-xr-x120581 429 2004 tshref
After the data is consulted, the reason is that the number of system bits does not match the number of LIB bits required by the executable file.
Use the uname command to print system information and discover that the system is a 64-bit system
-aLinux yuan-vm3.13.0-32-generic#57-Ubuntu1503:51:082014 x86_64 x86_64 x86_64 GNU/Linux
Use the file command to view the document information and discover that it is a 32-bit executable file.
file32-bit LSB 803861sharedfor2.2.5not stripped
To run a 32-bit program on a 64-bit system, you need to install a 32-bit Lib library.
For Ubuntu users can use the following command to install.
sudo apt-get Install Ia32-libsreading Package Lists ... Donebuilding Dependency Tree Reading state information ... Donepackage ia32-libs is not available, but is referred to by another package. This could mean that the package is missing, has been obsoleted, or is only available from another Sourcehowever Span class= "Hljs-keyword" >the following packages replace it : Lib32z1 LIB32NCURSES5 lib32bz2-1.0
You may not find the library you want in the process, but there are several alternative packages that you can choose to install.
sudo apt-get install lib32bz2-1.0lib32bz2-1.0
You can then run the previous executable file as expected.
In fact, there may be other reasons, such as the text encoding format problem, this article only proposed a solution, the reader encountered the same problem to specific problems specific analysis.
Linux execution executable prompt no such file or directory workaround