【发布时间】:2010-10-21 23:43:22
【问题描述】:
在带有 GNU 工具链的 Linux 上,我知道如何使用版本脚本 (gcc -Wl,--version-script=symbols.map) 控制从共享库中导出的符号,但我想在而是命令行。 IOW,我想要相当于
link /EXPORT:foo
来自 MS 工具链。有可能吗?
编辑:
我的问题可能不是很清楚:如果我有一个库 libfoo.so,并且我只想导出库 foo1 和 foo2,我可以去创建一个版本脚本 foo.linux,如下所示
libfoo.so
{
global:
foo1;
foo2;
local:
*;
}
然后做
gcc -shared foo.c -Wl,--version-script=foo.linux -o libfoo.so -soname libfoo.so
我希望能够做这样的事情:
gcc -shared foo.c -Wl,--export-symbol=foo1 -Wl,--export-symbol=foo2 -o libfoo.so -soname libfoo.so
【问题讨论】: