wxwindowsquickref wxsmith tutorial gui code blocks compiler-construction include wxwidgets codeblocks

compiler construction - wxsmith - wxwidgets setup.h "no existe ese archivo"



wxwidgets tutorial (4)

Probablemente necesites construir wxWidgets. Hay un paso posterior a la compilación en el proceso de compilación wxWidgets que copia la configuración.h apropiada en C: / wxWidgets_install_dir / include / wx.

Una búsqueda rápida en Google de este problema muestra que es común, no puedo por la vida de descubrir la solución en mi caso.

Tengo una instalación directa de wxWidgets 2.8.8 para Windows directamente desde el sitio web de wxWidgets.

Cada vez que intento compilar algo (como la aplicación de ejemplo descrita en "Primeros programas para wxWidgets" - http://zetcode.com/tutorials/wxwidgetstutorial/firstprograms/ ) obtengo:

wx / setup.h: No existe tal archivo o directorio

He incluido C: / wxWidgets-2.8.8 / include y C: / wxWidgets-2.8.8 / include / wx en mi lista de búsqueda de compiladores.

Debería ser simple, ¡pero no lo es! :(

Lo mismo ocurre si trato de usar un IDE integrado con wxWidgets (como Code :: Blocks), y esto, habría pensado, habría funcionado.

Entonces, algo de ayuda, por favor ... ¿Por qué no se encuentra setup.h?


wxWidgets no está integrado en bibliotecas utilizables cuando "instala" el instalador wxMSW. Esto se debe a que hay tantos elementos configurables, que es precisamente a lo que se refiere la configuración.h a la que se refiere.

Si solo desea compilarlo con las opciones predeterminadas lo más rápido posible y continuar, aquí está cómo:

  1. Inicie el "Símbolo del sistema de Visual Studio". Lo encontrará en el menú de inicio en "Microsoft Visual Studio -> Herramientas de Visual Studio".

  2. Cambiar a la carpeta: [WXWIN root] / build / msw

  3. Construya la configuración de depuración predeterminada: nmake -f makefile.vc BUILD=debug

  4. Configuración de versión predeterminada de compilación: nmake -f makefile.vc BUILD=release

  5. Asegúrese de que las DLL estén en su RUTA. Se encontrarán en [WXWIN root] / lib / vc_dll

  6. En la carpeta DLL mencionada anteriormente, encontrará subcarpetas para cada variante de compilación (las instrucciones anteriores hicieron dos, depuración y versión). En cada carpeta de variantes encontrará una carpeta ''wx'' que contiene un archivo ''setup.h''. Verá que los archivos setup.h son realmente diferentes para cada variante de compilación. Estas son las carpetas que necesita agregar a la ruta de compilación de su configuración de compilación de proyecto, una por variante de compilación. Por lo tanto, agregaría [raíz WXWIN ] / lib / vc_dll / mswud a la ruta de acceso de inclusión para su compilación de depuración, [WXWIN root] / lib / vc_dll / mswu para su versión de lanzamiento.

  7. Es posible crear muchas otras combinaciones de variantes: bibliotecas estáticas, biblioteca única monolítica, no Unicode, etc. Consulte [WXWIN root] / docs / msw / install.txt para obtener instrucciones mucho más extensas.


Al compilar wxWidgets, crea dinámicamente un archivo setup.h para cada configuración de compilación que se genera. Los archivos setup.h generados se almacenan en carpetas debajo de la carpeta lib, por ejemplo (Visual Studio en Windows):

c:/wxWidgets-2.9.2/lib/vc_lib/mswu

Para construir con éxito un proyecto basado en wxWidgets, cada configuración de compilación en el proyecto debe configurarse con su propio Directorio de inclusión adicional que apunta a la carpeta de compilación wxWidgets correspondiente bajo lib, como la lista arriba.

Además, un directorio de inclusión adicional que es común para todas las configuraciones de compilación en el proyecto debe configurarse para apuntar a la carpeta de inclusión principal de wxWidget. Esta carpeta normalmente se configura en una hoja de propiedades del usuario que se puede usar en cualquier proyecto. P.ej:

c:/wxWidgets-2.9.2/include

Para vincular, un directorio de biblioteca adicional común para todas las configuraciones de compilación está configurado para apuntar a la carpeta wxWidgets lib. P.ej:

c:/wxWidgets-2.9.2/lib/vc_lib

Y luego, de forma específica para cada configuración de compilación, las entradas de Dependencia adicional se configuran para incluir las bibliotecas de las bibliotecas wxWidgets correspondientes. Por ejemplo, para una construcción Unicode, Debug (u = Unicode, d = Debug):

wxbase29ud.lib

Luego, para usar wxWidgets en su proyecto, comience por incluir el archivo setup.h generado:

#include "wx/setup.h"

Y luego incluya encabezados para la funcionalidad específica de wxWidgets. P.ej:

#include <wx/slider.h> #include <wx/image.h> #include <wx/control.h>


Para que todo funcione, primero debe compilar las bibliotecas principales (archivos wx_vc # .sln). Entonces puedes trabajar con las cosas restantes.

Recuerde que necesita CppUnit para que los casetes compilen.