首页 文章

Jupyter R内核崩溃了

提问于
浏览
11

我刚从Anaconda安装了R essentials(已经在我的计算机上安装了R),以便在Jupyter中使用R.

现在,当我在Jupyter中打开一个新的R笔记本,几秒钟后(甚至没有输入任何内容),内核崩溃并需要重新启动 .

我在终端上得到的错误是

[I 12:30:36.297 NotebookApp] Kernel started: dd5dd612-2c8f-4235-9619-1cf5a46b3e89

dker.load中的IRkernel :: main()错误(文件,DLLpath = DLLpath,...):无法加载共享对象'/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi /libs/stringi.so':/ home / alberto / anaconda3 / lib / R / library / rzmq / libs /.. / .. / .. / . / libstdc .so.6:版本CXXABI_1.3.8'未找到(需要/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs/stringi.so)调用::: ... tryCatch - > tryCatchList - > tryCatchOne - > <Anonymous> Execution暂停[I 12:30:39.299 NotebookApp] KernelRestarter:重启内核(1/5)IRkernel :: main()dyn.load中的错误(文件,DLLpath = DLLpath,...):无法加载共享对象'/ home /alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs/stringi.so':/ home / alberto / anaconda3 / lib / R / library / rzmq / libs /../../ . 找不到./../libstdc .so.6:versionCXXABI_1.3.8'(/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs/stringi.so要求)调用:: :... tryCatch - > tryCatchList - > tryCatchOne - >执行暂停[I 12:30:42.309 NotebookApp] KernelRest arter:重启内核(2/5)IRkernel :: main()dyn.load中的错误(文件,DLLpath = DLLpath,...):无法加载共享对象'/ home / alberto / R / x86_64-pc-linux -gnu-library / 3.2 / stringi / libs / stringi.so':/ home / alberto / anaconda3 / lib / R / library / rzmq / libs /../../../../libstdc .so.6 :找不到版本CXXABI_1.3.8'(/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs/stringi.so要求)调用::: ... tryCatch - > tryCatchList - > tryCatchOne - > <Anonymous>执行暂停[I 12:30:45.315 NotebookApp] KernelRestarter:重启内核(3/5)IRkernel :: main()dyn.load中的错误(文件,DLLpath = DLLpath,...):无法加载共享对象'/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs/stringi.so':/ home / alberto / anaconda3 / lib / R / library / rzmq / libs找不到/../../../../libstdc .so.6:versionCXXABI_1.3.8'(/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs要求/stringi.so)调用::: ... tryCatch - > tryCatchList - > tryCatchOne - >执行暂停[W 12:30:4 6.485 NotebookApp]超时等待来自dd5dd612-2c8f-4235-9619-1cf5a46b3e89的内核_info回复[I 12:30:48.322 NotebookApp] KernelRestarter:重启内核(4/5)警告:root:kernel dd5dd612-2c8f-4235-9619-1cf5a46b3e89重启IRDEnel :: main()dyn.load中的错误(文件,DLLpath = DLLpath,...):无法加载共享对象'/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi /libs/stringi.so':/ home / alberto / anaconda3 / lib / R / library / rzmq / libs /../../../../libstdc .so.6:版本`CXXABI_1.3.8'不是发现(需要/home/alberto/R/x86_64-pc-linux-gnu-library/3.2/stringi/libs/stringi.so)调用::: ... tryCatch - > tryCatchList - > tryCatchOne - >执行暂停[ W 12:30:51.329 NotebookApp] KernelRestarter:重启失败[W 12:30:51.329 NotebookApp]内核dd5dd612-2c8f-4235-9619-1cf5a46b3e89死亡,从 Map 中删除 . 错误:root:内核dd5dd612-2c8f-4235-9619-1cf5a46b3e89重启失败! [W 12:30:51.361 NotebookApp]在会话之前删除了内核

我想这可能是共享库的一个问题,但我无法弄清楚如何解决它...

2 回答

  • 3

    (仅限TEMP FIX)

    见这个讨论:https://groups.google.com/a/continuum.io/forum/#!topic/conda/nqPfPGYP--g

    我能够使用建议的临时修复程序运行我的内核:

    $ conda remove gcc libgcc

  • 0

    我有同样的问题 . 问题似乎是Jupyter中的R内核正在查看具有较旧版本的ibstdc .so.6的不同位置 .

    以下步骤适用于我(以root身份登录,因为R和python以root用户身份安装):

    cp -fv /usr/local/lib64/libstdc++* /lib64/
    cd /lib64
    ln -sfT libstdc++.so.6.0.21 libstdc++.so.6
    

    说明:

    [root@SERVER ~]# strings /usr/local/lib64/libstdc++.so.6 | grep CXXABI_1.3
    CXXABI_1.3
    CXXABI_1.3.1
    CXXABI_1.3.2
    CXXABI_1.3.3
    CXXABI_1.3.4
    CXXABI_1.3.5
    CXXABI_1.3.6
    CXXABI_1.3.7
    CXXABI_1.3.8
    CXXABI_1.3.9
    CXXABI_1.3
    CXXABI_1.3.2
    CXXABI_1.3.6
    CXXABI_1.3.9
    CXXABI_1.3.1
    CXXABI_1.3.5
    CXXABI_1.3.8
    CXXABI_1.3.4
    CXXABI_1.3.7
    CXXABI_1.3.3
    [root@SERVER ~]# strings /lib64/libstdc++.so.6 | grep CXXABI_1.3
    CXXABI_1.3
    CXXABI_1.3.1
    CXXABI_1.3.2
    CXXABI_1.3.3
    CXXABI_1.3.4
    CXXABI_1.3.5
    CXXABI_1.3.6
    CXXABI_1.3.7
    

    我们可以看到/ lib64 / libstdc .so.6指向比/ usr / local / lib64 / libstdc .so.6更旧的版本 .

    [root@SERVER ~]# ls /lib64/libstdc++.so.* -lrt
    -rwxr-xr-x 1 root root   830776 Mar  5  2015 /lib64/libstdc++.so.5.0.7
    lrwxrwxrwx 1 root root       18 Apr 29  2016 /lib64/libstdc++.so.5 -> libstdc++.so.5.0.7
    lrwxrwxrwx 1 root root       19 Jan 27 01:46 /lib64/libstdc++.so.6 -> libstdc++.so.6.0.19
    -rwxr-xr-x 1 root root 11103508 Feb  3 21:41 /lib64/libstdc++.so.6.0.19
    -rwxr-xr-x 1 root root 11103508 Feb  3 21:41 /lib64/libstdc++.so.6.0.21
    -rw-r--r-- 1 root root     2397 Feb  3 21:41 /lib64/libstdc++.so.6.0.21-gdb.py
    [root@SERVER ~]# ls /usr/local/lib64/libstdc++* -lrt
    -rwxr-xr-x 1 root root      905 Jun 15  2016 /usr/local/lib64/libstdc++fs.la
    -rw-r--r-- 1 root root 10964026 Jun 15  2016 /usr/local/lib64/libstdc++fs.a
    -rwxr-xr-x 1 root root 11103508 Jun 15  2016 /usr/local/lib64/libstdc++.so.6.0.21
    lrwxrwxrwx 1 root root       19 Jun 15  2016 /usr/local/lib64/libstdc++.so.6 -> libstdc++.so.6.0.21
    lrwxrwxrwx 1 root root       19 Jun 15  2016 /usr/local/lib64/libstdc++.so -> libstdc++.so.6.0.21
    -rwxr-xr-x 1 root root      965 Jun 15  2016 /usr/local/lib64/libstdc++.la
    -rw-r--r-- 1 root root 28847974 Jun 15  2016 /usr/local/lib64/libstdc++.a
    

    因此,我将所有libstd文件从/ usr / local / lib64复制到/ lib64,然后将软链接更改为指向新版本 .

相关问题