在 MacOS X 上运行 Julia:缺少 libc++.1.dy

在 MacOS X 上运行 Julia:缺少 libc++.1.dy

尝试在 MacOS XI 中运行 Julia 0.3.2 时出现以下情况:

dyld: Library not loaded: /usr/lib/libc++.1.dylib
  Referenced from: /Applications/Julia-0.3.2.app/Contents/Resources/julia/bin/julia
  Reason: image not found

当我运行 Julia 0.2.1 时它起作用:

Hermione:~ emd$ exec '/Users/emd/Desktop/Julia-0.2.1.app/Contents/Resources/julia/bin/julia'
               _
   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: http://docs.julialang.org
   _ _   _| |_  __ _   |  Type "help()" to list help topics
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 0.2.1 (2014-02-11 06:30 UTC)
 _/ |\__'_|_|_|\__'_|  |  Official http://julialang.org/ release
|__/                   |  x86_64-apple-darwin12.5.0

julia> 

查看julia0.3.2 的二进制文件,我得到了以下信息:

Hermione:bin emd$ otool -L julia
julia:
    @rpath/libjulia.dylib (compatibility version 0.0.0, current version 0.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 855.17.0)
    /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 59.0.0)
    /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.0.0)

但是julia0.2.1 的二进制文件给出了这样的信息:

Hermione:bin emd$ otool -L julia
julia:
    /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
    @rpath/libjulia.dylib (compatibility version 0.0.0, current version 0.0.0)
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.5)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 744.19.0)
    /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 57.0.0)
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0)

到底是怎么回事?

答案1

通过仔细阅读该网站,我找到了答案。

问题是/usr/lib/libc++.1.dylib在 MacOS X 10.6.8 系统上不存在 - 但为什么呢?MacOS X 10.6.8 使用/usr/lib/libstdc++.6.dylib

所以我想 - 也许它是在较新版本的 MacOS X 上?

下载页面Julia 有这样一个趣闻:

在 Mac 上,提供了 Julia-version.dmg 文件,其中包含 Julia.app。安装与任何其他 Mac 软件相同 - 将 Julia.app 复制到硬盘驱动器(任何地方)或从磁盘映像运行。Julia 支持所有 OS X 10.7 及更高版本。如果您使用 Snow Leopard(OSX 10.6),Julia 0.2.1 是支持它的 Julia 的最后一个版本。

因此,库的差异指出了 Julia 的最低要求:Julia 0.3.2 不支持 MacOS X 10.6。

相关内容