2011-05-30 9 views

Respuesta

3

Para mantener su carpeta principal (fuente) limpia de archivos binarios y generado se puede poner las siguientes líneas en el archivo "myapp.pro":

DESTDIR = ../../bin 
UI_DIR = . 

CONFIG(debug, debug|release) { 
     TARGET = myappd 
     OBJECTS_DIR = ../../build/myapp/debug 
     MOC_DIR = ../../build/myapp/debug 
} 

CONFIG(release, debug|release) { 
     TARGET = myapp 
     OBJECTS_DIR = ../../build/myapp/release 
     MOC_DIR = ../../build/myapp/release 
} 

Los ajustes anteriores implican la siguiente estructura de directorios:

myprojects/source/myapp/ => containing myapp.pro + all other project files hpp, cpp etc. 
myprojects/bin/ => containing myapp.exe & myappd.exe application files 
myprojects/build/myapp/release => object files + moc files (release) 
myprojects/build/myapp/debug => object files + moc files (debug) 

Los últimos 3 directorios se crearán automáticamente si no existen.

Las ventajas de este esquema es:

a. Puede mover su proyecto (directorio myapp) a otro directorio principal y continuará compilando OK debido a la especificación relativa de bin & compilar directorios

b. Puede agregar más subproyectos en myprojects/source/

c. Puede hacer una copia de seguridad (por ejemplo, ZIP) de todo el directorio myprojects/source/sin incluir ningún archivo binario o generado

9

Puede usar las variables OBJECTS_DIR y MOC_DIR para esto. p.ej. Qt en sí mismo hace algo como esto edificio, mientras que:

OBJECTS_DIR = .obj 
MOC_DIR  = .moc 

En este caso creo que el obj, directorios .moc son en relación con el directorio que contiene el Makefile.

Cuestiones relacionadas