gcc跨平台编译
来源:互联网 发布:手机淘宝更新在哪里 编辑:程序博客网 时间:2024/06/08 20:13
在OSX下编译报找不到malloc.h,经过查询是头文件位置不兼容,于是搜索资料,看如何通过宏来兼容不同平台。
在OSX下可以通过 gcc -arch i386 -dM -E - < /dev/null | sort
查看gcc定义的预编译宏。
可以添加如下代码进行兼容
#ifdef _WIN32 //define something for Windows (32-bit and 64-bit, this part is common) #ifdef _WIN64 //define something for Windows (64-bit only) #else //define something for Windows (32-bit only) #endif#elif __APPLE__ #include "TargetConditionals.h" #if TARGET_IPHONE_SIMULATOR // iOS Simulator #elif TARGET_OS_IPHONE // iOS device #elif TARGET_OS_MAC // Other kinds of Mac OS #else # error "Unknown Apple platform" #endif#elif __ANDROID__ // android#elif __linux__ // linux#elif __unix__ // all unices not caught above // Unix#elif defined(_POSIX_VERSION) // POSIX#else# error "Unknown compiler"#endif
譬如malloc.h是这样的:
#ifdef __APPLE__#include <sys/malloc.h>#else#include <malloc.h>#endif
0 0
- gcc跨平台编译
- 详解如何编译一个跨平台GCC
- gcc 编译平台选项
- 1. PC端的gcc编译平台
- windows平台安装gcc等编译工具
- 跨平台编译含中文源码方法(MSVC和GCC)
- Linux平台下关于GCC编译及使用的方法
- Linux 平台下的GCC的编译及使用
- GCC 4.5在SUSE平台下编译选项
- 在Windows平台上使用GCC编译C程序
- iperf 跨平台编译
- QT 跨平台编译
- 跨平台的编译
- 跨平台编译问题
- c++跨平台编译
- golang跨平台编译
- minicom跨平台编译
- Golang 跨平台编译
- linux c/c++知识点整理(一)
- Linux开发十六_nand驱动
- 5种常见排序算法的完整实现
- Redis集群管理
- Linux开发十七_yaffs文件系统
- gcc跨平台编译
- java编译与运行
- 单链表
- Linux开发十八_网卡驱动
- 文章标题
- java中==与equal的区别
- mybatis-spring整合异常SpringManagedTransaction.getTimeout()Ljava/lang/Integer
- Linux开发十九_nfs文件系统
- java编程中常见内容+++++++++++++++++++++++++++++++++++++++++++++++++++==