Loongnix安装PyCharm Community 2020.2.3的教程详解

 更新时间:2020年11月27日 10:26:05   作者:DexterLien  
这篇文章主要介绍了Loongnix安装PyCharm Community 2020.2.3的教程详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

安装java运行环境

Loongnix官方仓库里面的openjdk1.8.0_212版本, 已经测试通过

$ sudo yum install -y java-latest-openjdk
$ java -version
# openjdk version "1.8.0_212"

下载程序包

官网下载地址:
https://www.jetbrains.com/pycharm/download/other.html

本文撰写时使用的是Linux2020.2.3版本tar.gz格式压缩包

解压程序包并运行

$ tar -zxvf pycharm-community-2020.2.3.tar.gz
$ cd pycharm-community-2020.2.3
$ ./bin/pycharm.sh

手动启动正常, 没有报错

添加快捷方式到xfce4的程序菜单中

$ vim ~/.local/share/applications/jetbrains-pycharm-ce.desktop

编辑内容如下:

[Desktop Entry]
Version=1.0
Type=Application
Name=Pycharm Community Edition
Icon=/home/lpwm/Apps/pycharm-community-2020.2.3/bin/pycharm.png
Exec="/home/lpwm/Apps/pycharm-community-2020.2.3/bin/pycharm.sh" %f
Comment=人生苦短,我用Python
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-pycharm-ce

解决Terminal无法启动问题

在PyCharm中打开Terminal面板遇到了错误:

在这里插入图片描述

查看了下~/.cache/JetBrains/PyCharmCE2020.2/log/idea.log日志

Suppressed: java.io.IOException: Native library (home/lpwm/Apps/pycharm-community-2020.2.3/lib/pty4j-native/linux/x86_64/libpty.so) not found in resource path (/home/lpwm/Apps/pycharm-community-2020.2.3/lib/bootstrap.jar:/home/lpwm/Apps/pycharm-community-2020.2.3/lib/extensions.jar:/home/lpwm/Apps/pycharm-community-2020.2.3/lib/util.jar:/home/lpwm/Apps/pycharm-community-2020.2.3/lib/jdom.jar:/home/lpwm/Apps/pycharm-community-2020.2.3/lib/log4j.jar:/home/lpwm/Apps/pycharm-community-2020.2.3/lib/trove4j.jar:/home/lpwm/Apps/pycharm-community-2020.2.3/lib/jna.jar)

调用lib/pty4j-native/linux/x86_64/libpty.so的时候出现了问题,关键是我这是MIPS64架构,看来还得动手解决了,参考stackoverflow上的这个问题进行解决:https://stackoverflow.com/questions/62850986/pycharm-terminal-not-working-on-raspbian-os

主要过程就是从JetBrains官方的git仓库中克隆pty4j代码,在本地使用gcc编译libpty.so动态链接文件(类似于Windows 中的DLL文件),最后用编译的so文件替换之前的x86_64架构适用的文件

$ sudo yum install -y git
$ git clone https://github.com/JetBrains/pty4j.git
$ cd pty4j/native
$ gcc -fPIC -c *.c
$ gcc -shared -o libpty.so *.o
$ rm /home/lpwm/Apps/pycharm-community-2020.2.3/lib/pty4j-native/linux/x86_64/libpty.so
$ cp libpty.so /home/lpwm/Apps/pycharm-community-2020.2.3/lib/pty4j-native/linux/x86_64/

搞定后重启一下PyCharm,再开Terminal面板就正常了

在这里插入图片描述

解决External file changes sync may be slow问题

跟上面的问题类似,PyCharm官方对非x86平台的支持并不完美,还是需要手工编译相关的依赖,这里需要手工编译一个叫fsnotifier的应用,官方文档:https://confluence.jetbrains.com/display/IDEADEV/Compiling+File+Watcher

按照官方文档上说的流程进行编译,结果不出意外的悲剧了,报错

