Qmake does not support build directories below the

2019-06-14 22:03发布

问题:

I have created an application that compiles and runs like a charm on OS-X. I would now like to start getting it to work on Windows. To start, I copied the project to a windows machine and just tried to compile, but got this error:

:: warning: Qmake does not support build directories below the source directory.

Any ideas?

回答1:

Don't copy your project.pro.user file when you are copying a project from one machine to another, or from one directory to another. When you open the project, Qt Creator will offer to create a new build directory in the proper place.



回答2:

Set the shadow build directory to some folder on the same level of your project directory:

folder/
  project/
  project-shadow-build-release/
  project-shadow-build-debug/

You can do this in the "Projects" view, via the toolbar on the left. To me, this warning was just an annoyance, a project never failed to build because of it.



回答3:

Andref gave the correct answer to resolve this warning, but you may want to understand why this requirement exists.

In fact, the build directory must be at the same folder level as the project (i.e. it can't be above or below). The reason why is that the linker is called from the build directory. Hence, any relative paths to library files will be different than what you entered in your project file.

It kinda sucks. I like to put all intermediate files in their own folder. But you simply can't with qmake.



回答4:

.pro.user are generated files by Qt Creator. They are unrelated to qmake and should not be touched (and not put into a VCS for that matter)



回答5:

Just remove the files with the pro.user extension , worked for me



回答6:

I also got this, trying to compile a project created on linux.

Another way to solve it is to change the paths in the .pro.user file (in the directory of your project)



回答7:

  1. Right Click on a project: Set As Active Project
  2. Click on the Projects button (The one with the spanner image)
  3. Edit build configuration : Debug / Profile / Release / and change the default directories, OR just uncheck the Shadow build check box.

    • The Build directory path should now change to black, from red


标签: qt qt4