[Spanish] Compilación QGis en Windows

Mauricio Pazos mauricio.pazos at axios.es
Fri Nov 5 08:48:52 EDT 2010


On Friday 05 November 2010 09:49:46 am rafael.mejias at sinfogeo.com wrote:
> Buenos días,
> estoy desarrollando una aplicación c++ de QGis en windows xp con QT, y
> este es mi fichero .pro (es un poco raro pero es que he probado de todo):
> TEMPLATE = app
>
> QT  += core \
>
> gui \
>
> sql \
>
> xml
>
> INCLUDEPATH  += "C:/Archivos de programa/Quantum GIS
> Tethys/apps/qgis/include" \
>
> "C:/Archivos de programa/Quantum GIS Tethys/include" \
>
> "C:/Archivos de programa/Quantum GIS Tethys/apps/gdal-16/include" \
>
> "C:/Archivos de programa/Quantum GIS Tethys/apps/Python25/include" \
>
> "C:/Archivos de programa/Quantum GIS
> Tethys/apps/grass/grass-6.4.0svn/include" \
>
> "C:/Archivos de programa/Quantum GIS
> Tethys/apps/Python25/Lib/site-packages/win32/include" \
>
> win32:LIBS  += "C:/Archivos de programa/Quantum GIS
> Tethys/apps/qgis/lib/qgis_core.lib" \
>
> "C:/Archivos de programa/Quantum GIS Tethys/apps/qgis/lib/qgis_gui.lib" \
>
> -L "C:/Archivos de programa/Quantum GIS Tethys/bin" \
>
> -L "C:/Archivos de programa/Quantum GIS Tethys/apps/gdal-16" \
>
> -L "C:/Archivos de programa/Quantum GIS Tethys/apps/msys"
>
> SOURCES  += main.cpp\
>
>          mainwindow.cpp
>
> HEADERS   += mainwindow.h
>
> FORMS     += mainwindow.ui
>
> DEFINES  += GUI_EXPORT= CORE_EXPORT=
>
>
> pero al compilar, tengo esta lista de errores:
> debug/main.o: In function `Z5qMainiPPc':
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:32: undefined
> reference to `QgsApplication::QgsApplication(int&, char**, bool)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:39: undefined
> reference to `QgsProviderRegistry::instance(QString)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:42: undefined
> reference to `QgsVectorLayer::QgsVectorLayer(QString, QString, QString,
> bool)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:45: undefined
> reference to `QgsVectorLayer::geometryType() const'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:45: undefined
> reference to
> `QgsSingleSymbolRenderer::QgsSingleSymbolRenderer(QGis::GeometryType)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:47: undefined
> reference to `QgsVectorLayer::setRenderer(QgsRenderer*)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:48: undefined
> reference to `QgsMapLayer::isValid()'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:57: undefined
> reference to `QgsMapLayerRegistry::instance()'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:57: undefined
> reference to `QgsMapLayerRegistry::addMapLayer(QgsMapLayer*, bool)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:62: undefined
> reference to `QgsMapCanvas::QgsMapCanvas(QWidget*, char const*)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:63: undefined
> reference to `QgsMapLayer::extent() const'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:63: undefined
> reference to `QgsMapCanvas::setExtent(QgsRectangle const&)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:64: undefined
> reference to `QgsMapCanvas::enableAntiAliasing(bool)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:66: undefined
> reference to `QgsMapCanvas::freeze(bool)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:68: undefined
> reference to `QgsMapCanvas::setLayerSet(QList<QgsMapCanvasLayer>&)'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:70: undefined
> reference to `QgsMapCanvas::refresh()'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:73: undefined
> reference to `QgsApplication::~QgsApplication()'
>
> C:\rafa\QT\miApli-build-desktop/../miApli/main.cpp:73: undefined
> reference to `QgsApplication::~QgsApplication()'
>
> c:/qt/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../libmingwex.a(pformat.o):p
>format.c:(.text+0x166d): undefined reference to `_get_output_format'
>
> collect2: ld returned 1 exit status
>
> mingw32-make[1]: *** [debug\miApli.exe] Error 1
>
> mingw32-make: *** [debug] Error 2
>
> The process "C:/Qt/mingw/bin/mingw32-make.exe" exited with code %2.
>
> Error while building project miApli (target: Desktop)
>
> When executing build step 'Make'
>
>
> Evidentemente es un problema de rutas y/o dependencias, pero ... ¿puede
> alguien darme más pistas?. Si lo compilo en linux ubuntu (obviamente
> cambiando el .pro), no tengo problemas y lo compila bien.
> En windows no he utilizado el paquete de Osgeo, tengo QT instalado por
> un lado y QGis por otro, en cualquier caso, no parece quejarse de las
> librería QT, sino de las librerías QGis.
>
> Muchas gracias por la ayuda,
> Rafa
Una corazonada, "/" en linux versus "\" windows. Probablemente el make 
funciona bien en linux porque los paths están bien formado para él, pero al 
ejecutar el make en windows las "/" de linux, no son interpretados como path 
correctos en windows.

Espero te sirva. 

un saludo 
-- 
Mauricio Pazos
www.axios.es
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/spanish/attachments/20101105/67ec18b1/attachment-0001.html


More information about the Spanish mailing list