我试图让SCons创建一个共享库。进入.so
的项目之一是一个.a
静态库。SCons与静态库(.a)共享库(.so)
我有这样一句台词:
env_2.SharedLibrary('libstuff.so', \
Split("""stuff.cxx mylib/libMine.a""")
而且一旦运行它,我得到这个错误:
scons: *** Source file: mylib/libMine.a \
is static and is not compatible with shared target: libstuff.so
但是,我知道,共享库可以从.a
通过进行像这样的命令:
g++ -m32 -shared -o libstuff.so stuff.o mylib/libMine.a
任何想法让这个工作或任何解决方法将大大appr eciated。
相关问题:我怎么scons的把LINK命令行上附加的字符串-shared
为Program()
电话吗?如果我能做到这一点,我认为它会满足我的需求。
我认为你是对的。一个具有使用的.o -fPIC没有取得文件。然而,g ++ -m32共享......仍然以某种方式工作。 – xavjuan 2010-02-11 23:40:34
我回去了,并且使用-fPIC编译了.a文件,但这似乎没有帮助。 – xavjuan 2010-02-12 02:08:22
LINKFLAGS很有帮助。谢谢。 – xavjuan 2010-02-16 16:08:29