[geos-devel] New problem when compiling QGis against geos 3.0.0rc4

Mike Leahy mgleahy at alumni.uwaterloo.ca
Thu Feb 15 13:56:29 EST 2007


Paul,

The second error (that refers to ui_qgisappbase.h) *only* happens if I
build QGis a second time after getting the first problem (with the
linker) when compiling against rc4, and it happens regardless of whether
I make clean/distclean.  It also seems to happen much earlier in the
build process than where the linker error occurs, though I'd have to
double check that.  The only way I get the first error again is to start
from a fresh source.  I'm not sure what this means - does it all point
to a QGis problem then?

Of course, because none of this happened with rc3, I thought I'd check
here first to see if something new in rc4 could be the cause...I hope
you don't mind.  Let me know if you can think of anything else I might
try.  If not, I'll head over to the QGis list to see if they have any
other ideas.

Mike


Paul Ramsey wrote:
> Mike,
> 
> The new error below looks like a QGIS error. You're saying this error
> doesn't occur at all when you are building against rc3? Because it looks
> totally like a QGIS build error.
> 
> Paul
> 
> Mike Leahy wrote:
>> Paul,
>>
>> I noticed that too, but I didn't really know what to think of it.
>> Whenever I switch between rc3 and rc4 versions of geos, I 'make
>> uninstall' one to remove it, 'make install' the other.  That would
>> prevent any header files being left behind, right?  The libraries in
>> /usr/lib64 look to be the right ones at least.
>>
>> With QGis, after this build fails, even after doing a make clean (or
>> distclean) I get a different error (see below), so I have been deleting
>> the qgis source folder, and starting fresh each time from the
>> distributed source package (qgis-0.8.0.tar.gz).
>> /usr/include/geos/version.h looks like the right version too.
>>
>> I might point out that I'm doing all this on a machine running FC6
>> x86_64 - if I have time, I might be able to try later tonight with an
>> i386 machine just to be sure (if you think it's worthwhile).
>>
>> Mike
>>
>> ========================================================================
>>
>> ranlib .libs/libqgis_core.a
>> creating libqgis_core.la
>> (cd .libs && rm -f libqgis_core.la && ln -s ../libqgis_core.la
>> libqgis_core.la)
>> make[4]: Leaving directory `/home/sources/qgis-0.8.0/src/core'
>> make[3]: Leaving directory `/home/sources/qgis-0.8.0/src/core'
>> Making all in ui
>> make[3]: Entering directory `/home/sources/qgis-0.8.0/src/ui'
>> make[3]: *** No rule to make target `ui_qgisappbase.h', needed by `all'.
>>  Stop.
>> make[3]: Leaving directory `/home/sources/qgis-0.8.0/src/ui'
>> make[2]: *** [all-recursive] Error 1
>> make[2]: Leaving directory `/home/sources/qgis-0.8.0/src'
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory `/home/sources/qgis-0.8.0'
>> make: *** [all] Error 2
>>
>>
>> Paul Ramsey wrote:
>>> It didn't die until you got to the linker, which is interesting.  My
>>> sysadmins shots-in-dark:
>>>
>>> - Are you compiling against rc4 headers and rc3 libraries? Vice versa?
>>> - Have you done a 'make clean' and rebuild on *both* geos and qgis?
>>>
>>> P.
>>>
>>> Mike Leahy wrote:
>>>> Hello list,
>>>>
>>>> When I compile QGis 0.8.0 against GEOS 3.0.0rc3, it works fine.  Now,
>>>> however, compiling against GEOS 3.0.0rc4 gives me the the errors below.
>>>>  I'm positive that I haven't done anything different with rc4.  I tried
>>>> both rc3 and rc4 last night just to be sure...does anybody have an idea
>>>> what I need to do to fix this?
>>>>
>>>> Regards,
>>>> Mike
>>>>
>>>> =====================================================================
>>>>
>>>> /bin/sh ../../libtool --tag=CXX --mode=link g++  -g -O2  -L/usr/lib64
>>>> -L/usr/lib -lproj -L/usr/lib -o qgis -rdynamic qgis-main.o
>>>> ../raster/libqgis_raster.la ../legend/libqgis_legend.la
>>>> ../composer/libqgis_composer.la  -L/usr/lib64 -lQtCore -lQt3Support
>>>> -lQtGui -lQtNetwork -lQtSvg -lQtCore -lQt3Support -lQtGui -lQtNetwork
>>>> -lQtXml -lQtSvg -lQtTest -lQtDesigner -L/usr/lib64 -lgdal -L/usr/lib64
>>>> -lpq -L/usr/lib64 -lgeos -lpython2.4 -lproj -lsqlite3 libqgis_gui.la
>>>> ../core/libqgis_core.la  -lutil
>>>> g++ -g -O2 -o .libs/qgis -rdynamic qgis-main.o  -L/usr/lib64 -L/usr/lib
>>>> ../raster/.libs/libqgis_raster.so ../legend/.libs/libqgis_legend.so
>>>> ../composer/.libs/libqgis_composer.so -lQtCore -lQt3Support -lQtGui
>>>> -lQtNetwork -lQtXml -lQtSvg -lQtTest -lQtDesigner /usr/lib64/libgdal.so
>>>> -lpq /usr/lib64/libgeos.so -lpython2.4 -lproj -lsqlite3
>>>> ./.libs/libqgis_gui.so ../core/.libs/libqgis_core.so -lutil -Wl,--rpath
>>>> -Wl,/usr/lib64
>>>> ../core/.libs/libqgis_core.so: undefined reference to
>>>> `geos::geom::Coordinate::Coordinate(double, double, double)'
>>>> ../core/.libs/libqgis_core.so: undefined reference to
>>>> `geos::io::WKTReader::~WKTReader()'
>>>> ../core/.libs/libqgis_core.so: undefined reference to
>>>> `geos::io::WKTReader::WKTReader(geos::geom::GeometryFactory const*)'
>>>> ../core/.libs/libqgis_core.so: undefined reference to
>>>> `geos::geom::Coordinate::~Coordinate()'
>>>> collect2: ld returned 1 exit status
>>>> make[4]: *** [qgis] Error 1
>>>> make[4]: Leaving directory `/home/sources/qgis-0.8.0/src/gui'
>>>> make[3]: *** [all] Error 2
>>>> make[3]: Leaving directory `/home/sources/qgis-0.8.0/src/gui'
>>>> make[2]: *** [all-recursive] Error 1
>>>> make[2]: Leaving directory `/home/sources/qgis-0.8.0/src'
>>>> make[1]: *** [all-recursive] Error 1
>>>> make[1]: Leaving directory `/home/sources/qgis-0.8.0'
>>>> make: *** [all] Error 2
>>>> _______________________________________________
>>>> geos-devel mailing list
>>>> geos-devel at geos.refractions.net
>>>> http://geos.refractions.net/mailman/listinfo/geos-devel
>>>
>> _______________________________________________
>> geos-devel mailing list
>> geos-devel at geos.refractions.net
>> http://geos.refractions.net/mailman/listinfo/geos-devel
> 
> 



More information about the geos-devel mailing list