1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-09 23:34:20 +00:00

Update the minimum supported compilers and deployment targets

This commit is contained in:
Tom Poole 2024-03-23 21:35:42 -07:00 committed by Anthony Nicholls
parent 2fc069b450
commit 110e23785c
2 changed files with 46 additions and 17 deletions

View file

@ -2,6 +2,33 @@
# Version 8.0.0 # Version 8.0.0
## Change
The minimum supported compilers and deployment targets have been updated, with
the new minimums listed in the top level [README](README.md).
MinGW is no longer supported.
**Possible Issues**
You may no longer be able to build JUCE projects or continue targeting older
platforms.
**Workaround**
If you cannot build your project, update your build machine to a more modern
operating system and compiler.
There is no workaround to target platforms that predate the new minimum
deployment targets.
**Rationale**
New features of JUCE require both more modern compilers and deployment targets.
The amount of investment MinGW support requires is unsustainable.
## Change ## Change
The [JUCE End User Licence Agreement](https://juce.com/legal/juce-8-licence/) The [JUCE End User Licence Agreement](https://juce.com/legal/juce-8-licence/)

View file

@ -1,17 +1,17 @@
![alt text](https://assets.juce.com/juce/JUCE_banner_github.png "JUCE") ![alt text](https://assets.juce.com/juce/JUCE_banner_github.png "JUCE")
JUCE is an open-source cross-platform C++ application framework for creating high quality JUCE is an open-source cross-platform C++ application framework for creating
desktop and mobile applications, including VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins desktop and mobile applications, including VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins
and plug-in hosts. JUCE can be easily integrated with existing projects via CMake, or can and plug-in hosts. JUCE can be easily integrated with existing projects via CMake, or can
be used as a project generation tool via the [Projucer](#the-projucer), which supports be used as a project generation tool via the [Projucer](#the-projucer), which supports
exporting projects for Xcode (macOS and iOS), Visual Studio, Android Studio, Code::Blocks exporting projects for Xcode (macOS and iOS), Visual Studio, Android Studio,
and Linux Makefiles as well as containing a source code editor. and Linux Makefiles as well as containing a source code editor.
## Getting Started ## Getting Started
The JUCE repository contains a [master](https://github.com/juce-framework/JUCE/tree/master) The JUCE repository contains a [master](https://github.com/juce-framework/JUCE/tree/master)
and [develop](https://github.com/juce-framework/JUCE/tree/develop) branch. The develop branch and [develop](https://github.com/juce-framework/JUCE/tree/develop) branch. The develop branch
contains the latest bugfixes and features and is periodically merged into the master contains the latest bug fixes and features and is periodically merged into the master
branch in stable [tagged releases](https://github.com/juce-framework/JUCE/releases) branch in stable [tagged releases](https://github.com/juce-framework/JUCE/releases)
(the latest release containing pre-built binaries can be also downloaded from the (the latest release containing pre-built binaries can be also downloaded from the
[JUCE website](https://juce.com/get-juce)). [JUCE website](https://juce.com/get-juce)).
@ -22,12 +22,14 @@ tool) or with CMake.
### The Projucer ### The Projucer
The repository doesn't contain a pre-built Projucer so you will need to build it The repository doesn't contain a pre-built Projucer so you will need to build it
for your platform - Xcode, Visual Studio and Linux Makefile projects are located in for your platform - Xcode, Visual Studio and Linux Makefile projects are located
[extras/Projucer/Builds](/extras/Projucer/Builds) in [extras/Projucer/Builds](/extras/Projucer/Builds) (the minimum system
(the minimum system requirements are listed in the __System Requirements__ section below). requirements are listed in the [minimum system
The Projucer can then be used to create new JUCE projects, view tutorials and run examples. requirements](#minimum-system-requirements) section below). The Projucer can
It is also possible to include the JUCE modules source code in an existing project directly, then be used to create new JUCE projects, view tutorials and run examples. It
or build them into a static or dynamic library which can be linked into a project. is also possible to include the JUCE modules source code in an existing project
directly, or build them into a static or dynamic library which can be linked
into a project.
For further help getting started, please refer to the JUCE For further help getting started, please refer to the JUCE
[documentation](https://juce.com/learn/documentation) and [documentation](https://juce.com/learn/documentation) and
@ -56,20 +58,20 @@ of the target you wish to build.
#### Building JUCE Projects #### Building JUCE Projects
- __C++ Standard__: 17+ - __C++ Standard__: 17
- __macOS/iOS__: Xcode 10.1 (macOS 10.13.6) - __macOS/iOS__: Xcode 12.4 (Intel macOS 10.15.4, Apple Silicon macOS 11.0)
- __Windows__: Windows 8.1 and Visual Studio 2017 - __Windows__: Visual Studio 2019 (Windows 10)
- __Linux__: g++ 7.0 or Clang 6.0 (for a full list of dependencies, see - __Linux__: g++ 7.0 or Clang 6.0 (for a full list of dependencies, see
[here](/docs/Linux%20Dependencies.md)). [here](/docs/Linux%20Dependencies.md)).
- __Android__: Android Studio on Windows, macOS or Linux - __Android__: Android Studio (NDK 26) on Windows, macOS or Linux
#### Deployment Targets #### Deployment Targets
- __macOS__: macOS 10.9 - __macOS__: macOS 10.11
- __Windows__: Windows Vista - __Windows__: Windows 10
- __Linux__: Mainstream Linux distributions - __Linux__: Mainstream Linux distributions
- __iOS__: iOS 9.0 - __iOS__: iOS 12
- __Android__: Jelly Bean (API 16) - __Android__: Android 5 - Lollipop (API Level 21)
## Contributing ## Contributing