2012-03-13 42 views
1

我有一个简单的项目,它使用单个库来运行。Makefile:强制项目在构建时使用动态库或静态库

例如,我的程序被称为“myApp”,并且我有一个库,我已经编译并编译了自己的库libspoonybard。 libspoonybard的生成文件被设置为为该库生成共享对象(.so)和静态库(.a)文件。

-myApp 
--libspoonybard 

我会在编译的时候指定什么(无论是通过命令行标志或生成文件),这样我可以建立“对myApp”既是一个“静态”的版本(即:强制使用libspoonybard.a)和一个“动态”版本(在运行时被迫使用libspoonybard.so)。

我已经尝试了几次关于StackOverflow的类似主题的搜索,但所有结果似乎都集中在如何创建一个静态vs动态库,而不是如何指定要链接哪一个。对不起,如果这是一个转发。

非常感谢大家的帮助。

回答