如何使用 qmake 使中间目标文件不是库?
How to make intermediate object file not a library using qmake?
文件系统布局:
MyProject
|_ myproject.pro
|_ FuncA
|_ core.cpp
|_ core.h
|_ core.pro
|_ app
|_ main.cpp
|_ app.pro
我只想在 FuncA 中编译 "core.cpp" 以生成目标文件而不是库。即"gcc -c core.cpp"。在应用程序中,我想让主程序链接之前创建的 core.o。
在这种情况下,我该如何制作core.pro?我应该使用哪个模板?
可以使用 core.pro
的通用 app
模板。它会创建中间 core.o
无论如何,你可以 link 稍后在 app.pro
中像这样:
LIBS += $$PWD/../FuncA/core.o
我用 "static library config" 解决了这个问题,这样它就不会生成“.so”库,然后 link 带有主程序的静态库。
TEMPLATE = lib
CONFIG += staticlib
文件系统布局:
MyProject
|_ myproject.pro
|_ FuncA
|_ core.cpp
|_ core.h
|_ core.pro
|_ app
|_ main.cpp
|_ app.pro
我只想在 FuncA 中编译 "core.cpp" 以生成目标文件而不是库。即"gcc -c core.cpp"。在应用程序中,我想让主程序链接之前创建的 core.o。
在这种情况下,我该如何制作core.pro?我应该使用哪个模板?
可以使用 core.pro
的通用 app
模板。它会创建中间 core.o
无论如何,你可以 link 稍后在 app.pro
中像这样:
LIBS += $$PWD/../FuncA/core.o
我用 "static library config" 解决了这个问题,这样它就不会生成“.so”库,然后 link 带有主程序的静态库。
TEMPLATE = lib
CONFIG += staticlib