Re: Executable standalone *.pyc after inserting #!/usr/bin/python or other options
On Jan 14, 10:55 pm, epsilon cesm...@gmail.com wrote: All: I've been playing with Lua and found something really cool that I'm unable to do in Python. With Lua, a script can be compiled to byte code using luac and by adding #!/usr/bin/lua at the top of the binary, the byte code becomes a single file executable. After I found this trick, I ran back to Python to give it a try. Well... it didn't work. Is this possible? You can't add a string on top of a pyc file but you can add one in a zipped file. For an example, see http://www.noah.org/wiki/Python_zip_exe -- http://mail.python.org/mailman/listinfo/python-list
Re: Executable standalone *.pyc after inserting #!/usr/bin/python or other options
On Jan 15, 8:32 am, schmeii maxischm...@gmail.com wrote: On Jan 14, 10:55 pm, epsilon cesm...@gmail.com wrote: All: I've been playing with Lua and found something really cool that I'm unable to do in Python. With Lua, a script can be compiled to byte code using luac and by adding #!/usr/bin/lua at the top of the binary, the byte code becomes a single file executable. After I found this trick, I ran back to Python to give it a try. Well... it didn't work. Is this possible? You can't add a string on top of a pyc file but you can add one in a zipped file. For an example, seehttp://www.noah.org/wiki/Python_zip_exe All: Thanks again and I'm looking at all the options for different operating system Christopher -- http://mail.python.org/mailman/listinfo/python-list
Executable standalone *.pyc after inserting #!/usr/bin/python or other options
All: I've been playing with Lua and found something really cool that I'm unable to do in Python. With Lua, a script can be compiled to byte code using luac and by adding #!/usr/bin/lua at the top of the binary, the byte code becomes a single file executable. After I found this trick, I ran back to Python to give it a try. Well... it didn't work. Is this possible? There are tools which insert python and related modules inside the byte code, but this is not the requirement for this situation. The required solution is to insert #!/ usr/bin/python (or some string) at the top of a *.pyc byte code file and run it as standalone executable. I'm excited about the possibility and interested in hearing your thoughts. Thank you, Christopher Smiga -- http://mail.python.org/mailman/listinfo/python-list
Re: Executable standalone *.pyc after inserting #!/usr/bin/python or other options
I've been playing with Lua and found something really cool that I'm unable to do in Python. With Lua, a script can be compiled to byte code using luac and by adding #!/usr/bin/lua at the top of the binary, the byte code becomes a single file executable. After I found this trick, I ran back to Python to give it a try. Well... it didn't work. Is this possible? In Python, a different approach will work, depending on the operating system. E.g. on Linux, you can use binfmt_misc to make executables out of pyc code. Run import imp,sys,string magic = string.join([\\x%.2x % ord(c) for c in imp.get_magic()],) reg = ':pyc:M::%s::%s:' % (magic, sys.executable) open(/proc/sys/fs/binfmt_misc/register,wb).write(reg) once on your Linux system (or, rather, at boot time), and all pyc files become executable (if the x bit is set). In Debian, installing the binfmt-support package will do that for you. Do ls /proc/sys/fs/binfmt_misc/ to see what binary types are already supported on your system. HTH, Martin P.S. The approach you present for Lua indeed does not work for Python. -- http://mail.python.org/mailman/listinfo/python-list
Re: Executable standalone *.pyc after inserting #!/usr/bin/python or other options
On Jan 14, 5:33 pm, Martin v. Loewis mar...@v.loewis.de wrote: I've been playing with Lua and found something really cool that I'm unable to do in Python. With Lua, a script can be compiled to byte code using luac and by adding #!/usr/bin/lua at the top of the binary, the byte code becomes a single file executable. After I found this trick, I ran back to Python to give it a try. Well... it didn't work. Is this possible? In Python, a different approach will work, depending on the operating system. E.g. on Linux, you can use binfmt_misc to make executables out of pyc code. Run import imp,sys,string magic = string.join([\\x%.2x % ord(c) for c in imp.get_magic()],) reg = ':pyc:M::%s::%s:' % (magic, sys.executable) open(/proc/sys/fs/binfmt_misc/register,wb).write(reg) once on your Linux system (or, rather, at boot time), and all pyc files become executable (if the x bit is set). In Debian, installing the binfmt-support package will do that for you. Do ls /proc/sys/fs/binfmt_misc/ to see what binary types are already supported on your system. HTH, Martin P.S. The approach you present for Lua indeed does not work for Python. Martin, This works great! Do you or anyone else have information on how to do the same thing for Windows and/or Solaris. Thank you again, Christopher -- http://mail.python.org/mailman/listinfo/python-list
Re: Executable standalone *.pyc after inserting #!/usr/bin/python or other options
This works great! Do you or anyone else have information on how to do the same thing for Windows and/or Solaris. On Windows, just associate the .pyc extension with Python - the standard installation will already do that. On Solaris, I don't think something like this is supported. Regards, Martin -- http://mail.python.org/mailman/listinfo/python-list