Skip to main content

Montage toolkit for reprojecting, mosaicking, and displaying astronomical images.

Project description


Building a Montage Python Binary Extension
------------------------------------------

If you want to build a complete set of Montage Python binary extension wheels
for all current versions of Python, Linux and Mac OSX, things get complicated.
This is covered for Linux and MacOS in two subdirectories (linux_wheels
and macos_wheels). However building a wheel just for the local machine and
your current Python is quite straightforward and that is what is covered here.

For Linux, all you need to do is install a few packages in Python and run the
"make_local.sh" script included here. The result is a wheel (zip) file in
the "dist" subdirectory which you can then "pip install" into Python (if
you already have Montage install using the same version number, you might
have to run "pip uninstall MontagePy" first).

The packages needed are "jinja2", "importlib-resources" and "build".

For MacOSX, there are a couple of additional things that have to be done.
The most important has to do with the way OSX builds code that needs to
run on multiple OS versions. Mac executables are generally forward version
compatible. That is, if you build it for an older version it will also run
on anything newer. Their compiler can be told to build for a previous
OS version (the "deployment target"). So people building distributable code
usually target a version a few years old.

It gets more complicated when you need to link with libraries built by
someone else (as we have to do with Python). Then your choice of target
version has to match theirs. Right now, the current MacOSX version is 14.4
but the Python version we can install are all built with a target of 11.1
(for Anaconda; the version of the build from python.org is 10.9).

Therefore we have to make sure all our code is compiled to the same target.
This is done with an environment variable:

MACOSX_DEPLOYMENT_TARGET='11.1'

Also, the Mac comes in two hardware flavors, x86_64 chips and ARM64.
Their recommended approach is to construct "universal2" object code, where
both versions are generated and kept in a single file (executable, .o
or .so). Since here we are just building for the local hardware, we
can let the compiler default that.

After that the process described in the second paragraph above is the same.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

MontagePy-2.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.4 MB view details)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-cp312-cp312-musllinux_1_1_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

MontagePy-2.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.6 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-cp312-cp312-macosx_11_0_universal2.whl (2.4 MB view details)

Uploaded CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64)

MontagePy-2.2.0-cp311-cp311-musllinux_1_1_x86_64.whl (7.3 MB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

MontagePy-2.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-cp311-cp311-macosx_11_0_universal2.whl (2.4 MB view details)

Uploaded CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64)

MontagePy-2.2.0-cp310-cp310-musllinux_1_1_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

MontagePy-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-cp310-cp310-macosx_11_0_universal2.whl (2.4 MB view details)

Uploaded CPython 3.10 macOS 11.0+ universal2 (ARM64, x86-64)

MontagePy-2.2.0-cp39-cp39-musllinux_1_1_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

MontagePy-2.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-cp39-cp39-macosx_11_0_universal2.whl (2.4 MB view details)

Uploaded CPython 3.9 macOS 11.0+ universal2 (ARM64, x86-64)

MontagePy-2.2.0-cp38-cp38-musllinux_1_1_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

MontagePy-2.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.5 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

MontagePy-2.2.0-cp38-cp38-macosx_11_0_universal2.whl (646.5 kB view details)

Uploaded CPython 3.8 macOS 11.0+ universal2 (ARM64, x86-64)

MontagePy-2.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl (7.1 MB view details)

Uploaded CPython 3.7m musllinux: musl 1.1+ x86-64

MontagePy-2.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.4 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

File details

