使用 Xcode 进行 Blink 构建失败

使用 Xcode 进行 Blink 构建失败

我发现适用于 Mac 的 GPL-ed SIP 客户端 Blink。我想从源代码构建它,因为二进制文件只能作为付费下载。

仅供参考,我在大学学习编程,但没有从源代码构建复杂应用程序的经验。

下载完存储库内容后,我打开了 Xcode 项目并尝试在 OS X 10.7、Xcode 4.2.1 上构建。不幸的是,构建失败,出现 1 个错误和许多警告。大多数警告如下:

Attribute Unavailable: Custom Identifiers in Interface Builder versions prior to 3.2

错误信息是:

Apple Mach-O Linker (ld) Error
Command /Developer/usr/bin/clang failed with exit code 1

警告之前

Apple Mach-O Linker (ld) Warning
directory not found for option '-L/Users/Sergio/Downloads/Blink/devel.ag-projects.com/repositories/public/blink-cocoa/Distribution/Frameworks'

我注意到在所需文件列表中缺少以下文件:

Dependencies/Frameworks
libgcrypt.11.6.0.dylib
libgcrypt.11.dylib
libgnutls-extra.26.dylib
libgnutls.26.dylib
libgpg-error.0.dylib
libintl.8.dylib
liblzo.1.dylib
libtasn1.3.dylib

Dependencies/Resources
lib

Frameworks/Linked Frameworks
Sparkle.framework

Products
Blink.app

应该可以从某个地方下载这些文件。不幸的是,谷歌搜索没有帮助。项目网站上没有文档。

正如 Kifosis 所说,开发者网站上的人们建议遵循本指南 ,不幸的是它很长,很不清楚(至少对我来说)并且似乎我必须安装大量的依赖项,每个依赖项都有单独的下载网站,单独的有关如何构建它们的说明以及可能单独的依赖项。

在我看来,所有这些都非常令人困惑,难道我真的必须安装一堆软件,只是因为它们没有在项目目录中包含一些文件吗?我知道 GPL v3 可能允许这样做,但它只会鼓励人们依赖第三方服务器(将来可能无法使用)和支持文档,更不用说当提供的链接太通用时,让人们没有真正合适的方法来完成工作。

我不是安装此必需依赖项的专家,我按照我提到的指南进行操作,但是当我输入

curl -O ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error- 1.10.tar.bz2

结果是这样的:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (78) RETR response: 550
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="http://ar.libero.it/nxd_an.html">here</a>.</p>
</body></html>

答案1

这不起作用的原因是libgpg-error-和 之间有一个空格1.10.tar.bz2

curl -O ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error- 1.10.tar.bz2

如果你运行它,它会起作用:

curl -O ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.10.tar.bz2

答案2

我设法在 OS X Mavericks 上构建了它。我找不到自己构建这些依赖项的简单方法,因此我从他们的一个免费品牌 Blink 客户端中复制了它们。

我已经创建了一个带有说明的要点:https://gist.github.com/lucaspiller/8194862

答案3

看起来他们故意“忘记”了这些库!我认为最好的办法是直接联系他们,询问他们从哪里可以得到构建应用程序所需的所有东西。

我不是 GPL 专家,但我认为他们有义务至少向您提供必要库的链接,只要它们也获得了 GPL 许可,否则他们使用 GPL 只是为了说“嘿,我们很酷,我们使用 copyleft”,并且实际上没有提供任何方式来构建他们的程序,因此违背了作为开源项目的目的,甚至违背了 GPL 许可项目的目的,而 GPL 许可项目应该是完全 copyleft 的……

如果成功的话请告诉我。

否则,我很乐意购买该应用程序,然后询问我是否可以获得可用的源代码树;如果他们拒绝,这显然违反了 GPL 的原则。

祝你好运!

PS:商业 IDE Komodo(可免费试用)也可能有助于构建项目,因为后者似乎包含此 IDE 的项目文件

答案4

这是我给他们发的电子邮件的回复:

来自 Adrian Georgescu (农业项目)

这些库是来自第三方的依赖项。请参阅 SIP SIMPLE Client SDK 文档以了解如何在 Mac 或其他操作系统上构建它们,因为它们不是 Blink 依赖项而是 SIP SIMPLE Client SDK 依赖项。

您可以在以下位置找到这些文件本网站也提供了指南。但下载部分仍缺少此链接BLINK 网站那么他们应该更新这个。

相关内容