c - 特定于体系结构的 header

标签 c

我有一个针对多种不同架构的项目。例如,我有一个处理浮点寄存器的头文件“fpr.h”。这些 header 存在于:

arch/amd64/fpr.h
arch/ppc32/fpr.h
...

我有一个架构相关文件“foo.c”需要包含 fpr.h。 显然,我只希望包含目标架构的 header ,但我不确定最好的方法是什么。我正在尝试为我的构建系统使用 autotools,但我没有看到任何建议的方法来执行此操作。

有什么建议吗?

最佳答案

一种方法是让 autoconf 脚本检测体系结构并设置符号链接(symbolic link) arch/target指向架构特定 header 的正确目录,然后是#include <arch/target/fpr.h> .不过,使用异地构建进行这项工作可能很棘手。

另一种方法是设置一个 arch/target手动目录并用类似 fpr.h.in 的文件填充它由 M4 预处理以引用实际的特定于体系结构的 header 。

关于c - 特定于体系结构的 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7955332/

相关文章:

c - 如何使用iconv 进行utf8 转换?

c - 在双向链表当前位置插入节点

c - OpenMP time 和 clock() 给出了两个不同的结果

在函数中调用指针

c++ - 为什么这个 C++ 代码可以编译?它有什么作用?

Ubuntu下用mingw交叉编译git仓库

c - 读取二进制文件问题

C共享内存

c - 用C语言替换一个字母的程序

C:使用 RLIMIT_FSIZE 设置软限制的问题