2015-10-13 70 views
1

我用pycharm專業上的Arch Linux,但因爲昨天它運行不正常,在temrinal運行它的時候,這裏是錯誤:運行PyCharm

[[email protected] ~]$ pycharm 
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=350m; support was removed in 8.0 
Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=lcd 
# 
# A fatal error has been detected by the Java Runtime Environment: 
# 
# SIGSEGV (0xb) at pc=0x00007f26f93b5be0, pid=1999, tid=139805401143040 
# 
# JRE version: Java(TM) SE Runtime Environment (8.0_60-b27) (build 1.8.0_60-b27) 
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.60-b23 mixed mode linux-amd64 compressed oops) 
# Problematic frame: 
# C 0x00007f26f93b5be0 
# 
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again 
# 
# An error report file with more information is saved as: 
# /home/kahrabian/java_error_in_PYCHARM_1999.log 
# 
# If you would like to submit a bug report, please visit: 
# http://bugreport.java.com/bugreport/crash.jsp 
# 
/opt/pycharm-professional/bin/pycharm.sh: line 187: 1999 Aborted     (core dumped) LD_LIBRARY_PATH="$IDE_BIN_HOME:$LD_LIBRARY_PATH" "$JDK/bin/java" $AGENT "-Xbootclasspath/a:$IDE_HOME/lib/boot.jar" -classpath "$CLASSPATH" $VM_OPTIONS "-Djb.vmOptionsFile=$VM_OPTIONS_FILES_USED" "-XX:ErrorFile=$HOME/java_error_in_PYCHARM_%p.log" -Djb.restart.code=88 -Didea.paths.selector=PyCharm40 $IDE_PROPERTIES_PROPERTY $IDE_JVM_ARGS $REQUIRED_JVM_ARGS $MAIN_CLASS_NAME "[email protected]" 

,這裏是生成的日誌文件試圖運行pycharm後: http://paste.ubuntu.com/12775734/ ,因爲我無法理解的問題,它的起源,我需要一些幫助來解決這個問題。

回答

3

不幸的是,這是一個已知的不兼容與當前的油嘴和Oracle JVM。

在這裏看到:https://youtrack.jetbrains.com/issue/IDEA-146207 這裏:https://bugzilla.gnome.org/show_bug.cgi?id=755609

有跡象表明,你可以使用暫且幾個解決方法(在這裏找到:https://bugs.archlinux.org/task/46619

  1. 在前面加上PRELOAD=/lib/libglib-2.0.so的命令(例如PRELOAD=/lib/libglib-2.0.so pycharm
  2. 從安裝拱論壇主題此修補油嘴滑舌(我會厭倦使用此解決方案,無需首先檢查這個包的安全性):http://pkgbuild.com/~heftig/glib2-2.46.0-2-x86_64.pkg.tar.xz
  3. 降級的GLib-2,現在(只適用,如果你仍然有老包緩存)。執行此操作的命令將如下所示:pacman -U /var/cache/pacman/pkg/glib2-2.44.1-1-x86_64.pkg.tar.xz。你也可以使用其他工具降級軟件包,比如從AUR降級,只是運行downgrade glib2

希望這個bug很快就會被壓扁。

+0

感謝您的幫助,幸運的是第3方法爲我工作(我沒有測試其它2種方法)。 jdk8-openjdk也有這個問題嗎? – kahrabian

+0

不,pycharm-professional使用jdk8-openjdk在x86_64 arch上構建了我。 – grimsock

1

其他任何人遇到了這個錯誤,不想降級油腔滑調,從步驟#1解決方案需要的命令改爲:

# x64 
LD_PRELOAD=/lib64/libglib-2.0.so pycharm 
# x86 
LD_PRELOAD=/lib/libglib-2.0.so pycharm 
-1

有預建的包在這個回購協議:

[archlinuxcn] 
SigLevel = Optional TrustAll 
Server = http://repo.archlinuxcn.org/$arch 
0

的基礎上通過@ 8bitAce給出了答案:

你其實並不需要爲了使用它來運行pycharm到安裝舊版本glib2。只要某處提取舊glib2包在你的主目錄:

mkdir -p $HOME/oldlibs/pycharm 
tar Jxf /var/cache/pacman/pkg/glib2-2.44.1-1-x86_64.pkg.tar.xz -C $HOME/oldlibs/pycharm 

然後開始pycharm:

LD_PRELOAD=$HOME/oldlibs/pycharm/usr/lib/libglib-2.0.so pycharm 

這樣你的程序的其餘部分(這可能取決於較新的版本glib2)不被迫使用舊的glib2版本,並冒着其他問題的風險。

0

我有同樣的問題。我使用的是OpenJDK JRE 9,這似乎是問題的根源。我後來安裝了Oracle的JRE 8,一切都很好。也許使用OpenJDK JRE 8也可以。