Gnat编程工作室:与GPS 2018并行安装gdb 8.0.1版,以签署gdb代码。经验?

Gnat编程工作室:与GPS 2018并行安装gdb 8.0.1版,以签署gdb代码。经验?,gdb,ada,gnat-gps,Gdb,Ada,Gnat Gps,我在MacOS High Sierra上使用gdb(调试器)时遇到问题。借助 还有其他几个(谢谢!!)我已经收集了修复问题所需的信息: 基本问题是您必须使用证书对代码进行签名 我已经创建了一个证书 我目前使用的gdb是7.10。根据消息来源,这个版本将不起作用,但是没有提到,为什么。最新的gdb 8.1版由于一个bug而无法正常工作,因此建议使用8.0.1版 我正在使用Gnat编程系统(Gnat社区版2018,从AdaCore下载)。该软件包中包含的gdb版本是7.10 这是我的具体

我在MacOS High Sierra上使用gdb(调试器)时遇到问题。借助

还有其他几个(谢谢!!)我已经收集了修复问题所需的信息:

  • 基本问题是您必须使用证书对代码进行签名
  • 我已经创建了一个证书
  • 我目前使用的gdb是7.10。根据消息来源,这个版本将不起作用,但是没有提到,为什么。最新的gdb 8.1版由于一个bug而无法正常工作,因此建议使用8.0.1版
我正在使用Gnat编程系统(Gnat社区版2018,从AdaCore下载)。该软件包中包含的gdb版本是7.10

这是我的具体问题:在我尝试之前,有没有人有过与GPS软件包并行安装gdb 8.0.1的经验?(请注意,我在Linux系统上将GPS与单独安装的gnat软件包混合使用时遇到了一些问题)


或者:为什么GDB7.10版本不起作用?为了尝试一下,我尝试签署了这个版本,但收到了错误消息:“已签署”。

这里不是一个确定的答案!但是在10.13.5版上运行,在
sudo
下运行,以避免代码签名问题(尽管承认存在轻微风险)

  • CE2018版启动程序,但挂起
  • 使用GCC8.1.0构建的GDB8.1崩溃(我发现了一个,但在应用它之后,GDB失败了,尽管没有那么引人注目)
  • GNAT GPL 2017版使用GCC 8.1.0重新构建,挂起
  • GNAT GPL 2017版下载版正常
也许可以用GPL2017版本取代CE2018 gdb,当然是经过代码签名的版本,尽管有大量的支持代码(例如,
$prefix/share/gdb
)可能不太匹配。值得一试

替换的替代方案可能是删除(或重命名)CE2018
$prefix/bin/gdb
,并在CE2018套件之后安排GPL2017套件位于路径上


PS:我签署了CE2018 gdb代码,它运行正常!我感到困惑

有好几行的报告在

warning: `/BuildRoot/Library/Caches/com.apple.xbs/Binaries/Libc_darwin/install/TempContent/Objects/Libc.build/libsystem_darwin.dylib.build/Objects-normal/x86_64/darwin_vers.o': can't open to read symbols: No such file or directory.

这很烦人,但似乎无害。我还没有在GPL2017版中看到这一点。

很抱歉延迟对您的答案做出反应

最终,我签署了gdb。在安装CE2018版本后,尝试对该软件包的gdb进行签名时,给出了与2017版本不同且更好的错误消息。以下是一些细节:

  • 将用户(su)切换为管理员
  • 使用sudo代码符号-f-s
  • 重新启动计算机
  • 启动调试器(在GPS中)后,我必须使用管理员密码授权“开发者工具访问”

运行调试器时,我还会收到与您描述的相同的错误消息。没有必要在.gdbinit文件中添加任何内容(如其他指南中所述)

在咨询了meta关于礼仪的意见后,我决定评论说,在两周左右之前,我将无法尝试您关于签署图书馆的建议,所以难怪我没有立即作出反应。