Details for the file MontagePy-2.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0c239979498c6d8b208329a8b17f56187093e41d0fcc27bd50c484605a9c24cd
MD5 ec32448d592ef68485f6f85d56225edb
BLAKE2b-256 9d536adcecf6bb0eeb5785206c70103497d2b8b42bb4df67ae4bf722cbf3155d

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9506240755775bfa0d6b59d23bc2c2b74580a8f405a9af9619d9526c164293e0
MD5 ea422179f97e70fcd116c4889444689c
BLAKE2b-256 15703769e6d135d670619a47d3de087fd521f7c7386ff8e48f195dc0012ed558

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ea4e7fe8195e0e43178703ba61c95ce520173edee889d65d224231f87c1e832
MD5 cf94f46aa0e3378eb062ea6050ebba8c
BLAKE2b-256 11f901cad336c16aaf11055a79af5c59a9df53b8ab74f3ef6fb54ba7e360e5fb

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 453c2fe818747bafcd177856372e5539ad2f76f95de1429d34fdaf9dafd22458
MD5 8429fcdd9d2b5034cafc09bdd8848531
BLAKE2b-256 7083198f1ded0d35113bbc78f8b5aa7303c334b5085e72bafec0c679ce7d335f

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 58a0303109c9e68d211407043ca12eca41146d343346afe5419a673010ade629
MD5 c405eb79d17fcdb8b55d80b9904a74ea
BLAKE2b-256 376d1681fc7af6b342bebfc2e50c002018f7659d0de7aec70bef770030508338

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 acfdafe7a8fd82e372d89e93e1e1fb5256ae5be108a031441da18c0b2deec77b
MD5 34d8954b98b7130e12170a727746a04e
BLAKE2b-256 fcd22b8143ace698ba7c3b98d1ad90c07059d9ada3f0d8b92ecaee9ca8b1d5e8

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp312-cp312-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp312-cp312-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 fa0e758b13b4a884d3d6138c59c4d3f5457be1328ba34937cf3f3b033af19ee0
MD5 29cf21b04611ed012c6b709d5376ba4d
BLAKE2b-256 dfdde0799c0d4ea2dc50ef2b4e9f841fd0a1d73a0ac63212c12331b717773c6d

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0967898037186518be59f456be59a14b0d5614ba208e766fe3a311d51174c047
MD5 bc0a834ebe81e8ab4868559aa168b8cd
BLAKE2b-256 f0dcdd7384017917c1fb3de6ee5905174c098ddae8442225ac824122b26c1edc

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 06d823e893f5d500c1af4c76c95905c5fe84807ad44b66e7ef9203ac686e023d
MD5 37f819dd83112ec8cbad19c9a1d47b80
BLAKE2b-256 aa32558061b7478f30765f65c259d37687428b970ef690828dd64b747ca52f70

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp311-cp311-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp311-cp311-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 a0bf614ebd18843b84a5ac5299be13b4bc564bab3af56a02372648867da75a82
MD5 2c1f4e1c965abc1dc307324e343e362b
BLAKE2b-256 c59a56a729550da3435222fb83a75b54a04b8ab076690a0e78b6501c40d66943

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 c268a83e47ee76383a12dbfc71d1f6ca51b426dc35a8f025f347b79fd4e5ad78
MD5 91a251e9f1a2d0e9c6c7b61d5fdf6962
BLAKE2b-256 050b8db6d8cddeb8c16c1c9c5a8407d7259d39f7167a36219a8e0d55e831e3a0

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fdcfcd2111d3794319cd94a05023a61dadc0653a76336e7fd3bf15fe60b850b5
MD5 0c0689bfbea2b3087e5c5fbec7a38187
BLAKE2b-256 21941be32d76bb2378301d2445956fc6222a9a3c93bed7fd1e21317a0345ab0c

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp310-cp310-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp310-cp310-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 a55f473a603163855ce86eb38687dea416f7e32284674b1eae8fc3f881b7ce48
MD5 afcce5d1f30f05bdde2c402b66bd9980
BLAKE2b-256 8da5ef767dd2d6d9b486d39509cf8e58efecc0236ab1c64fd305943d18be0cab

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b05a6f6162cf13c1c6c397972b399a919cd174b67eb5495e25bc6fdedb902bd3
MD5 0ef73dcb9903316f1d875d666d76e5fb
BLAKE2b-256 898d08841ea878a0c52c1f8cf1cbcb27bcfb035b42c75a375eb92972ec2ec549

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 10560cfa3d88569a2c08e6ee58a790aee8e3fa0e8b17e64d3798d8ecb75c8c0f
MD5 18c9bb5baa36712d072188d6d6e0d7f3
BLAKE2b-256 ae643ee5a5de979b360d90a160fb9e774a6c376b3d220783efbdafcfa9485eb3

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp39-cp39-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp39-cp39-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 242e052497ac622939782fc33c5862891ae15f6fe0f18b5fc2e155db3e78a42e
MD5 fd6d389f94b0b34b782133cc6ac94fea
BLAKE2b-256 135495a1216d2ad455050444ca488c37cca3a2e7e120664382e88866e6e6e585

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 1ed06bc949ba5d1c81d2ff84bda220ece043626ea832c2dbd300eb83106cc8f6
MD5 44c70b927f97ea99493f6ce9d8a0893d
BLAKE2b-256 be6816cf0314c6284204c3b486a6da7697c196db22b64f1248435ef29bc1b467

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4d725416b1702fa36c8c53ead9448906884ec5df7ed0788135c73a0bebaf0996
MD5 10fa671fcf2c55bc405fcf919d7dd3be
BLAKE2b-256 4a04b3987082dd8cbb8358af866efc3d5513d5a9ecb5794463f14195f86fd0cb

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp38-cp38-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp38-cp38-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 ee272f4c7c82ecbc1aeb21c754484b77e3649303eac7d2a53fb86b6432690d86
MD5 19f6e8b6bb53cd7fb1f421851d0954bf
BLAKE2b-256 92465c5627deb28208d0e9d146936f0376df206a7ce033d7859576d5b097f31e

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e78b2ea3f9ce28b04552ebf4c4469716c6350192537460a3ed19c3fb36aab724
MD5 6943e15d301aee235e34c9fae1cd444e
BLAKE2b-256 8fbd6ee3d9c51968c06a6e3529a95be0ac0710f1391c9bddbfca89d126af2b5d

See more details on using hashes here.

File details

Details for the file MontagePy-2.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for MontagePy-2.2.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 84f3bc5821c3c8546a826ea60ef69300bb6efac5a3895bac82d0e0c0d0993320
MD5 4d4194e79228adf8dc2493e9bbd97d3c
BLAKE2b-256 e5e3a49d333a75edb19b568f7cb06fc7b6e0c1bd43c51779624b9a2c735f5290

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page