首页 > 解决方案 > GCC中的条件链接

问题描述

在 MSVC 中可以这样写:

// in Lib.h
#if USE_OLD_LIB

    #pragma comment(lib, "old_lib.lib")
    #include "old_lib.h"

#else

    #pragma comment(lib, "new_lib.lib")
    #include "new_lib.h"

#endif

如果没有 GCC 中的编译指示注释支持,我怎么能做到这一点?

编辑:我知道可以使用 make 文件,但是 USE_OLD_LIB 条件宏连接到另一个库中的一些逻辑,如下所示:

// in Lib2.h
#if OBJ_SIZE > 20
#define USE_OLD_LIB
#endif

因此,为此使用make文件会很麻烦。

标签: c++clinkerpragma

解决方案


推荐阅读