繁体   English   中英

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

[英]Multiple symbols within a function call in a static library

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

这是最小的例子

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文件

  1. #define add something_else

  2. 然后#include add_bridge.cadd_inner.c

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM