setup_requires with Cython?

Starting from 18.0 release of setuptools (released on 2015-06-23) it is possible to specify Cython in setup_requires and pass *.pyx modules sources for regular setuptools.Extension: from setuptools import setup, Extension setup( # … setup_requires=[ # Setuptools 18.0 properly handles Cython extensions. ‘setuptools>=18.0’, ‘cython’, ], ext_modules=[ Extension( ‘mylib’, sources=[‘src/mylib.pyx’], ), ], )

How do you protect your software from illegal distribution? [closed]

There are many, many, many protections available. The key is: Assessing your target audience, and what they’re willing to put up with Understanding your audience’s desire to play with no pay Assessing the amount someone is willing to put forth to break your protection Applying just enough protection to prevent most people from avoiding payment, … Read more

What’s the best way to distribute Java applications? [closed]

There are a variety of solutions, depending on your distribution requirements. Just use a jar. This assumes that the user has the the correct java version installed, otherwise the user will get “class-file format version” exceptions. This is fine for internal distribution inside a company. Use launch4j and an installer like NSIS. This gives you … Read more

Create a single executable from a Python project

Here are some common ones. I’ve included only projects that are being actively maintained as of my last edit (July 2021). Unless otherwise noted, all programs listed below will produce an exe specifically for the operating system it’s running in. So for example, running Pyinstaller in Windows will produce a Windows exe, but running Pyinstaller … Read more