QMAKE:将静态库链接到另一个静态库

时间:2018-01-12 12:03:40

标签: c++ qt static-libraries qmake

我有一个QMAKE staticlib项目(libtest.a),该项目依赖于子项目(liblogger.a)

我尝试将他添加到test.pro:

LIBS + = -L $$ OUT_PWD /../ libs / logger / -llogger

PRE_TARGETDEPS + = $$ OUT_PWD /../ libs / logger / liblogger.a

但是,最后,qmake pack .a库没有liblogger.a

ar cqs libtest.a libtest.o

我无法使用QMAKE_AR + =或QMAKE_LIBFLAGS + =,我需要使用此AR命令构建静态库

ar cqs libtest.a libtest.o ../ libs / logger / liblogger.a

任何想法?

1 个答案:

答案 0 :(得分:0)

一种可能的策略是添加一个依赖于项目(libtest.a)和子项目(liblogger.a)的自定义构建目标,它通过调用ar输出您正在查找的统一库。

您可以查看qmake的文档here

然后,将该自定义构建步骤设置为包含import asyncio async def test(): await asyncio.sleep(1) if __name__ == '__main__': asyncio.set_event_loop(None) # Clear the main loop. loop = asyncio.new_event_loop() # Create a new loop. loop.run_until_complete(test()) # Run coroutine over the new loop 的项目的依赖项。