下载>从C使用>X代码

这些说明显示了如何设置基本VLFeat公司项目使用Apple Xcode。为了简单起见,我们创建了一个命令用C编写的行工具。然而,这些步骤适用于minor对其他项目类型和C++语言的修改。

首先,让我们创建一个新项目打电话vlfeat-客户端。打开Xcode并选择文件>新建项目>命令行实用程序>标准工具然后单击选择.为您的项目命名(在我们的案例vlfeat-客户端),然后单击保存.

Xcode新项目

现在我们需要添加VLFeat公司到C编译器包含搜索路径。为此,请选择vlfeat-客户端目标和打开信息面板(蓝色按钮,命令-i)。然后选择生成面板,搜索现场标题搜索路径,并添加VLFeat公司根路径(在我们的例子中是只是~/src/vlfeat).

Xcode信息

接下来,我们添加libvl.dylib库库文件到项目资源,以便Xcode链接到它。要执行此操作,请拖动然后放下libvl.dylib库文件(在我们的示例中~/src/vlfeat/bin/maci/libvl.dylib)并单击添加.

Xcode dylib公司

接下来,编辑主要。c(c)源文件并键入以下代码:

#包括int main(int argc,const char*argv[]){VL_PRINT(“你好,世界!”);返回0;}
Xcode编辑

如果您尝试构建项目,它应该编译时没有错误(如果您正在使用C++,请不要忘记包装包括中的语句外部“C”{}块)。然而,如果你尝试要运行程序,它将失败,并抱怨找不到库图像。

Xcode错误

原因是libvl.dylib库使用编译图书馆安装名称平等的@加载程序路径/libvl.dylib。这会导致运行时加载程序来查找同一目录中的库可执行文件。有两种方法可以解决这个问题:第一是在标准位置安装库(例如。/usr/local/lib)并使用耳醇命令更改图书馆安装名称另一种是简单地复制这个libvl.dylib公司可执行目录中的文件。在这里,我们演示第二种技术。

复制libvl.dylib库在可执行目录中,我们添加复制文件项目的构建阶段。右键单击这个vlfeat-客户端在项目面板中选择目标并选择添加>新建生成阶段>新建复制文件生成阶段.选择目标:可执行文件.然后拖放这个libvl.dylib库项目从面板到复制文件夹构建阶段。

Xcode副本 Xcode副本

现在重新生成项目并运行它。它应该正确运行,如果打开调试器控制台,您应该会看到:

Xcode正常