c - 如何使用 Xcode 编译 C 程序,以便在沙箱中使用二进制文件?

标签 c swift xcode sandbox entitlements

我有一个 Cocoa 应用程序,它运行我包含在项目中的二进制可执行文件,除非我打开沙盒。我想启用沙盒,所以我需要一种方法来授权该程序的运行。我有源代码——这个二进制可执行文件是一个大包的一部分,它带有一个 shell 脚本,用于制作该软件以及其他一些程序。它在我的 Mac 上使用此脚本成功编译。

我在 stackoverflow 上找到了另一篇文章,其中建议 C 代码可以与应用程序的其余部分一起在 XCode 中编译,并且允许以这种方式执行。

这是真的吗?我想将 C 代码编译为我的应用程序的一部分并运行它创建的二进制可执行文件。

最佳答案

我明白了。

正如 trojanfoe 所建议的那样,代码签名有效。

codesign -s "Me"theBinary

问题是我的 Swift 行,

Bundle.main.url(forAuxiliaryExecutable: "theBinary")

我把它改成了,

Bundle.main.url(forResource: "theBinary", withExtension: nil)

现在可以了。好吧!只花了我 99 美元。

关于c - 如何使用 Xcode 编译 C 程序,以便在沙箱中使用二进制文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54887156/

相关文章:

iphone - 我目前有一个加速计 Action ,可以显示图像但不会清除/重置

ios - 当前页面点较大的页面控件不起作用(带滚动的 UIPageControl)

c - 使数组内容易变的正确语法?

c - 椭圆曲线密码学的 C 语言实现

swift - 如何仅在 Swift 中将一个 View Controller 的方向锁定为纵向模式

ios - 如何在 macOS Mojave 10.14.6 上运行 Xcode 11.4

c - 为什么 malloc() 和 printf() 被称为不可重入?

c# - 如何在 C# Windows 应用程序中使用 RichEdit20W 控件?

ios - 滑动以在新的 View Controller 中显示第二张图片

ios - 协议(protocol)扩展中的 Swift 闭包