导入没有git的C库

时间:2016-11-24 20:09:28

标签: swift

有没有办法在不创建git存储库的情况下在Swift项目中包含C库?这似乎是包管理器文档中的the only way explained。启动一个git repo只是为了包含一些已经在我的计算机上的C头,这看起来很笨拙。

我尝试在模块中使用module.map文件,就像任何纯Swift模块一样,并且C模块导入正常,但不包含符号。

这就是我的项目:

Project
├── Package.swift
└── Sources
    ├── Project
    │   └── main.swift
    ├── The_C_module_i_want
    │   ├── module.modulemap
    │   └── Package.swift (empty, else it won’t compile)
    └── Some_Swift_module
        └── taylor.swift

顶级Package.swift看起来像

import PackageDescription

let package = Package(name: "Project",
                targets   : [
                             Target(name: "Project", 
                                    dependencies: ["Some_Swift_module", 
                                                   "The_C_module_i_want"]),
                             Target(name: "Some_Swift_module"),
                             Target(name: "The_C_module_i_want")
                            ]
                )

,模块图如下所示:

module The_C_module_i_want {
    header "/usr/local/include/The_C_library/the_c_library.h"
    export *

    link ...
    link ...
    ...
}

0 个答案:

没有答案