[GRASS-dev] compile error in grass-6.4.0RC1/gui/wxpython

Dear developers,

I wanted to build GRASS 6.4.0 RC1 packages under OpenSuSE 11.0 and got errors in
grass-6.4.0RC1/gui/wxpython. I changed into the directory and tried with 'make'
again. I attached the error messages, maybe someone can have a look and help?

thanks a lot
Otto

(attachments)

wxpython_error.txt (27.3 KB)

Dear developers,

On Mon, 29 Dec 2008 16:07:30 +0100
Otto Dassau <otto.dassau@gmx.de> wrote:

Dear developers,

I wanted to build GRASS 6.4.0 RC1 packages under OpenSuSE 11.0 and got errors
in grass-6.4.0RC1/gui/wxpython. I changed into the directory and tried with
'make' again. I attached the error messages, maybe someone can have a look and
help?

after reading and following the README in
http://svn.osgeo.org/grass/grass/branches/develbranch_6/gui/wxpython/ I still
get some error messages:

make[3]: Entering directory
`/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
gui_modules/menudata.py
/usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu > menustrings.py
Traceback (most recent call last): File "gui_modules/menudata.py", line 24, in
<module> import elementtree.ElementTree as etree # Python <= 2.4
ImportError: No module named elementtree.ElementTree
make[3]: *** [menustrings.py] Error 1
make[3]: Leaving directory `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython'
make[2]: *** [install_scripts] Error 2
make[2]: Leaving directory `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython'
make[1]: Leaving directory `/usr/src/packages/BUILD/grass-6.4.0RC1/gui'
make[1]: Entering directory `/usr/src/packages/BUILD/grass-6.4.0RC1/imagery'

Maybe someone has an idea what to do here? Is there something else (a python
module) missing?

thanks a lot
  Otto

thanks a lot
Otto

Hi,

2009/1/7 Otto Dassau <otto.dassau@gmx.de>:

[...]

make[3]: Entering directory
`/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
gui_modules/menudata.py
/usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu > menustrings.py
Traceback (most recent call last): File "gui_modules/menudata.py", line 24, in
<module> import elementtree.ElementTree as etree # Python <= 2.4
ImportError: No module named elementtree.ElementTree

in Debian it's python-elementtree.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa *

Martin Landa wrote:

> make[3]: Entering directory
> `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
> gui_modules/menudata.py
> /usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu > menustrings.py
> Traceback (most recent call last): File "gui_modules/menudata.py", line 24, in
> <module> import elementtree.ElementTree as etree # Python <= 2.4
> ImportError: No module named elementtree.ElementTree

in Debian it's python-elementtree.

What? As in, they renamed the module so it doesn't work?

elementtree.ElementTree (xml.etree.ElementTree in >= 2.5) is part of
the core Python library, which is expected to be installed alongside
Python.

--
Glynn Clements <glynn@gclements.plus.com>

Hi,

thanks Martin, the python-elementtree package was missing as you suggested. Now
there is the wxpython vdigit problem described in gui/wxpython/README. Hopefully
the final hurdle to clear. I get a

/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython/vdigit# make
...
/usr/lib/gcc/i586-suse-linux/4.3/../../../../i586-suse-linux/bin/ld: cannot find
-lgdi

is there a chance to have another solution for this wxpython vdigit problem,
than to create a symlink to _gdi_.so shared library? This seems to be quite
difficult to solve / implement in a spec file.

Maybe someone already has a solution for that?

kind regards,
Otto

On Wed, 7 Jan 2009 15:55:14 +0100
Otto Dassau <otto.dassau@gmx.de> wrote:

Dear developers,

On Mon, 29 Dec 2008 16:07:30 +0100
Otto Dassau <otto.dassau@gmx.de> wrote:

> Dear developers,
>
> I wanted to build GRASS 6.4.0 RC1 packages under OpenSuSE 11.0 and got
> errors
> in grass-6.4.0RC1/gui/wxpython. I changed into the directory and tried with
> 'make' again. I attached the error messages, maybe someone can have a look
> and help?

after reading and following the README in
http://svn.osgeo.org/grass/grass/branches/develbranch_6/gui/wxpython/ I still
get some error messages:

make[3]: Entering directory
`/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
gui_modules/menudata.py
/usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu > menustrings.py
Traceback (most recent call last): File "gui_modules/menudata.py", line 24, in
<module> import elementtree.ElementTree as etree # Python <= 2.4
ImportError: No module named elementtree.ElementTree
make[3]: *** [menustrings.py] Error 1
make[3]: Leaving directory

