Probably, but I'm still convinced a sdk would be nice.

Yes, I'm aware of manylinux. DEB/RP suffer from the fact that need to be
"root" installed and manylinux needs docker to be used, so same issue.

Thanks


On Thu, 2 Apr 2020 at 20:55, Wes Turner <wes.tur...@gmail.com> wrote:

> No, I think you might be doing it wrong.
> FWIW, I haven't needed to compile CPython in 10 years (iot to build
> something other than CPython) because official builds of Conda, DEB, RPM,
> or Docker containers are generally sufficient.
>
> Are you familiar with the manylinux specs?
> I should've thought to mention that you can build maximally-portable
> packages with the manylinux docker containers as your base image:
> https://github.com/pypa/manylinux
>
> https://github.com/pypa/manylinux/blob/master/README.rst#docker-images
>
> https://pypi.org/project/auditwheel/ :
>
> > auditwheel is a command line tool to facilitate the creation of Python
> wheel packages for Linux (containing pre-compiled binary extensions) that
> are compatible with a wide variety of Linux distributions, consistent with
> the PEP 513 manylinux1, PEP 571 manylinux2010 and PEP 599 manylinux2014
> platform tags.
>
> On Thu, Apr 2, 2020, 8:48 PM Antonio Cavallo <antonio.cavallo...@gmail.com>
> wrote:
>
>> To distribute python binaries (interpreter + extensions) on linux one
>> need to compile it using the lowest common denominator (eg. some linux
>> distro really old, like rhel6).
>> Later when a user need to build an extension that might not be possible
>> (because the running host might not have a compatible compiler).
>>
>> So I think a good idea would be starting from the toolchain (eg. in my
>> case I use gcc 9.2.x).
>>
>> These days if I need to use java/node/etc. I won't go through the
>> re-building the interpreter/jvm. Does that make sense?
>>
>>
>>
>>
>> On Thu, 2 Apr 2020 at 20:39, Wes Turner <wes.tur...@gmail.com> wrote:
>>
>>> So you want to import from / call into what would be in $prefix/lib &
>>> $prefix/include?
>>>
>>> How is the SDK archive use case different from the package archive use
>>> case?
>>>
>>> On Thu, Apr 2, 2020, 8:32 PM Antonio Cavallo <
>>> antonio.cavallo...@gmail.com> wrote:
>>>
>>>> Yes, I'm aware of those.. providing an application wouldn't be what I
>>>> have in mind.
>>>>
>>>> The point would be providing a python sdk, similar to what
>>>> node/java/.net provide. something it would possible to build upon.
>>>> Those are distributed as stand alone "zip" to the general public.
>>>>
>>>>
>>>>
>>>> On Thu, 2 Apr 2020 at 20:15, Wes Turner <wes.tur...@gmail.com> wrote:
>>>>
>>>>> Would e.g. pyinstaller or constructor solve the problem?
>>>>>
>>>>> https://pyinstaller.readthedocs.io/en/stable/
>>>>>
>>>>> > PyInstaller bundles a Python application and all its dependencies
>>>>> into a single package. The user can run the packaged app without 
>>>>> installing
>>>>> a Python interpreter or any modules. PyInstaller supports Python 2.7 and
>>>>> Python 3.5+, and correctly bundles the major Python packages such as 
>>>>> numpy,
>>>>> PyQt, Django, wxPython, and others.
>>>>> >
>>>>> > PyInstaller is tested against Windows, Mac OS X, and GNU/Linux.
>>>>> However, it is not a cross-compiler: to make a Windows app you run
>>>>> PyInstaller in Windows; to make a GNU/Linux app you run it in GNU/Linux,
>>>>> etc. PyInstaller has been used successfully with AIX, Solaris, FreeBSD and
>>>>> OpenBSD but testing against them is not part of our continuous integration
>>>>> tests.
>>>>>
>>>>> https://github.com/conda/constructor :
>>>>>
>>>>> > Constructor is a tool which allows constructing an installer for a
>>>>> collection of conda packages. It solves needed packages using 
>>>>> user-provided
>>>>> specifications, and bundles those packages. It can currently create 3 
>>>>> kinds
>>>>> of installers, which are best thought of as delivery vehicles for the
>>>>> bundled packages. There are shell installers, MacOS .pkg installers, and
>>>>> Windows .exe installers. Each of these will create an environment on the
>>>>> end user's system that contains the specs you provided, along with any
>>>>> necessary dependencies. These installers are similar to the Anaconda and
>>>>> Miniconda installers, and indeed constructor is used to create those
>>>>> installers.
>>>>>
>>>>> One advantage of ~ 'dynamic linking' / not shipping the python binary
>>>>> is that you then don't need to sign and distribute new releases for every
>>>>> minor release of cpython
>>>>>
>>>>> On Thu, Apr 2, 2020, 8:09 PM Antonio Cavallo <
>>>>> antonio.cavallo...@gmail.com> wrote:
>>>>>
>>>>>> Not quite, my hope is to have a python tarball similar to the
>>>>>> "Windows x86 embeddable zip file" but for linux.
>>>>>> Similar to miniconda but for plain python, or sort of python "sdk",
>>>>>> if that makes sense.
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> PS. I didn't know about the core workflow, thanks
>>>>>>
>>>>>>
>>>>>> On Thu, 2 Apr 2020 at 19:55, Wes Turner <wes.tur...@gmail.com> wrote:
>>>>>>
>>>>>>> https://devguide.python.org/buildbots/
>>>>>>>
>>>>>>> These run in Docker containers:
>>>>>>> - https://github.com/python/cpython/blob/master/.travis.yml
>>>>>>> -
>>>>>>> https://github.com/conda-forge/python-feedstock/blob/master/recipe/build.sh
>>>>>>>
>>>>>>> These are all of the current builds; are you proposing another?
>>>>>>>
>>>>>>> https://github.com/python/buildmaster-config/blob/master/master/custom/builders.py
>>>>>>>
>>>>>>> https://github.com/python/buildmaster-config/blob/master/worker_example.Dockerfile
>>>>>>>
>>>>>>> https://github.com/buildbot/buildbot_travis :
>>>>>>>
>>>>>>> > Basically we provide a compatibility shim in buildbot that allows
>>>>>>> it to consume a .travis.yml file.
>>>>>>> >
>>>>>>> > buildbot_travis does however not support the full .travis.yml
>>>>>>> format.
>>>>>>>
>>>>>>> https://github.com/python/core-workflow/issues
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Apr 2, 2020, 6:36 PM Antonio Cavallo <
>>>>>>> antonio.cavallo...@gmail.com> wrote:
>>>>>>>
>>>>>>>> Hi
>>>>>>>> is there any interest (or anyone has done it before), building the
>>>>>>>> python interpreter using docker?
>>>>>>>>
>>>>>>>> The basic idea is building the toolchain (gcc) and on top of that
>>>>>>>> the python interpreter. On mac/linux it can build natively, but it can 
>>>>>>>> use
>>>>>>>> docker to target linux from mac/windows.
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> _______________________________________________
>>>>>>>> Python-ideas mailing list -- python-ideas@python.org
>>>>>>>> To unsubscribe send an email to python-ideas-le...@python.org
>>>>>>>> https://mail.python.org/mailman3/lists/python-ideas.python.org/
>>>>>>>> Message archived at
>>>>>>>> https://mail.python.org/archives/list/python-ideas@python.org/message/DX7WNXJGFZJZSSVV5KG54TMW3AFTELET/
>>>>>>>> Code of Conduct: http://python.org/psf/codeofconduct/
>>>>>>>>
>>>>>>>
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/456UCFWK4OFI76B6ODNYOSH7D3SGTW4U/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to