Hi,
I must be missing something because I can't compile grass7.svn on a
new config. The compilation error is located in
grass_trunk/visualization/ximgview (see below).
Any pointer would be greatly appreciated,
Cheers,
Pierre
roudierp@mangatainoka:/usr/local/src/grass_trunk/visualization/ximgview$ make
: && gcc -L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-Wl,--export-dynamic
-Wl,-rpath-link,/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-o /usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/bin/ximgview
OBJ.x86_64-unknown-linux-gnu/color.o
OBJ.x86_64-unknown-linux-gnu/main.o -lgrass_gis.7.0.svn -L -lX11
-lm
OBJ.x86_64-unknown-linux-gnu/main.o: In function `draw':
/usr/local/src/grass_trunk/visualization/ximgview/main.c:121:
undefined reference to `XPutImage'
OBJ.x86_64-unknown-linux-gnu/main.o: In function `main_loop':
/usr/local/src/grass_trunk/visualization/ximgview/main.c:156:
undefined reference to `XPending'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:156:
undefined reference to `XPending'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:159:
undefined reference to `XNextEvent'
OBJ.x86_64-unknown-linux-gnu/main.o: In function `draw':
/usr/local/src/grass_trunk/visualization/ximgview/main.c:122:
undefined reference to `XSync'
OBJ.x86_64-unknown-linux-gnu/main.o: In function `create_window':
/usr/local/src/grass_trunk/visualization/ximgview/main.c:62: undefined
reference to `XOpenDisplay'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:72: undefined
reference to `XCreateWindow'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:81: undefined
reference to `XMapWindow'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:83: undefined
reference to `XGetWindowAttributes'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:88: undefined
reference to `XSetWindowColormap'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:90: undefined
reference to `XCreateGC'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:93: undefined
reference to `XCreateImage'
/usr/local/src/grass_trunk/visualization/ximgview/main.c:99: undefined
reference to `XFlush'
OBJ.x86_64-unknown-linux-gnu/color.o: In function `try_get_grays':
/usr/local/src/grass_trunk/visualization/ximgview/color.c:191:
undefined reference to `XAllocColor'
/usr/local/src/grass_trunk/visualization/ximgview/color.c:192:
undefined reference to `XFreeColors'
OBJ.x86_64-unknown-linux-gnu/color.o: In function `try_get_colors':
/usr/local/src/grass_trunk/visualization/ximgview/color.c:159:
undefined reference to `XAllocColor'
/usr/local/src/grass_trunk/visualization/ximgview/color.c:160:
undefined reference to `XFreeColors'
OBJ.x86_64-unknown-linux-gnu/color.o: In function `InitColorTableFixed':
/usr/local/src/grass_trunk/visualization/ximgview/color.c:273:
undefined reference to `XFreeColormap'
OBJ.x86_64-unknown-linux-gnu/color.o: In function `ramp_colormap':
/usr/local/src/grass_trunk/visualization/ximgview/color.c:205:
undefined reference to `XCreateColormap'
/usr/local/src/grass_trunk/visualization/ximgview/color.c:220:
undefined reference to `XStoreColor'
collect2: ld returned 1 exit status
make: *** [/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/bin/ximgview]
Error 1
--
Scientist
Landcare Research, New Zealand
On Thu, Jul 12, 2012 at 9:02 AM, Pierre Roudier
<pierre.roudier@gmail.com> wrote:
Hi,
I must be missing something because I can't compile grass7.svn on a
new config. The compilation error is located in
grass_trunk/visualization/ximgview (see below).
...
roudierp@mangatainoka:/usr/local/src/grass_trunk/visualization/ximgview$ make
...
OBJ.x86_64-unknown-linux-gnu/main.o: In function `draw':
/usr/local/src/grass_trunk/visualization/ximgview/main.c:121:
undefined reference to `XPutImage'
You are likely missing the package "libX11-devel".
Hope this helps,
Markus
Pierre Roudier wrote:
: && gcc -L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-Wl,--export-dynamic
-Wl,-rpath-link,/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-o /usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/bin/ximgview
OBJ.x86_64-unknown-linux-gnu/color.o
OBJ.x86_64-unknown-linux-gnu/main.o -lgrass_gis.7.0.svn -L -lX11
^^
The problem is the bare -L switch, which causes -lX11 to be treated as
an argument to -L rather than a separate switch.
Unfortunately, the AC_PATH_XTRA test which sets X_LIBS is part of
autoconf, and not something which can easily be worked around.
First it tries using imake (xmkmf), which may not exist on modern
systems. If that fails, it tries a fixed set of plausible library
directories, all of which use "lib" rather than e.g. "lib64", as the
latter wasn't in common use when autoconf-2.13 was released (Jan
1999).
It may be time to think about moving to a newer version of autoconf.
It's much more stable now than it was in the period immediatley after
2.13.
--
Glynn Clements <glynn@gclements.plus.com>
On Thu, Jul 12, 2012 at 6:14 PM, Glynn Clements
<glynn@gclements.plus.com> wrote:
...
It may be time to think about moving to a newer version of autoconf.
It's much more stable now than it was in the period immediatley after
2.13.
For this I found
http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Autoconf-2_002e13.html#Autoconf-2_002e13
... looks like manual updating?
Markus
PS: They seem to be funny guys:
http://www.gnu.org/software/autoconf/autoconf.alt-sc.html
http://www.gnu.org/software/autoconf/autoconf.alt-pl.html
Thanks for your help Markus and Glynn,
I do have libx11-dev installed (I'm running Xubuntu 12.04), but still
get the same error unfortunately,
Pierre
2012/7/12 Markus Neteler <neteler@osgeo.org>:
On Thu, Jul 12, 2012 at 9:02 AM, Pierre Roudier
<pierre.roudier@gmail.com> wrote:
Hi,
I must be missing something because I can't compile grass7.svn on a
new config. The compilation error is located in
grass_trunk/visualization/ximgview (see below).
...
roudierp@mangatainoka:/usr/local/src/grass_trunk/visualization/ximgview$ make
...
OBJ.x86_64-unknown-linux-gnu/main.o: In function `draw':
/usr/local/src/grass_trunk/visualization/ximgview/main.c:121:
undefined reference to `XPutImage'
You are likely missing the package "libX11-devel".
Hope this helps,
Markus
--
Scientist
Landcare Research, New Zealand
Glynn,
Is there an easy work-around this? It's a bit weird as the compilation
goes well on my older machine. It seems to fail only on this newer
configuration. After a bit of googling, I *think* that the xutils-dev
package, which provides imake, does not provide the xmkmf script
anymore.
I don't think I'm making any use of the ximgview module at the moment,
so I'm happy to try and drop it from my final install. I do need
grass7 to compile for testing Eric Momsen's GSoC project.
Any help greatly appreciated,
Cheers,
P
2012/7/13 Glynn Clements <glynn@gclements.plus.com>:
Pierre Roudier wrote:
: && gcc -L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-Wl,--export-dynamic
-Wl,-rpath-link,/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-o /usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/bin/ximgview
OBJ.x86_64-unknown-linux-gnu/color.o
OBJ.x86_64-unknown-linux-gnu/main.o -lgrass_gis.7.0.svn -L -lX11
^^
The problem is the bare -L switch, which causes -lX11 to be treated as
an argument to -L rather than a separate switch.
Unfortunately, the AC_PATH_XTRA test which sets X_LIBS is part of
autoconf, and not something which can easily be worked around.
First it tries using imake (xmkmf), which may not exist on modern
systems. If that fails, it tries a fixed set of plausible library
directories, all of which use "lib" rather than e.g. "lib64", as the
latter wasn't in common use when autoconf-2.13 was released (Jan
1999).
It may be time to think about moving to a newer version of autoconf.
It's much more stable now than it was in the period immediatley after
2.13.
--
Glynn Clements <glynn@gclements.plus.com>
--
Scientist
Landcare Research, New Zealand
Sorry, my bad:
roudierp@mangatainoka:~/.config/Terminal$ apt-file find xmkmf
xmanpages-ja: /usr/share/man/ja/man1/xmkmf.1.gz
xutils-dev: /usr/bin/xmkmf
xutils-dev: /usr/share/man/man1/xmkmf.1.gz
So on ubuntu, xmkmf and imake are available through the xutils-dev
package. However, I still run into the same error at compilation,
P
2012/7/13 Pierre Roudier <pierre.roudier@gmail.com>:
Glynn,
Is there an easy work-around this? It's a bit weird as the compilation
goes well on my older machine. It seems to fail only on this newer
configuration. After a bit of googling, I *think* that the xutils-dev
package, which provides imake, does not provide the xmkmf script
anymore.
I don't think I'm making any use of the ximgview module at the moment,
so I'm happy to try and drop it from my final install. I do need
grass7 to compile for testing Eric Momsen's GSoC project.
Any help greatly appreciated,
Cheers,
P
2012/7/13 Glynn Clements <glynn@gclements.plus.com>:
Pierre Roudier wrote:
: && gcc -L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-L/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-Wl,--export-dynamic
-Wl,-rpath-link,/usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/lib
-o /usr/local/src/grass_trunk/dist.x86_64-unknown-linux-gnu/bin/ximgview
OBJ.x86_64-unknown-linux-gnu/color.o
OBJ.x86_64-unknown-linux-gnu/main.o -lgrass_gis.7.0.svn -L -lX11
^^
The problem is the bare -L switch, which causes -lX11 to be treated as
an argument to -L rather than a separate switch.
Unfortunately, the AC_PATH_XTRA test which sets X_LIBS is part of
autoconf, and not something which can easily be worked around.
First it tries using imake (xmkmf), which may not exist on modern
systems. If that fails, it tries a fixed set of plausible library
directories, all of which use "lib" rather than e.g. "lib64", as the
latter wasn't in common use when autoconf-2.13 was released (Jan
1999).
It may be time to think about moving to a newer version of autoconf.
It's much more stable now than it was in the period immediatley after
2.13.
--
Glynn Clements <glynn@gclements.plus.com>
--
Scientist
Landcare Research, New Zealand
--
Scientist
Landcare Research, New Zealand
Pierre Roudier wrote:
Is there an easy work-around this?
Provided that the configure script completes, you can edit
include/Make/Platform.make by hand. The relevant variables are
XLIBPATH and XLIB.
--
Glynn Clements <glynn@gclements.plus.com>
Thanks heaps for your help Glynn, it worked.
For reference, here's the workaround I used:
roudierp@mangatainoka:/usr/local/src/grass_trunk$ more
include/Make/Platform.make | grep -n XLIB
86:XLIBPATH = -L/usr/bin
Cheers,
Pierre
2012/7/14 Glynn Clements <glynn@gclements.plus.com>:
Pierre Roudier wrote:
Is there an easy work-around this?
Provided that the configure script completes, you can edit
include/Make/Platform.make by hand. The relevant variables are
XLIBPATH and XLIB.
--
Glynn Clements <glynn@gclements.plus.com>
--
Scientist
Landcare Research, New Zealand
Hi Glynn et al.,
I still got the same problem - I'm happy to use the workaround and
edit the Platform.make file by hand, but should I lodge a bug report
in the tracker?
Cheers,
Pierre
2012/7/14 Pierre Roudier <pierre.roudier@gmail.com>:
Thanks heaps for your help Glynn, it worked.
For reference, here's the workaround I used:
roudierp@mangatainoka:/usr/local/src/grass_trunk$ more
include/Make/Platform.make | grep -n XLIB
86:XLIBPATH = -L/usr/bin
Cheers,
Pierre
2012/7/14 Glynn Clements <glynn@gclements.plus.com>:
Pierre Roudier wrote:
Is there an easy work-around this?
Provided that the configure script completes, you can edit
include/Make/Platform.make by hand. The relevant variables are
XLIBPATH and XLIB.
--
Glynn Clements <glynn@gclements.plus.com>
--
Scientist
Landcare Research, New Zealand
--
Scientist
Landcare Research, New Zealand
Pierre Roudier wrote:
I still got the same problem - I'm happy to use the workaround and
edit the Platform.make file by hand, but should I lodge a bug report
in the tracker?
Please do.
Even though ximgview is redundant (the same functionality is available
via both wximgview and wximgview.py), we need raw access to Xlib for
reasons related to NVIZ.
--
Glynn Clements <glynn@gclements.plus.com>
Ticket created here: http://trac.osgeo.org/grass/ticket/1713
Thanks,
P
2012/8/31 Glynn Clements <glynn@gclements.plus.com>:
Pierre Roudier wrote:
I still got the same problem - I'm happy to use the workaround and
edit the Platform.make file by hand, but should I lodge a bug report
in the tracker?
Please do.
Even though ximgview is redundant (the same functionality is available
via both wximgview and wximgview.py), we need raw access to Xlib for
reasons related to NVIZ.
--
Glynn Clements <glynn@gclements.plus.com>
--
Scientist
Landcare Research, New Zealand
Hi all,
Just ran over that bug at compilation of the latest trunk (7.5-svn) on the latest Ubuntu LTS (16.04-1).
The workaround (editing Platform.make file by hand) still works, but I was wondering whether other Ubuntu users had the same issue,
Cheers,
Pierre
···
On 31 August 2012 at 15:01, Pierre Roudier <pierre.roudier@gmail.com> wrote:
Ticket created here: http://trac.osgeo.org/grass/ticket/1713
Thanks,
P
2012/8/31 Glynn Clements <glynn@gclements.plus.com>:
Pierre Roudier wrote:
I still got the same problem - I’m happy to use the workaround and
edit the Platform.make file by hand, but should I lodge a bug report
in the tracker?
Please do.
Even though ximgview is redundant (the same functionality is available
via both wximgview and wximgview.py), we need raw access to Xlib for
reasons related to NVIZ.
–
Glynn Clements <glynn@gclements.plus.com>
–
Scientist
Landcare Research, New Zealand