`/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython'

make[2]: *** [install_scripts] Error 2
make[2]: Leaving directory

`/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython'

make[1]: Leaving directory `/usr/src/packages/BUILD/grass-6.4.0RC1/gui'
make[1]: Entering directory `/usr/src/packages/BUILD/grass-6.4.0RC1/imagery'

Maybe someone has an idea what to do here? Is there something else (a python
module) missing?

thanks a lot
  Otto

> thanks a lot
> Otto
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Hi,

2009/1/7 Glynn Clements <glynn@gclements.plus.com>:

Martin Landa wrote:

> make[3]: Entering directory
> `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
> gui_modules/menudata.py
> /usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu > menustrings.py
> Traceback (most recent call last): File "gui_modules/menudata.py", line 24, in
> <module> import elementtree.ElementTree as etree # Python <= 2.4
> ImportError: No module named elementtree.ElementTree

in Debian it's python-elementtree.

What? As in, they renamed the module so it doesn't work?

elementtree.ElementTree (xml.etree.ElementTree in >= 2.5) is part of
the core Python library, which is expected to be installed alongside
Python.

hm, it seems to me that if you are using python <= 2.4 you need to
install python-elementtree package - at least on Debian.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa *

On Thu, 8 Jan 2009 15:20:55 +0100
"Martin Landa" <landa.martin@gmail.com> wrote:

Hi,

2009/1/7 Glynn Clements <glynn@gclements.plus.com>:
>
> Martin Landa wrote:
>
>> > make[3]: Entering directory
>> > `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
>> > gui_modules/menudata.py
>> > /usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu >
>> > menustrings.py
>> > Traceback (most recent call last): File "gui_modules/menudata.py", line
>> > 24, in
>> > <module> import elementtree.ElementTree as etree # Python <= 2.4
>> > ImportError: No module named elementtree.ElementTree
>>
>> in Debian it's python-elementtree.
>
> What? As in, they renamed the module so it doesn't work?
>
> elementtree.ElementTree (xml.etree.ElementTree in >= 2.5) is part of
> the core Python library, which is expected to be installed alongside
> Python.

hm, it seems to me that if you are using python <= 2.4 you need to
install python-elementtree package - at least on Debian.

the problem above occurs with opensuse 11.0 (python 2.5.2). Maybe this
information is helpful:
http://lists.opensuse.org/opensuse-factory/2007-02/msg00177.html

Otto

Martin

Hi,

2009/1/8 Otto Dassau <otto.dassau@gmx.de>:

/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython/vdigit# make
...
/usr/lib/gcc/i586-suse-linux/4.3/../../../../i586-suse-linux/bin/ld: cannot find
-lgdi

is there a chance to have another solution for this wxpython vdigit problem,
than to create a symlink to _gdi_.so shared library? This seems to be quite
difficult to solve / implement in a spec file.

Maybe someone already has a solution for that?

currently no, see

http://trac.osgeo.org/grass/ticket/58

I still hope reasonable solution will be found before 6.4.0.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa *

Hi,

I have now changed the OpenSuSE build server from GRASS 6.3 to 6.4 RC1. As for
the version 6.3 I commented gui/wxpython/vdigit in gui/wxpython/Makefile to make
it build.

Packages are available for OpenSuSE 10.3, SLE_10, 11.0 and 11.1 i586 and x86_64.
Can you please add this change to http://grass.osgeo.org/download/index.php and
move the OpenSUSE Geo Repository link from 6.3 to 6.4?

thanks a lot
Otto

On Thu, 8 Jan 2009 15:36:22 +0100
Otto Dassau <otto.dassau@gmx.de> wrote:

On Thu, 8 Jan 2009 15:20:55 +0100
"Martin Landa" <landa.martin@gmail.com> wrote:

