最近需要把自己部门的一个动态库(支持 Windows 和 Linux)提供给其他部门让他们去编译成安卓以及 IOS 可用的版本.
在安卓下,他们写了个 makefile 去用 NDK 去编译,不用改动到 C++代码,就直接编译成功了.
而在 IOS 下,却出现一大堆错误,各种头文件没包含进去之类的,需要在代码里面加...........
例如这样的文件:
头文件a.h
#ifndef _A_H
#define _A_H
#define HANDLE void*
#endif
头文件b.h
#ifndef _B_H
#define _B_H
int pp(HANDLE A);
#endif
源文件 main.cpp
#include<iostream>
#include "a.h"
#include "b.h"
using namespace std;
int main()
{
return 0;
}
编译时 xcode 就会提示 b.h 中,HANDLE 为未定义
然后那个负责 IOS 的那个人一直说我们这边代码不规范(这点我承认,但我又不知道说什么,我只是个新来的,代码也都不是我写的),总之感觉他满满的怨念.
我不懂 ios,所以想问下 xcode 去编译 c++的代码,和 windows,Linux,Android 下去编译有什么不同??为何其他几个都能编译通过,就 xcode 编不过.
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.