Sublimetext3 崇高+;IJulia:ZMQ库未找到

Sublimetext3 崇高+;IJulia:ZMQ库未找到,sublimetext3,julia,Sublimetext3,Julia,我为sublime安装了IJulia软件包。当我启动sublime时,我发现ZMQ共享库未找到… 我试图从Julia那里找到ZMQ: julia> using ZMQ julia> println(ZMQ.zmq) C:\Users\Nick\.julia\v0.3\WinRPM\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin\libzmq.DLL 我打开包设置-IJulia-user,修改了此行中的路径: "zmq_shar

我为sublime安装了IJulia软件包。当我启动sublime时,我发现
ZMQ共享库未找到…

我试图从Julia那里找到ZMQ:

julia> using ZMQ

julia> println(ZMQ.zmq)
C:\Users\Nick\.julia\v0.3\WinRPM\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin\libzmq.DLL
我打开包设置-IJulia-user,修改了此行中的路径:

    "zmq_shared_library": "~/.julia/v0.3/WinRPM/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/libzmq.dll",
重新启动升华,我得到了这个:

Unable to find an entry point ... libstdc++-6.dll
我该怎么办

环境:

Windows 7, 64-bit
Julia v"0.3.8"
Sublime text 3

更新-内核死亡

我发现这里有一个问题:

引述:

tildebyte于2月28日发表了评论

回答我自己的问题:libstdc++-6.dll存在于两个地方:Sublime Text 3 Beta\Data\Packages\IJulia\windeps和 .julia\v0.3\WinRPM\deps\usr\x86\u 64-w64-mingw32\sys root\mingw\bin。 i、 例如,插件附带的版本与 libzmq链接到。我通过复制ZMQ的libstdc DLL修复了它 从mingw\bin进入插件的windeps目录。因此,是的,我同意: @M-Marz libzmq可能与插件不匹配,或者他有 另一个libzmq在路径的某个地方,ST首先找到了它

因此,我试图将
libstdc++-6.dll
.julia\v0.3\WinRPM\deps\usr\x86\u 64-w64-mingw32\sys root\mingw\bin
复制到
Sublime Text 3 Beta\Data\Packages\IJulia\windeps

升华停止抱怨ZMQ库未找到或找不到入口点;然而,当我尝试
Ctrl-shift-p,打开ijulia
,我得到了
***内核死亡***

我搜索了我的系统,发现有几个
libstdc++-6.dll
用于几个单独的应用程序:Julia、Evernote、VLC

我怎么才能知道出了什么问题


更新-“内核死亡”问题已解决

我在这里发现了同样的问题:

感谢@GregPlowman:

最后,在玩了很多之后,我终于得到了崇高的伊朱利亚 在Windows上工作

某些文件路径的处理方式似乎有所不同。(也许有一些 直接使用Windows,其他由Julia提供,并进行了一些分析

在任何情况下,都需要注意Windows上的文件路径:

absolute or relative
quoting entire pathname (especially important if path name has spaces)
path separators ( forward or back slash / vs \ )
我玩了很多组合,弄糊涂了。 然而,我认为Julia可执行路径应该是绝对的 (如果路径名中有空格)并使用反斜杠。ZMQ和内核路径名 可以是相对的,应该不加引号,并使用正斜杠分隔符

下面是从Sublime用户设置文件中提取的Windows文件,该文件有效 对我来说:

“窗口”:{ “zmq_共享库”:“~/.julia/v0.3/zmq/deps/usr/lib/libzmq.dll”,
“命令”:[ { “命令名称”:“默认值”, “julia”:“\”C:\Program Files\julia-0.3.5\bin\julia.exe\”, “julia_args”:”, “ijulia_内核”:“~/.julia/v0.3/ijulia/src/kernel.jl” } ]}

请注意,要引用路径名,请使用\“,并使用反斜杠路径 分隔符使用\

干杯,格雷格

吸取的教训

当opensourse软件出错时,首先要找到解决方案的是github的问题。多亏了@tidlebyte和@GregPlowman。(他们都引发了问题,并自己找到了解决方案。)

简要回答:

未找到ZMQ库的解决方案

步骤1:

(1) 将所有内容从IJulia包设置-默认值复制到包设置-用户

(2) 查找ZMQ库路径

julia> using ZMQ

julia> ZMQ.zmq
"C:\\Users\\Nick\\.julia\\v0.3\\WinRPM\\deps\\usr\\x86_64-w64-mingw32\\sys-root\\mingw\\bin\\libzmq.DLL"
(3) 根据(2)修改
zmq_共享_库
路径

步骤2:将
libstdc++-6.dll
C:\\Users\\Nick\\.julia\\v0.3\\WinRPM\\deps\\usr\\x86\u 64-w64-mingw32\\sys root\\mingw\\bin\\\
复制到
C:\Users\Nick\AppData\Roaming\Sublime Text 3\Packages\IJulia\windeps
(是,覆盖。)


内核死机的解决方案

修改IJulia包设置-用户中的路径

"windows": {
    "zmq_shared_library": "C:/Users/Nick/.julia/v0.3/WinRPM/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/libzmq.DLL",
    "commands": [
        {
            "command_name": "default",
            // "julia": "julia-readline.exe",
            "julia": "\"C:\\application\\Julia-0.3.8\\bin\\julia.exe\"",
            "julia_args": "",
            "ijulia_kernel": "~/.julia/v0.3/IJulia/src/kernel.jl"
        }
    ]
}
请特别注意路径上的引号。尤其是整个路径的引号


再次感谢@tidlebyte和@GregPlowman的早期探索和解决方案。如果有人在上述任何一个步骤上卡住了,请告诉我

我认为你可以从你的问题中删去答案,创造一个答案。干得好@我做的真是太糟糕了。感谢您的提醒。对于“未找到ZMQ库”问题,您可以通过Julia(如您所述)查找ZMQ库路径,然后只需编辑IJulia配置文件(升华>首选项>软件包设置>升华IJulia>设置-默认)并更正“ZMQ_共享_库”路径的值即可解决该问题。