An open API service indexing awesome lists of open source software.

https://github.com/symengine/symengine-wheels


https://github.com/symengine/symengine-wheels

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

        

Repository to build wheels
==========================

We are using this repo to build wheels for symengine.py. Instead of using
the multibuild infrastructure, we are using conda-forge infrastructure
because of few reasons

1. Dependencies like LLVM which take a lot of time are pre-built.
2. cross-compiling is supported.

In order to use conda-forge built dependencies, there are a few catches
due to the use of recent libgcc and libsdtcxx. In order to do that, we
need to do ALL of the following for Linux,

1. If C shared libraries are used, they need to be built with
`-static-libgcc` or cross our fingers that they don't need
a newer version of libgcc. (We checked and they didn't)
Else use static libraries.
2. Use only static libraries for C++ dependencies.
3. Build the wrapper with `-static-libgcc -static-libstdcxx`

For macOS we need to ONE of the following,

1. Use only static libraries for C++ dependencies and ink in libc++ statically OR
2. Hope that the dependencies don't use newer features of libc++. (We checked and they didn't)

For Windows,

1. Hope that the user has install Visual C++ 2017 Redistributable.