@huyz: Thank you. It looks like a lot of Jetbrains apps use the same Jetbrains JRE. I plan to add it as a separate AUR package and then list it as an optional dependency.
@solnce: Fixed, thanks.
| Git Clone URL: | https://aur.archlinux.org/pycharm.git (read-only, click to copy) |
|---|---|
| Package Base: | pycharm |
| Description: | The only Python IDE you need. Bundled with the official JetBrains Runtime (JBR) |
| Upstream URL: | https://www.jetbrains.com/pycharm/ |
| Licenses: | custom |
| Conflicts: | pycharm-community-edition, pycharm-professional |
| Provides: | pycharm |
| Replaces: | pycharm-professional |
| Submitter: | Xavier |
| Maintainer: | Zpecter (Meaulnes) |
| Last Packager: | Zpecter |
| Votes: | 309 |
| Popularity: | 1.12 |
| First Submitted: | 2025-10-04 18:47 (UTC) |
| Last Updated: | 2026-07-03 19:20 (UTC) |
« First ‹ Previous 1 .. 12 13 14 15 16 17 18 19 20 21 22 .. 49 Next › Last »
@huyz: Thank you. It looks like a lot of Jetbrains apps use the same Jetbrains JRE. I plan to add it as a separate AUR package and then list it as an optional dependency.
@solnce: Fixed, thanks.
The new dependency lib32-gcc-libs is missing from the .SRCINFO.
Feature request: Could you pack the bundled java runtime into a split package pycharm-professional-jre, just like other Jetbrains IDEs (e.g. datagrip, goland, idea, etc) in AUR.
This can save some disk space for user who uses custom java runtime.
Here's a modified PKGBUILD to pack this:
diff --git a/PKGBUILD b/PKGBUILD
index a498dbc..7e01665 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,18 +1,14 @@
# Maintainer: MikeBreytenbach <mike.breyten.bach at gmail dot com>
# Maintainer: XavierCLL <xavier.corredor.llano (a) gmail.com>
-pkgname=pycharm-professional
+pkgbase=pycharm-professional
+pkgname=(pycharm-professional pycharm-professional-jre)
pkgver=2021.3
pkgrel=1
pkgdesc="Python IDE for Professional Developers. Professional Edition"
arch=('x86_64')
url='https://www.jetbrains.com/pycharm/'
-conflicts=('pycharm' 'pycharm-community-edition')
-provides=('pycharm')
license=('custom')
-backup=("opt/$pkgname/bin/pycharm64.vmoptions"
- "opt/$pkgname/bin/idea.properties")
-depends=('giflib' 'glibc' 'sh' 'libxtst' 'libxslt' 'libxss' 'nss' 'python' 'libdbusmenu-glib')
source=("https://download.jetbrains.com/python/$pkgname-$pkgver.tar.gz"
"pycharm-professional.desktop"
"charm.desktop"
@@ -22,17 +18,6 @@ sha256sums=('81426f86e1b3de0bd00488e037e9fdcaab4772f1f259ff551ac904d35fb4cd7c'
'6996b38a3c2ba1e472838d7046a4c54a27822fd647be9ca590457e8c6a2d50c8'
'039f0d1dc447fb26bb9df35b3a85145a47ce42193c8b2d56bf7bdf090fff0da9')
makedepends=('python-setuptools' 'cython' 'lib32-gcc-libs')
-optdepends=('ipython: For enhanced interactive Python shell inside Pycharm'
- 'openssh: For deployment and remote connections'
- 'python-setuptools: Packages manager for Python, for project interpreter'
- 'python-coverage: For support code coverage measurement'
- 'cython: For performance debugger'
- 'docker-machine: For support docker inside Pycharm'
- 'docker-compose: For support docker inside Pycharm'
- 'vagrant: For support virtualized development environments'
- 'python-pytest: For support testing inside Pycharm'
- 'python-tox: Python environments for testing tool'
- 'jupyter: For support Jupyter Notebook')
build() {
# clean up and compile PyDev debugger used by PyCharm to speedup debugging
@@ -46,7 +31,26 @@ build() {
rm -r pycharm-${pkgver}/lib/pty4j-native/linux/{mips64el,ppc64le,aarch64,arm,x86}
}
-package() {
+package_pycharm-professional() {
+ depends=('giflib' 'glibc' 'sh' 'libxtst' 'libxslt' 'libxss' 'nss' 'python' 'libdbusmenu-glib')
+ optdepends=('pycharm-professional-jre: JetBrains custom JRE (Recommended)'
+ 'java-environment: Required if pycharm-professional-jre is not installed'
+ 'ipython: For enhanced interactive Python shell inside Pycharm'
+ 'openssh: For deployment and remote connections'
+ 'python-setuptools: Packages manager for Python, for project interpreter'
+ 'python-coverage: For support code coverage measurement'
+ 'cython: For performance debugger'
+ 'docker-machine: For support docker inside Pycharm'
+ 'docker-compose: For support docker inside Pycharm'
+ 'vagrant: For support virtualized development environments'
+ 'python-pytest: For support testing inside Pycharm'
+ 'python-tox: Python environments for testing tool'
+ 'jupyter: For support Jupyter Notebook')
+ conflicts=('pycharm' 'pycharm-community-edition')
+ provides=('pycharm')
+ backup=("opt/$pkgname/bin/pycharm64.vmoptions"
+ "opt/$pkgname/bin/idea.properties")
+
# licenses
install -dm 755 "$pkgdir/usr/share/licenses/$pkgname/"
mv "pycharm-$pkgver/license/"* "$pkgdir/usr/share/licenses/$pkgname/"
@@ -54,6 +58,7 @@ package() {
# base
install -dm 755 "$pkgdir/opt/$pkgname"
mv "pycharm-$pkgver/"* "$pkgdir/opt/$pkgname/"
+ mv "$pkgdir/opt/$pkgname/jbr" "pycharm-$pkgver/"
install -dm 755 "$pkgdir/usr/share/applications"
install -Dm 644 "$pkgname.desktop" "$pkgdir/usr/share/applications/"
install -dm 755 "$pkgdir/usr/share/icons/hicolor/"{128x128,scalable}"/apps/"
@@ -68,3 +73,8 @@ package() {
install -Dm 755 charm "$pkgdir/usr/bin/"
install -Dm 644 charm.desktop "$pkgdir/usr/share/applications/"
}
+
+package_pycharm-professional-jre() {
+ install -dm 755 "$pkgdir/opt/$pkgname"
+ mv "pycharm-$pkgver/jbr" "$pkgdir/opt/$pkgname/"
+}
@MikeBreytenbach thanks, installing lib32-gcc-libs did solve the issue. It appears that it might be a missing make dependency.
Thanks @donny and @XavierCLL. Is it possible that gcc-libs is not enough and that PyCharm also needs the 32 bit version to build?
@XavierCLL: gcc-libs is a required dependecy of both base meta-package and gcc package from the base-devel package group. If anyone is missing base or base-devel on his arch machine, it's the user's fault and shloudn't be corrected in the PKGBUILD.
@nadavz the error is because you need gcc-libs in the system, Mike maybe we need to add that package in the makedepends list
@nadavz thank you for telling us. Please try (re)installing lib32-gcc-libs. If that does not work try "pacman -S --needed base-devel".
For me it failed with:
[1/1] Cythonizing _pydevd_bundle/pydevd_cython.pyx
running build_ext
building '_pydevd_bundle.pydevd_cython' extension
creating build
creating build/temp.linux-x86_64-3.9
creating build/temp.linux-x86_64-3.9/_pydevd_bundle
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fPIC -I/usr/include/python3.9 -c _pydevd_bundle/pydevd_cython.c -o build/temp.linux-x86_64-3.9/_pydevd_bundle/pydevd_cython.o
creating build/lib.linux-x86_64-3.9
creating build/lib.linux-x86_64-3.9/_pydevd_bundle
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fno-semantic-interposition -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-3.9/_pydevd_bundle/pydevd_cython.o -L/usr/lib -o build/lib.linux-x86_64-3.9/_pydevd_bundle/pydevd_cython.cpython-39-x86_64-linux-gnu.so
copying build/lib.linux-x86_64-3.9/_pydevd_bundle/pydevd_cython.cpython-39-x86_64-linux-gnu.so -> _pydevd_bundle
[1/1] Cythonizing _pydevd_frame_eval/pydevd_frame_evaluator_common.pyx
running build_ext
building '_pydevd_frame_eval.pydevd_frame_evaluator_common' extension
creating build/temp.linux-x86_64-3.9/_pydevd_frame_eval
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fPIC -I_pydevd_frame_eval -I/usr/include/python3.9 -c _pydevd_frame_eval/pydevd_frame_evaluator_common.c -o build/temp.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_common.o
In file included from /usr/include/python3.9/internal/pycore_interp.h:13,
from _pydevd_frame_eval/internal_pycore.h:7,
from _pydevd_frame_eval/pydevd_frame_evaluator_common.c:640:
/usr/include/python3.9/internal/pycore_gc.h:61: warning: "_PyGC_FINALIZED" redefined
61 | #define _PyGC_FINALIZED(o) \
|
In file included from /usr/include/python3.9/objimpl.h:208,
from /usr/include/python3.9/Python.h:85,
from _pydevd_frame_eval/pydevd_frame_evaluator_common.c:25:
/usr/include/python3.9/cpython/objimpl.h:131: note: this is the location of the previous definition
131 | # define _PyGC_FINALIZED(o) PyObject_GC_IsFinalized(o)
|
creating build/lib.linux-x86_64-3.9/_pydevd_frame_eval
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fno-semantic-interposition -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_common.o -L/usr/lib -o build/lib.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-x86_64-linux-gnu.so
copying build/lib.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_common.cpython-39-x86_64-linux-gnu.so -> _pydevd_frame_eval
[1/1] Cythonizing _pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.pyx
running build_ext
building '_pydevd_frame_eval.pydevd_frame_evaluator_py39_and_above' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fPIC -I_pydevd_frame_eval -I./_pydevd_frame_eval -I/usr/include/python3.9 -c _pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.c -o build/temp.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.o
In file included from /usr/include/python3.9/internal/pycore_interp.h:13,
from _pydevd_frame_eval/internal_pycore.h:7,
from _pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.c:641:
/usr/include/python3.9/internal/pycore_gc.h:61: warning: "_PyGC_FINALIZED" redefined
61 | #define _PyGC_FINALIZED(o) \
|
In file included from /usr/include/python3.9/objimpl.h:208,
from /usr/include/python3.9/Python.h:85,
from _pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.c:26:
/usr/include/python3.9/cpython/objimpl.h:131: note: this is the location of the previous definition
131 | # define _PyGC_FINALIZED(o) PyObject_GC_IsFinalized(o)
|
gcc -pthread -shared -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fno-semantic-interposition -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection build/temp.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.o -L/usr/lib -o build/lib.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.cpython-39-x86_64-linux-gnu.so
copying build/lib.linux-x86_64-3.9/_pydevd_frame_eval/pydevd_frame_evaluator_py39_and_above.cpython-39-x86_64-linux-gnu.so -> _pydevd_frame_eval
Compiled amd64
Note: may need sudo apt-get install libx32gcc-4.8-dev and sudo apt-get install libc6-dev-i386 and sudo apt-get install g++-multilib to compile 32 bits
In file included from /usr/include/features.h:497,
from /usr/include/bits/libc-header-start.h:33,
from /usr/include/stdio.h:27,
from attach.cpp:7:
/usr/include/gnu/stubs.h:7:11: fatal error: gnu/stubs-32.h: No such file or directory
7 | # include <gnu/stubs-32.h>
| ^~~~~~~~~~~~~~~~
compilation terminated.
mv: cannot stat 'attach_linux_x86.so': No such file or directory
I then installed core/lib32-glibc which provides /usr/include/gnu/stubs-32.h, but then I got
<SNIP>
Compiled amd64
Note: may need sudo apt-get install libx32gcc-4.8-dev and sudo apt-get install libc6-dev-i386 and sudo apt-get install g++-multilib to compile 32 bits
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/libgcc_s.so.1 when searching for libgcc_s.so.1
collect2: error: ld returned 1 exit status
mv: cannot stat 'attach_linux_x86.so': No such file or directory
Compiled x86
I'm not in a virtualenv shell.
Don't build it in a virtualenv active shell
Pinned Comments
Meaulnes commented on 2026-03-27 16:37 (UTC)
This comment from @AvacadoCookie should be pinned, IMO.
If anyone is getting errors about
Cythonorsetuptools, and they are usingConda, that comment has the answer.If anyone is getting errors about
Cythonorsetuptools, and they are usingpyenv, there are 2 possible ways to fix it:pyenv local systemto set Python back to the system installed Python for this session.pip install Cython setuptoolsto install the necessary packages to your preferred python installation.AvocadoCookie commented on 2025-12-14 16:22 (UTC)
For all users with
ModuleNotFoundError: No module named 'Cython'or'setuptools'reported, please try the following methods to address the problem:condaenvironment. Now afterwhich pythontyped in console, the output should be/usr/bin/python.pacman -S cython python-setuptools.