This project provides JetBrains IDEs distributions for more architectures.
Currently supported platforms:
- Linux RISC-V 64
- Linux LoongArch64 (New World)
Note
The Linux LoongArch64 platform has two incompatible ABIs ("Old World" and "New World"). This project only provides support for the "New World".
See this document for more details.
We provide pre-built distributions for the IDEs that can be redistributed.
RISC-V 64 | LoongArch64 | |
---|---|---|
IntelliJ IDEA Community Edition | 2024.3.3+0 | 2024.2.1+0 |
PyCharm Community | 2024.3.3+0 | / |
As for other IDEs, we are not allowed to redistribute them. Please build them yourself.
The work of this project is to download the official IDE distribution, patch the IDE with self-built native binaries and generate distributions for the target platform.
The scripts that do this are based on Gradle and require OpenJDK (>= 21) to run.
With OpenJDK installed and the JAVA_HOME
environment variable set,
run the following command replacing $PRODUCT_CODE
with the product code of the IDE you want to build
and $ARCH
with the simple name of the target architecture:
./gradlew transform$PRODUCT_CODE-$ARCH
$PRODUCT_CODE
for IDEs:
- IntelliJ IDEA Community Edition:
IC
- IntelliJ IDEA Ultimate:
IU
- PyCharm Community:
PC
- PyCharm Professional:
PY
- Goland:
GO
$ARCH
for architectures:
- RISC-V 64:
riscv64
- LoongArch64:
loongarch64
The IDE distribution will be built into ./build/target/
.
We have pre-built native binaries for some platforms. By default, the project downloads these prebuilt binaries and patches the IDE with them. You can also build them yourself.
Building native binaries requires:
- GCC
- Cargo (>= 1.82.0)
- Go (>= 1.20)
This project supports cross-compiling native binaries. To cross-compile binaries, you need to have the GCC Cross-Compiler for your target platform installed and Cargo configured for that.
Running ./gradlew buildNatives-$ARCH
builds native binaries for the target platform,
the built native binaries will be packaged into the file ./resources/natives-linux-$ARCH.zip
.
When this file exists, the script will use it first to patch the IDE instead of downloading the prebuilt binary.
JetBrains IDEs require a Java runtime environment to run.
We have pre-built JDKs for some platforms. By default, this project downloads these pre-built JDKs and bundles them into the IDE distribution. You can replace the default Java runtime environment via the project properties:
./gradlew transform$PRODUCT_CODE-$ARCH -Pjdk.linux.$ARCH.url="..."
The URL should point to a JDK distribution in .tar.gz
or .zip
format.
If you want to build the JDK yourself, we recommend using the JetBrains Runtime for the best experience.
For Linux LoongArch64, since OpenJDK mainline does not provide full support for LoongArch64, it is recommended to build based on loongson/jdk21u.
- Using JBR on Linux LoongArch64.
Thanks to PLCT Lab for supporting me.