[lpwm@sugon fix]$ sh make.sh 
*** Compiling platform-specific version (fsnotifier-mips64)...
main.c: 在函数‘report_event'中:
main.c:436:16: 警告:initialization discards ‘const' qualifier from pointer target type
  char* copy = path, *p;
        ^

不过倒是生成了fsnotifier-mips64二进制文件,貌似没影响吧,继续后面的操作

$ cp fsnotifier-mips64 ~/Apps/pycharm-community-2020.2.3/bin/

重新启动PyCharm, 点击菜单栏中的Help-Edit Custom Properties,提示创建idea.properties配置文件,写入下面内容

idea.filewatcher.executable.path = fsnotifier-mips64

重启PyCharm, 欧耶!没有提示了!

到此这篇关于Loongnix安装PyCharm Community 2020.2.3的教程详解的文章就介绍到这了,更多相关Loongnix安装PyCharm Community内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Git配置用户签名方式及原因说明

    Git配置用户签名方式及原因说明

    这篇文章主要为大家介绍了Git配置用户签名方式及原因说明,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04
  • Atlassian系列产品及插件激活方法[JIRA8.19.0+]

    Atlassian系列产品及插件激活方法[JIRA8.19.0+]

    Atlassian家有很多产品,都真的非常好用。比如公司使用JIRA做项目管理,使用Confluence做文档、知识管理等(我个人用它来做笔记)。本文给大家分享Atlassian系列产品及插件激活方法[JIRA8.19.0+],感兴趣的朋友参考下吧
    2021-12-12
  • 使用Spark进行实时流计算的方法

    使用Spark进行实时流计算的方法

    这篇文章主要介绍了用Spark进行实时流计算的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • 本地搭建DeepSeek-R1、WebUI的完整过程及访问

    本地搭建DeepSeek-R1、WebUI的完整过程及访问

    这篇文章主要介绍了本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主要用于大语言模型的本地部署和管理,通过Docker和Ollama工具,用户可以在自己的服务器上运行DeepSeek-R1,并通过WebUI交互和测试,需要的朋友可以参考下
    2025-02-02
  • Git工作流演示及三种工作方式

    Git工作流演示及三种工作方式

    在项目开发过程中使用Git的方式有三种工作方式,分别是集中式工作流,Git Flow工作流,Forking 工作流。下面主要针对Git工作流进行讲解
    2022-04-04
  • HTTP缓存之ETag使用经验及效果

    HTTP缓存之ETag使用经验及效果

    服务器首先产生ETag,服务器可在稍后使用它来判断页面是否已经被修改。本质上,客户端通过将该记号传回服务器要求服务器验证其(客户端)缓存。这种机制允许缓存更有效并节省带宽,因为如果内容没有更改,Web 服务器不再需要发送完整的响应。
    2023-05-05
  • win10安装Anaconda+tensorflow2.0-CPU+Pycharm的图文教程

    win10安装Anaconda+tensorflow2.0-CPU+Pycharm的图文教程

    本文通过图文并茂的形式给大家介绍了win10安装Anaconda+tensorflow2.0-CPU+Pycharm的教程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • 字符编码笔记 ASCII,Unicode和UTF-8

    字符编码笔记 ASCII,Unicode和UTF-8

    下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易懂,希望能对其他朋友有用。毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识
    2012-08-08
  • aop的实现原理_动力节点Java学院整理

    aop的实现原理_动力节点Java学院整理

    这篇文章主要介绍了aop的实现原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • AIGC与虚拟现实(VR)的结合与应用前景分析

    AIGC与虚拟现实(VR)的结合与应用前景分析

    随着AIGC与VR技术的不断进步,两者的结合为教育、娱乐、医疗等领域带来了新机遇,AIGC可以自动生成文本、图像等内容,结合VR技术,为用户提供更加丰富和互动的体验,本文探讨了AIGC与VR的结合方式、应用案例和未来发展趋势
    2024-11-11

最新评论