Skip to main content

Portability

The Portability section provide informations about Operating System supported, Compilers and Development Environment tools.

C++17

xtd support C++17 or above.

As of 2018, C++17 is the name for the most recent revision of the ISO/IEC 14882 standard for the C++ programming language.

For more information see wikipedia and cppreference.

Libraries dependency

xtd is currently in development mode and the only xtd.forms.native.wxwidgets backend is supported.

wxWidgets 3.2.2.1 will be automatically installed with xtd.

In the future xtd.forms will use xtd.forms.native.win32 on Windows, xtd.forms.native.cocoa on macOS and xtd.forms.native.gtk4 on linux. Other backend like xtd.forms.native.qt5 will be ported too.

Operating System Supported

Actually xtd run on Windows, macOS, Linux, iOS and Android Operating System.

Windows 10 - 32 and 64 bits or later

Windows

macOS 10.15 (OS X Catalina) - 64 bits or later

macOS

Linux - 32 and 64 bits

CentOS 7 or later

CentOS

Debian 9.2.1 or later

Debian

Elementary OS 0.4 or later

Elementary OS

Fedora 26 or later

Fedora

LinuxMint 18.2 or later

LinuxMint

Redhat 7.4 or later

Redhat

Ubuntu 18.04 or later

Ubuntu

Other distribution [manual installation]

Linux

iOS 14 - 64 bits or later [manual installation]

iOS

android 10 64 bits or later [manual installation]

android

The xtd libraries portability list

LibraryWindowsmacOSLinuxiOSAndroid
xtd.core✔️✔️✔️✔️✔️
xtd.drawing✔️✔️✔️
xtd.forms✔️✔️✔️
xtd.tunit✔️✔️✔️✔️✔️

Tests and coverage

xtd is every time tested with Continuous Integration tools.

AppVeyor

AppVeyor

Configurations :

  • Visual Studio 2019 Win32
  • Visual Studio 2019 Win64

Travis CI

TravisCI

Configurations :

  • macOS Xcode 11.6
  • linux g++ 9

Codecov

Codecov

Development Environment Tools

With CMake, xtd support many Development Environment Tools.

Microsoft Visual Studio 2019 or later

VisualStudio

Xcode 11.6 or later

Xcode

Microsoft Visual Studio Code

VisualStudioCode

CLion 2017.2 or later

CLion

Eclipse CDT 8.0 or later

EclipseCDT

Code::Blocks 13.12 or later

CodeBlocks

KDevelop 3 or later

KDevelop

CodeLite 11 or later

CodeLite

Qt Creator

Qt

Standard Unix makefile

LinuxMakefile

Compilers

The compilers listed below are supported with xtd :

  • Xcode 11.6 - Apple clang version 11.0.3 or later
  • clang 10 or later
  • GCC 10 or later
  • Visual Studio 2019 RTW 16.0 or later

Native

xtd has a thin layer by library if needed to abstract operating system. This layer is called naturally native.

For add a new Operating System, you juste have to implement native api for the new target Operating System.

Native API by library

See also