【发布时间】:2018-04-13 10:36:16
【问题描述】:
我正在开发一个使用 C/C++ 库的 Xcode 项目,我已将源代码导入到我的项目中。
我已经创建了对应的桥接头,并且我正在使用我最近创建的测试方法来查看代码是否有效。构建项目时出现错误
Symbol(s) not found for architecture x86_64
Xcode中显示的错误的完整输出是这样的
我的部署目标是 iOS 11,因此任何设备都不应使用 32 位,但我收到与 32 位架构相关的错误。
MyApp-Bridging-Header.h
//
// Use this file to import your target's public headers that you would like to expose to Swift.
//
#import "main.h"
头文件
#ifndef main_h
#define main_h
#include <stdio.h>
int my_print();
#endif /* main.h */
【问题讨论】:
-
什么是 C/C++ 库?没有语言 C/C++。您在哪里看到 32 位的提示?你创建了什么标题?库没有带来所需的标题吗?
-
使用 C 和 C++ 代码的库
-
my_print是否使用 C 编译器编译,并且 main.h 包含在使用 C++ 编译的代码中? -
我没有编译它,我已经将源代码(所有.h和.c文件)导入Xcode。而且我认为它是 Xcode 在我点击 build 时编译库的那个
-
不要垃圾标签。 C 不是 C++ 不是客观的-C 不是……我希望你明白了。并且一个库只能用要么 C 或 C++ 或 Objective C.
标签: c++ xcode bridging-header