1

I'm going mad on this stupid problem.

I've a tree like this:

src
|--- sources
        |--- one.cpp
        |--- two.cpp
        |--- sources.pro
|--- headers
        |--- one.h
        |--- two.hpp
        |--- headers.pro
|--- src.pro

I tried EVERYTHING to make it look in both the folders, but somehow I can't get it working. I don't know much about QMake, but I tought it was easy. And I was wrong.

So actually I ended up having the src.pro file in this way:


QT += dbus

CONFIG += warn_on
DEFINES = QT_FATAL_WARNINGS QT_NO_DEBUG_OUTPUT

devel {
  DEFINES -= QT_NO_DEBUG_OUTPUT
}

OBJECTS_DIR += build
MOC_DIR += build

TARGET = example

[...]

TEMPLATE = subdirs
SUBDIRS = sources \
          headers

[...]

And the sources.pro and headers.pro in this way:

sources.pro


SOURCES = one.cpp \
          two.cpp

headers.pro


HEADERS = one.h \
          two.hpp

And of course (not) the problem is that it still doesn't see the stuff all together. I looked at the documentation too, but I swear I don't get it lol

eij
  • 171
  • 1
  • 8

1 Answers1

2

It's been awhile since I've had to use qmake (long live CMake!), but can't you just set the INCLUDEPATH variable in your .pro file, i.e., do something like:

INCLUDEPATH += ./sources
INCLUDEPATH += ./headers
INCLUDEPATH += ../utils/include
# (etc, etc.)

Then just point the entry in your SOURCES var at the sources folder like so:

SOURCES = sources/one.cpp \
          sources/two.cpp

It's not clear to me why you're using TEMPLATE = subdirs. It doesn't seem like it should be necessary in your case. Can't you just use TEMPLATE = app (or TEMPLATE = lib) and be done with it? Something like this:

QT += dbus
TEMPLATE = app
TARGET = example

INCLUDEPATH += ./sources

SOURCES += sources/one.cpp \
           sources/two.cpp
evadeflow
  • 4,704
  • 38
  • 51
  • Thanks! I just fixed it by adding INCLUDEPATH += sources \ headers (which I also tried partially before posting the question) and adding the sources and headers path to all the files (sources/one.cpp headers/one.h) cause I tought it would have seen it as one unique folder :) Thanks a lot! – eij Nov 29 '10 at 14:37