如何创建与现有Makefile等效的Qt Creator项目(.pro)文件

时间:2016-09-08 02:08:16

标签: qt makefile qt-creator gnu-make

有一个项目是通过make命令构建的,其中提供了Makefile。以下是Makefile内容:

TARGETT=gnulinux
OROPATH=/usr/local
CXXFLAGS=-I${OROPATH}/include -DOROCOS_TARGET=${TARGETT} -Wall
LDFLAGS=-L${OROPATH}/lib -Wl,-rpath ${OROPATH}/lib -lorocos-taskbrowser-${TARGETT} -lorocos-rtt-${TARGETT}

all: main

main.o: main.cpp
    $(CXX) -c main.cpp $(CXXFLAGS)

AHRS.o: AHRS.cpp AHRS.h
    $(CXX) -c AHRS.cpp $(CXXFLAGS)

main: main.o AHRS.o 
    $(CXX) -g -o main main.o AHRS.o $(CXXFLAGS) $(LDFLAGS)

clean:
    rm -f main orocos.log .tb_history *.o 

但我习惯使用QtCreator。我知道QtCreator在构建过程中从项目(.pro)文件构造自己的makefile。因此,我认为必须将相关信息从Makefile内容(上面)复制到Qt Creator项目文件中,以允许QtCreator生成兼容的makefile。正确?

鉴于上面的Makefile,.pro文件应该是什么样的?

在这个过程的最后,我将能够从QtCreator开始工作。

1 个答案:

答案 0 :(得分:0)

  

鉴于上面的Makefile,.pro文件应该是什么样的?

像这样:

TEMPLATE = app
TARGET = AHRS # the desired filename of the executable goes here
OROPATH = /usr/local
INCLUDEPATH += $${OROPATH}/include
O_TARGET = gnulinux
DEFINES += OROCOS_TARGET=$${O_TARGET}
QMAKE_RPATHDIR += -L$${OROPATH}/lib
LIBS += -L$${OROPATH}/lib 
LIBS += -lorocos-taskbrowser-$${O_TARGET} -lorocos-rtt-$${O_TARGET}

SOURCES += main.cpp AHRS.cpp
HEADERS += AHRS.h

请注意,Qt Creator不会构造任何东西。 qmake。项目文件是qmake项目,而不是Qt Creator项目。你根本不需要Qt Creator来构建你的项目。除了Qt和compiler / binutils之外,您可以从命令行执行此操作:

# assume that the source is in AHRS-source subfolder
mkdir AHRS
cd AHRS
/path/to/Qt/bin/qmake ../AHRS-source
make -j
# now we can run it
./AHRS