[QGIS-trac] [Quantum GIS] #2411: FTBFS: qgsgrass.cpp + old grasses
on Debian/Lenny
Quantum GIS
qgis at qgis.org
Wed Feb 3 23:56:21 EST 2010
#2411: FTBFS: qgsgrass.cpp + old grasses on Debian/Lenny
------------------------------------------------+---------------------------
Reporter: hamish | Owner: nobody
Type: bug | Status: new
Priority: major: does not work as expected | Milestone: Version 1.5.0
Component: Build/Install | Version: HEAD
Keywords: grass | Platform_version: Lenny amd64
Platform: Debian | Must_fix: No
Status_info: 0 |
------------------------------------------------+---------------------------
Hi,
I'm still trying to compile trunk on Debian/Lenny using the supplied
debian/control.lenny + debuild. (thanks for fixing #2400)
Now I'm getting this error:
{{{
[ 68%] Building CXX object
src/providers/grass/CMakeFiles/qgisgrass.dir/qgsgrass.cpp.o
In file included from
/usr/local/src/qgis/svn/trunk/src/providers/grass/qgsgrass.cpp:37:
/usr/lib/grass/include/grass/version.h:1: warning: deprecated conversion
from string constant to 'char*'
/usr/lib/grass/include/grass/version.h:2: warning: deprecated conversion
from string constant to 'char*'
/usr/lib/grass/include/grass/version.h:3: warning: deprecated conversion
from string constant to 'char*'
/usr/lib/grass/include/grass/version.h:4: warning: deprecated conversion
from string constant to 'char*'
/usr/local/src/qgis/svn/trunk/src/providers/grass/qgsgrass.cpp: In static
member function 'static void QgsGrass::setLocation(QString, QString)':
/usr/local/src/qgis/svn/trunk/src/providers/grass/qgsgrass.cpp:342: error:
invalid conversion from 'const char*' to 'char*'
/usr/local/src/qgis/svn/trunk/src/providers/grass/qgsgrass.cpp:342: error:
initializing argument 2 of 'int G__setenv(char*, char*)'
/usr/local/src/qgis/svn/trunk/src/providers/grass/qgsgrass.cpp:344: error:
invalid conversion from 'const char*' to 'char*'
/usr/local/src/qgis/svn/trunk/src/providers/grass/qgsgrass.cpp:344: error:
initializing argument 2 of 'int G__setenv(char*, char*)'
make[3]: *** [src/providers/grass/CMakeFiles/qgisgrass.dir/qgsgrass.cpp.o]
Error 1
make[3]: Leaving directory `/usr/local/src/qgis/svn/trunk/debian/build'
make[2]: *** [src/providers/grass/CMakeFiles/qgisgrass.dir/all] Error 2
make[2]: Leaving directory `/usr/local/src/qgis/svn/trunk/debian/build'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/local/src/qgis/svn/trunk/debian/build'
make: *** [build-stamp] Error 2
debuild: fatal error at line 1301:
couldn't exec fakeroot debian/rules:
}}}
I have made these modifications to debian/rules:
{{{
$ svn diff trunk/debian/rules
Index: trunk/debian/rules
===================================================================
--- trunk/debian/rules (revision 12870)
+++ trunk/debian/rules (working copy)
@@ -22,7 +22,7 @@
CMAKE_OPTS := \
-Wno-dev \
- -D GRASS_PREFIX=/usr/lib/grass64 \
+ -D GRASS_PREFIX=/usr/local/src/grass/svn/grass65 \
-D CMAKE_INSTALL_PREFIX=/usr \
-D CMAKE_SKIP_RPATH=TRUE \
-D BINDINGS_GLOBAL_INSTALL=TRUE \
@@ -147,12 +147,12 @@
dh_installmime -pqgis
dh_link
if which dh_lintian >/dev/null; then dh_lintian; fi
- dh_strip
+ #dh_strip
dh_compress --exclude=pdf
dh_fixperms
dh_makeshlibs
dh_installdeb
-
LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/usr/lib/grass/lib:/usr/lib/grass64/lib
dh_shlibdeps
+
LD_LIBRARY_PATH=$(LD_LIBRARY_PATH):/usr/local/src/grass/svn/grass65/dist.
x86_64-unknown-linux-gnu/lib dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
}}}
the standard Debian/stable grass-dev package is installed (6.2.3-2.1)
which is why /usr/lib/grass/include/grass/version.h is found. (in addition
to about 5-6 other self-contained versions of grass on that machine)
How to get cmake to respect GRASS_PREFIX= for the include path as well as
the library path?
thanks,
Hamish
--
Ticket URL: <https://trac.osgeo.org/qgis/ticket/2411>
Quantum GIS <http://qgis.org>
Quantum GIS is an Open Source GIS viewer/editor supporting OGR, PostGIS, and GRASS formats
More information about the QGIS-trac
mailing list