使用Swift Package Manager时出错

时间:2017-04-29 21:55:04

标签: swift opengl swift-package-manager

我正在关注在Swift中使用OpenGL的this教程。它显然取决于GLFW的一些GitHub Repo并使用Package.swift文件将其构建到您的可执行文件中。遗憾的是,在运行指示的构建命令swift build -Xcc -I/usr/local/include -Xlinker -L/usr/local/lib时,我收到以下错误:

  

错误:不再支持空清单文件。使用swift package init自动生成。

当我运行建议的init命令时,我得到:

  

错误:此目录中已存在清单文件

我该怎么办?

1 个答案:

答案 0 :(得分:0)

该教程是为Swift版本2编写的,它已经过时了一段时间。您在该存储库中需要库的唯一原因是它定义了一些必要的OpenGL函数加载器,以使您的程序正确链接。我目前使用的是SGLOpenGL库的修补版本,我将其编译为在Swift 3下编译。我相信这是目前使用OpenGL和Swift的唯一方法。您必须更正Swift UnsafePointer并重写函数参数列表以使用(或删除)命名参数等,因为Swift 3是一个源代码破解版本。编译器通常会告诉你你需要做什么,这只是一些繁琐的工作。

请注意,您不需要任何Turnbull的其他库来使用OpenGL和Swift。您可以轻松(“轻松”)为四元数,向量,矩阵,相机截止等编写自己的Math函数实现.Google是您的朋友,因为大多数这些例程都是计算机中充分研究的问题图形,网上有大量的伪代码和C ++实现,可以帮助您入门。

Image PNG库非常容易替换,但幸运的是,已经存在一个原生的Swift PNG解码器MaxPNG ,旨在用于图形框架。

祝你好运!!!

披露,我是MaxPNG的作者;我之所以写这篇文章,是因为我与几个月前的情况完全相同。