【问题标题】:GCC use headers under a different name at preprocessing timeGCC 在预处理时使用不同名称的标头
【发布时间】:2013-01-06 12:19:50
【问题描述】:

是否可以在进行预处理时请求 gcc(或 cpp?)将代码中的头文件导入链接到不同的头?例如,如果我有一个使用大量#import <GL/gl.h> 的大型代码库,而在系统上我正在编译的OpenGL 头文件驻留在#import <OpenGL/gl.h> 中,我是否可以请求预处理器将GL 中的所有导入请求链接到OpenGL? 编辑:重点是不要编辑源代码。就像假设您唯一可以访问的文件是 Makefile。

【问题讨论】:

  • 如果您的文件系统支持符号链接,那么将GL 链接到OpenGL 不是更容易吗?我可以在本地为您的项目创建符号链接,以免污染系统范围的目录。

标签: gcc c-preprocessor


【解决方案1】:

是的,您可以预处理包含或导入名称。技术被称为“计算包含”并记录在案here

 #define GL_H "GL/gl.h"
 ...
 #include GL_H

#import 在这种情况下的行为必须与#include 相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-28
    • 1970-01-01
    相关资源
    最近更新 更多