Supported Platforms
HeexSDK has been tested on the following platforms.Architecture | Ubuntu 18.04 LTS | Ubuntu 20.04 LTS | Ubuntu 22.04 LTS | Windows 7 | Windows 10 | Windows 11 | CentOS 7.9-2009 |
---|---|---|---|---|---|---|---|
x86_64 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
ARM | ✅ | ✅ | ✅ |
Supported Compilers
HeexSDK has been tested with the following compilers forc++14
:
gcc: 11.4.0
(22.04), 9.4.0
(20.04), 7.5.0
(18.04), 9.3.1
(CentOS)msvc:
14.2
⚠️ Warning:
GLIBC version 3.4.30 is required to be able to use the heexCore
.
On Ubuntu 18.04, you can add support for GLIBC 3.4.30 by running the following commands:
Supported Python versions
HeexSDK has been tested with the following python library: python:3.10
(Ubuntu 22.04 & Windows), 3.8
(20.04), 3.6
(18.04 & CentOS)
⚠️ Warning: Due to the Boost library version we are using (1.84.0), python 3.11 is currently not supported.Configuring and building with python requires the
--with-python
optional flags to be provided to the ./heex sdk build
CLI command.
Required libraries
The Heex SDK automates the installation of most of the dependencies and 3rd-party softwares required, with theHeex CLI
.
Some software dependencies are not integrated in our solution, but are required to build and operate it at run-time.
Affected dependencies are tagged for non-automated install (ie. user manual installation is required) and for external tool (ie. the tool need to be available in the machine).
Pre-required on platforms
The following dependencies are required to be installed previous to any usage of the SDK.- linux
- windows
- sudo
- jq
→ jq is a lightweight and flexible command-line JSON processor
→ Solely for users that call therunHeexKernel.sh
script with thewait-for-jobs-completion
option.
Automatically installed
The following dependencies are installed by our CLI.- linux
- windows
Global dependencies
- Boost 1.84.0
- Some boost libraries used are not header-only and require a .lib to be provided to the linker. They are
program_options
,thread
,filesystem
,system
,date_time
,regex
,serialization
, andlog
. andpython
. Also requirespython
when enabled.
- Some boost libraries used are not header-only and require a .lib to be provided to the linker. They are
- C++ development Build essentials package and tools
build-essential
package (libc, gcc, g++, make, dpkg-dev, …)cmake
3.24.0 binaries (for 18.04 and CentOS only)
- Archiver
- 7zip (external tool, pre-compiled binary): We use the pre-compiled binaries only, no usage of the source code.
- whereami
- makeself
SDK-specific dependencies
- units units library auto-installed when building Heex SDK with
Heex CLI
.