Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
安装“brew安装llvm”会导致;分段错误:11“;关于马科斯_Llvm_Homebrew - Fatal编程技术网

安装“brew安装llvm”会导致;分段错误:11“;关于马科斯

安装“brew安装llvm”会导致;分段错误:11“;关于马科斯,llvm,homebrew,Llvm,Homebrew,对于某些程序,我需要在Mac(macOS 10.13)上安装llvm。我使用brew安装llvm完成此操作。这会导致分段错误:运行ldstore或其他(基于C++的?)程序时出现11消息。 我怎样才能解决这个问题 这显然与llvm有关,因为brew卸载llvm解决了这个问题(显然ldstore在这种情况下不起作用)。 值得一提的是:我使用原生python 2.7.10 根据我的建议,我运行了lldb ldstore_v11,然后运行了r,结果如下: lldb ldstore_v11 (lldb)

对于某些程序,我需要在Mac(macOS 10.13)上安装
llvm
。我使用
brew安装llvm
完成此操作。这会导致
分段错误:运行
ldstore
或其他(基于C++的?)程序时出现11
消息。 我怎样才能解决这个问题

这显然与
llvm
有关,因为
brew卸载llvm
解决了这个问题(显然
ldstore
在这种情况下不起作用)。 值得一提的是:我使用原生python 2.7.10

根据我的建议,我运行了
lldb ldstore_v11
,然后运行了
r
,结果如下:

lldb ldstore_v11
(lldb) target create "ldstore_v11"
Current executable set to 'ldstore_v11' (x86_64).
(lldb) r
Process 15841 launched: '/Users/swvanderlaan/bin/ldstore_v11' (x86_64)
dyld: Library not loaded: /usr/local/opt/libiomp/lib/libiomp5.dylib
  Referenced from: /Users/swvanderlaan/bin/ldstore_v11
  Reason: image not found
Process 15841 stopped
* thread #1, stop reason = signal SIGABRT
    frame #0: 0x0000000100095216 dyld`__abort_with_payload + 10
dyld`__abort_with_payload:
->  0x100095216 <+10>: jae    0x100095220               ; <+20>
    0x100095218 <+12>: movq   %rax, %rdi
    0x10009521b <+15>: jmp    0x100094a74               ; cerror_nocancel
    0x100095220 <+20>: retq
Target 0: (ldstore_v11) stopped.
lldb ldstore\u v11
(lldb)目标创建“ldstore_v11”
当前可执行文件设置为'ldstore_v11'(x86_64)。
(lldb)r
启动流程15841:“/Users/swvanderlaan/bin/ldstore_v11”(x86_64)
dyld:未加载库:/usr/local/opt/libiomp/lib/libiomp5.dylib
引用自:/Users/swvanderlaan/bin/ldstore\u v11
原因:找不到图像
进程15841已停止
*线程#1,停止原因=信号SIGABRT
帧#0:0x0000000100095216 dyld`u_uabort_u,有效负载+10
dyld`\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
->0x100095216:jae 0x100095220;
0x100095218:movq%rax,%rdi
0x10009521b:jmp 0x100094a74;塞罗鲁诺坎塞尔
0x100095220:retq
目标0:(ldstore_v11)已停止。
奇怪的是,库没有找到,因为我清楚地在我的bash_配置文件中添加了以下行:
export PATH=“/usr/local/opt/llvm/bin:$PATH”
,根据安装消息的建议

希望有人能帮我调试这个

谢谢

砂光机
顺便说一句,我希望很清楚,我不是在开发任何东西,我只是在尝试使用LDSTORE。

问题是这个工具是动态链接到libiomp5.dylib的,它必须存在于

/usr/local/opt/libiomp/lib/libiomp5.dylib
才能工作

根据Stanislav的建议,从下载预编译的二进制文件。它包含您需要的库:
/lib/libiomp5.dylib
。您必须将库复制到
/usr/local/opt/libiomp/lib
,该库可能还不存在


完成此操作后,您将能够运行
ldstore

首先执行
lldb您的程序
,然后按
r
。LLDB应该为您提供有关崩溃的更多信息。我建议您不要使用
brew安装
,而是从中获取LLVM二进制文件。例如,我分别在
/opt/LLVM-3.9
/opt/LLVM-4.0
中为多个版本的LLVM提供了这些二进制文件。这样你就不会让LLVM干扰Mac OS的东西。这就是我作为一名开发人员如何使用LLVM。是的,这就是我所发现的和我所做的。对我来说,
ldstore
以这样一种方式指向某个不能保证工作的东西有点不合逻辑。但不管怎样:它现在起作用了!