【发布时间】:2015-05-30 01:01:33
【问题描述】:
我为 sublime 安装了 IJulia 包。当我开始升华时,我得到了ZMQ shared library not found...。
我尝试从 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
我打开Package settings - IJulia - user,修改了这一行的路径:
"zmq_shared_library": "~/.julia/v0.3/WinRPM/deps/usr/x86_64-w64-mingw32/sys-root/mingw/bin/libzmq.dll",
重启sublime,我明白了:
Unable to find an entry point ... libstdc++-6.dll
我该怎么办?
环境:
Windows 7, 64-bit
Julia v"0.3.8"
Sublime text 3
更新 - 内核死机
我发现这里有问题:
https://github.com/quinnj/Sublime-IJulia/issues/64
引用:
tildebyte 于 2 月 28 日发表评论
回答我自己的问题:libstdc++-6.dll 存在于 2 个地方:Sublime 文本 3 Beta\Data\Packages\IJulia\windeps 和 .julia\v0.3\WinRPM\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin。 即,插件随附的版本与该版本不匹配 libzmq 被链接到。我通过复制 ZMQ 的 libstdc DLL 来修复它 从 mingw\bin 到插件的 windeps 目录。所以,是的,我同意: @M-Marz libzmq 可能与插件不匹配,或者他有 路径中某处的另一个 libzmq,ST 首先找到。
所以我尝试将libstdc++-6.dll 从.julia\v0.3\WinRPM\deps\usr\x86_64-w64-mingw32\sys-root\mingw\bin 复制到Sublime Text 3 Beta\Data\Packages\IJulia\windeps。
Sublime 停止抱怨 ZMQ 库未找到或找不到入口点;然而,当我尝试Ctrl-shift-p, open ijulia 时,我得到了***kernel died***。
我搜索了我的系统,发现有几个 libstdc++-6.dll 用于几个单独的应用程序:Julia、Evernote、VLC ...
我怎样才能找出问题所在?
更新 - “内核死机”已解决
我在这里发现了同样的问题:
https://github.com/quinnj/Sublime-IJulia/issues/60
感谢@GregPlowman:
最后,在玩了很多之后,我设法得到了 Sublime-IJulia 在 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_shared_library": "~/.julia/v0.3/ZMQ/deps/usr/lib/libzmq.dll",
“命令”:[ { "command_name": "默认", "julia": "\"C:\Program Files\Julia-0.3.5\bin\julia.exe\"", “julia_args”:“”, “ijulia_kernel”:“~/.julia/v0.3/IJulia/src/kernel.jl” } ] }请注意,引用路径名使用 \",并使用反斜杠路径 分隔符使用 \.
干杯,格雷格
经验教训
当一个开源软件出现问题时,首先要找到解决方案的地方是来自 github 的问题。感谢@tidlebyte 和@GregPlowman。 (他们俩都解雇了这个问题,并自己找到了解决方案。)
【问题讨论】:
-
我认为您可以从您的问题中删除解决方案并创建一个答案。干得好!
-
@Impon_de_Rable 我做到了。谢谢你的提醒。
标签: sublimetext3 julia