> Hi,
>
> 2009/1/7 Glynn Clements <glynn@gclements.plus.com>:
> >
> > Martin Landa wrote:
> >
> >> > make[3]: Entering directory
> >> > `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
> >> > gui_modules/menudata.py
> >> > /usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu >
> >> > menustrings.py
> >> > Traceback (most recent call last): File "gui_modules/menudata.py", line
> >> > 24, in
> >> > <module> import elementtree.ElementTree as etree # Python <= 2.4
> >> > ImportError: No module named elementtree.ElementTree
> >>
> >> in Debian it's python-elementtree.
> >
> > What? As in, they renamed the module so it doesn't work?
> >
> > elementtree.ElementTree (xml.etree.ElementTree in >= 2.5) is part of
> > the core Python library, which is expected to be installed alongside
> > Python.
>
> hm, it seems to me that if you are using python <= 2.4 you need to
> install python-elementtree package - at least on Debian.

the problem above occurs with opensuse 11.0 (python 2.5.2). Maybe this
information is helpful:
http://lists.opensuse.org/opensuse-factory/2007-02/msg00177.html

Otto

> Martin
>
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

On Fri, Jan 9, 2009 at 4:04 PM, Otto Dassau <otto.dassau@gmx.de> wrote:

Hi,

I have now changed the OpenSuSE build server from GRASS 6.3 to 6.4 RC1. As for
the version 6.3 I commented gui/wxpython/vdigit in gui/wxpython/Makefile to make
it build.

(I assume due to the libgdi.so issue?)

Shouldn't --without.wxpython work?

Packages are available for OpenSuSE 10.3, SLE_10, 11.0 and 11.1 i586 and x86_64.
Can you please add this change to http://grass.osgeo.org/download/index.php and
move the OpenSUSE Geo Repository link from 6.3 to 6.4?

Done:
http://grass.osgeo.org/download/index.php#g64x

Markus

thanks a lot
Otto

On Thu, 8 Jan 2009 15:36:22 +0100
Otto Dassau <otto.dassau@gmx.de> wrote:

On Thu, 8 Jan 2009 15:20:55 +0100
"Martin Landa" <landa.martin@gmail.com> wrote:

> Hi,
>
> 2009/1/7 Glynn Clements <glynn@gclements.plus.com>:
> >
> > Martin Landa wrote:
> >
> >> > make[3]: Entering directory
> >> > `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
> >> > gui_modules/menudata.py
> >> > /usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu >
> >> > menustrings.py
> >> > Traceback (most recent call last): File "gui_modules/menudata.py", line
> >> > 24, in
> >> > <module> import elementtree.ElementTree as etree # Python <= 2.4
> >> > ImportError: No module named elementtree.ElementTree
> >>
> >> in Debian it's python-elementtree.
> >
> > What? As in, they renamed the module so it doesn't work?
> >
> > elementtree.ElementTree (xml.etree.ElementTree in >= 2.5) is part of
> > the core Python library, which is expected to be installed alongside
> > Python.
>
> hm, it seems to me that if you are using python <= 2.4 you need to
> install python-elementtree package - at least on Debian.

the problem above occurs with opensuse 11.0 (python 2.5.2). Maybe this
information is helpful:
http://lists.opensuse.org/opensuse-factory/2007-02/msg00177.html

Otto

> Martin
>
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

--
Open Source Geospatial Foundation
http://www.osgeo.org/
http://www.grassbook.org/

On Fri, 9 Jan 2009 16:44:53 +0100
"Markus Neteler" <neteler@osgeo.org> wrote:

On Fri, Jan 9, 2009 at 4:04 PM, Otto Dassau <otto.dassau@gmx.de> wrote:
> Hi,
>
> I have now changed the OpenSuSE build server from GRASS 6.3 to 6.4 RC1. As
> for
> the version 6.3 I commented gui/wxpython/vdigit in gui/wxpython/Makefile to
> make it build.

(I assume due to the libgdi.so issue?)

yes

Shouldn't --without.wxpython work?

would that mean wxpython gui won't be build at all? Is that a configure option?
At the moment everything should work, except wxpython gui vdigit.

> Packages are available for OpenSuSE 10.3, SLE_10, 11.0 and 11.1 i586 and
> x86_64.
> Can you please add this change to http://grass.osgeo.org/download/index.php
> and move the OpenSUSE Geo Repository link from 6.3 to 6.4?

Done:
http://grass.osgeo.org/download/index.php#g64x

thanks!

Otto

Markus

