Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum. |
| Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
 |
GNU/Linux Basic Guide
This 255-page guide will provide you with the keys to understand the philosophy of free software, teach you how to use and handle it, and give you the tools required to move easily in the world of GNU/Linux. Many users and administrators will be taking their first steps with this GNU/Linux Basic guide and it will show you how to approach and solve the problems you encounter.
Click Here to receive this Complete Guide absolutely free. |
|
 |
06-01-2007, 08:55 AM
|
#1
|
|
Senior Member
Registered: Apr 2007
Location: Portland, OR
Distribution: Debian, Android, LFS
Posts: 1,167
|
shell scripts to binaries = possible?
Is there any way to "compile" a shell script into a binary?
|
|
|
|
06-01-2007, 08:59 AM
|
#2
|
|
Guru
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 11,778
|
There's only one thing I could find to do something like this:
http://directory.fsf.org/devel/shell/shc.html
Although, from past experiences, it's far better to port your code to another language, rather than use one of these tools.
|
|
|
|
06-04-2007, 06:12 AM
|
#3
|
|
Member
Registered: Feb 2003
Location: Florida
Distribution: Fedora 18
Posts: 828
Rep:
|
Pardon me for asking but what are the advantages of converting a script to binary? Does it run faster?
|
|
|
|
06-04-2007, 08:05 AM
|
#4
|
|
Senior Member
Registered: Apr 2007
Location: Portland, OR
Distribution: Debian, Android, LFS
Posts: 1,167
Original Poster
|
Motivation for this
My initial reason for wanting to do this was to move a bunch of scripts out of my home dir into a usr binary folder, and wouldn't feel good about myself unless they were legit binaries. Motivation = aesthetic, not functional. I suppose if this could be done well, though, it might also have some performance gains?
|
|
|
|
06-04-2007, 08:13 AM
|
#5
|
|
Senior Member
Registered: Jul 2004
Location: Nantes (France)
Distribution: Arch Linux
Posts: 1,897
Rep:
|
Nowadays, many commands are actually wrapper scripts. Be curious and you'll find them. There's nothing wrong with having scripts in the system PATH.
The only reason I could see for such a convertion would be to allow setting the SUID bit on some of your "scripts", since this bit is ignored on real scripts.
Yves.
|
|
|
|
06-04-2007, 08:14 AM
|
#6
|
|
LQ Veteran
Registered: Nov 2005
Location: Annapolis, MD
Distribution: Arch/XFCE
Posts: 17,797
|
An application written in a compiled language--eg C--will, in principle, be faster than one written in an interpreted language (includes shell scripts). In practice, the difference will not always be significant.
Assuming that there is some utility that turns a shell script into a binary, I would expect it to be slower than either option above.
Wanting to make it a binary just so it can exist happily in /xxx/bin makes NO sense. The only reason for any executable file to exist is if it does something useful for you. Assuming that it does, then why would anyone care what was inside that file? (Or what directory it was in)
OTOH, if the script is too slow, warm up the C compiler and write something that does what you need.
|
|
|
|
| Thread Tools |
Search this Thread |
|
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -5. The time now is 06:35 AM.
|
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|