函数中的多个符号在静态库中调用

问题描述 投票:0回答:1

我需要编译一个静态库,它继承了具有相同名称的函数,并且这些函数还相互调用。有办法解决我的问题吗?

这是最小的例子:

add_outer.c

#include "bridge.h"

int add(int a, int b){
    return add_bridge(a,b);
}

bridge.c

#include "add_inner.h"

int add_bridge(int a, int b){
    return add(a,b);
}

add_inner.c

int add(int a, int b){
    return a+b;
}

现在我的问题:

  • 我无法改变结构
  • 我根本无法修改代码
  • 它需要编译为静态库 所以我不能使用版本脚本作弊( - >共享库)
c gcc static-libraries
1个回答
0
投票

不要将它们编译在一起,而是写一个.c文件

  1. #define add something_else
  2. 然后#include add_bridge.cadd_inner.c
© www.soinside.com 2019 - 2024. All rights reserved.