qtmake-两个项目/目标之间的共享资源



我试图用共享文件设置目录,但最终得到了No rule to make target 'position.cpp', ...。我做错了什么?

文件系统树(简化):

Project.pro client  server  shared
./client:
client.pro  main.cpp  main.h
./server:
main.cpp  main.h  server.pro
./shared:
position.cpp  position.h  shared.pri

Project.pro:

TEMPLATE = subdirs
SUBDIRS = client server

client.pro(server.pro看起来类似):

LIBS += $$system(sdl2-config  --libs) -lSDL2_ttf -lSDL2_image -lSDL2_net
QMAKE_CXXFLAGS += $$system(sdl2-config --cflags) -Wall -Wextra -Werror -pedantic -std=c++11
SOURCES += 
    main.cpp
HEADERS += 
    main.h
include(../shared/shared.pri)

shared.pri:

SOURCES += 
    position.cpp
HEADERS += 
    position.h

make找不到引用的position.cpp文件时,可能会出现给定的错误。原因是它试图在.pro而不是.pri文件所在的目录中找到position.cpp。要解决此问题,您可以尝试在.pri文件中使用_PRO_FILE_PWD_变量来正确设置position.cpp(h)文件的路径。

最新更新