> thanks a lot
> Otto
>
> On Thu, 8 Jan 2009 15:36:22 +0100
> Otto Dassau <otto.dassau@gmx.de> wrote:
>
>> On Thu, 8 Jan 2009 15:20:55 +0100
>> "Martin Landa" <landa.martin@gmail.com> wrote:
>>
>> > Hi,
>> >
>> > 2009/1/7 Glynn Clements <glynn@gclements.plus.com>:
>> > >
>> > > Martin Landa wrote:
>> > >
>> > >> > make[3]: Entering directory
>> > >> > `/usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython' python
>> > >> > gui_modules/menudata.py
>> > >> > /usr/src/packages/BUILD/grass-6.4.0RC1/dist.i686-pc-linux-gnu >
>> > >> > menustrings.py
>> > >> > Traceback (most recent call last): File "gui_modules/menudata.py",

line

>> > >> > 24, in
>> > >> > <module> import elementtree.ElementTree as etree # Python <= 2.4
>> > >> > ImportError: No module named elementtree.ElementTree
>> > >>
>> > >> in Debian it's python-elementtree.
>> > >
>> > > What? As in, they renamed the module so it doesn't work?
>> > >
>> > > elementtree.ElementTree (xml.etree.ElementTree in >= 2.5) is part of
>> > > the core Python library, which is expected to be installed alongside
>> > > Python.
>> >
>> > hm, it seems to me that if you are using python <= 2.4 you need to
>> > install python-elementtree package - at least on Debian.
>>
>> the problem above occurs with opensuse 11.0 (python 2.5.2). Maybe this
>> information is helpful:
>> http://lists.opensuse.org/opensuse-factory/2007-02/msg00177.html
>>
>> Otto
>>
>> > Martin
>> >
>> _______________________________________________
>> grass-dev mailing list
>> grass-dev@lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/grass-dev
> _______________________________________________
> grass-dev mailing list
> grass-dev@lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-dev
>

Hi,

2009/1/9 Markus Neteler <neteler@osgeo.org>:

I have now changed the OpenSuSE build server from GRASS 6.3 to 6.4 RC1. As for
the version 6.3 I commented gui/wxpython/vdigit in gui/wxpython/Makefile to make
it build.

(I assume due to the libgdi.so issue?)

Shouldn't --without.wxpython work?

if you configure '--with-widgets=no' wxVdigit and xwNviz will be not compiled.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa *

Hi,

2009/1/9 Otto Dassau <otto.dassau@gmx.de>:

Shouldn't --without.wxpython work?

would that mean wxpython gui won't be build at all? Is that a configure option?
At the moment everything should work, except wxpython gui vdigit.

wxGUI is available regardless --with-python/c++/wxwidgets. These
options are needed just for vdigit and nviz extension compilation.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa *

Martin Landa wrote:

> /usr/src/packages/BUILD/grass-6.4.0RC1/gui/wxpython/vdigit# make
> ...
> /usr/lib/gcc/i586-suse-linux/4.3/../../../../i586-suse-linux/bin/ld: cannot find
> -lgdi
>
> is there a chance to have another solution for this wxpython vdigit problem,
> than to create a symlink to _gdi_.so shared library? This seems to be quite
> difficult to solve / implement in a spec file.
>
> Maybe someone already has a solution for that?

currently no, see

http://trac.osgeo.org/grass/ticket/58

I still hope reasonable solution will be found before 6.4.0.

The solution is to take the wxPseudoDC code, change the name to avoid
conflicts, then add it to gui/wxpython/vdigit.

If the wxPython developers wanted you to use _gdi_.so as a normal
library, they would have named it libgdi.so.

--
Glynn Clements <glynn@gclements.plus.com>

Otto Dassau wrote:

> > I have now changed the OpenSuSE build server from GRASS 6.3 to 6.4 RC1. As
> > for
> > the version 6.3 I commented gui/wxpython/vdigit in gui/wxpython/Makefile to
> > make it build.
>
> (I assume due to the libgdi.so issue?)

yes

> Shouldn't --without.wxpython work?

would that mean wxpython gui won't be build at all? Is that a configure option?
At the moment everything should work, except wxpython gui vdigit.

The relevant configure options are --with-python and --with-wxwidgets.

These only affect C/C++ code which needs to use the corresponding
libraries and headers. They don't affect "pure" Python or wxPython
code which doesn't require compilation, e.g. most of the wx GUI.

Currently, --with-python is required for the SWIG bindings,
--with-wxwidgets is required for xganim, and both are required for the
vdigit and nviz modules for the wx GUI.

The situation is the same as with Tcl/Tk: if you use --without-tcltk,
you still get gis.m, d.m, d.rast.edit etc, but you don't get v.digit,
NVIZ or the form library, which all contain C code which links against
libtcl/libtk.

--
Glynn Clements <glynn@gclements.plus.com>