静态链接中的共享库,动态链接中的静态库

时间:2012-09-11 11:52:23

标签: shared-libraries static-libraries static-linking dynamic-linking

我正在编写一个MyPak包,其中包含一个库MyLib和一个可执行的MyExe。两者都依赖于第三方库Foobar。根据系统的不同,Foobar可作为共享库或静态库使用。 我也可以自由选择是否共享MyLib或静态。

如果我选择将MyLib编译为共享库,那么如果Foobar也可以共享,那么这将是有意义的。然后,MyExe的链接行将是

gcc -g myexe.c /path/to/mylib.so /path/to/foobar.so

这里连接静态foobar有什么影响,即

gcc -g myexe.c /path/to/mylib.so /path/to/foobar.a

?这被认为是不好的做法;它会对绩效产生负面影响吗?

同样,如果MyLib是静态的,那么

是否有害
gcc -g myexe.c /path/to/mylib.a /path/to/foobar.so

? 后果是系统依赖的吗?

0 个答案:

没有答案