www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/09/17/04:32:32

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Message-ID: <02e5e4c5b232f0df1b11d45895efe813.squirrel@somewhere-in-the-space.org>
Date: Thu, 17 Sep 2015 10:32:11 +0200
Subject: [geda-user] Undefined reference to libgio function while compiling
geda-gaf-1.8.2 on Cygwin
From: "Arnaud Gardelein" <arnaud AT oscopy DOT org>
To: geda-user AT delorie DOT com
User-Agent: SquirrelMail/1.4.23 [SVN]
MIME-Version: 1.0
X-Priority: 3 (Normal)
Importance: Normal
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id t8H8WHOF007849
Reply-To: geda-user AT delorie DOT com

Trying to compile geda-gaf-1.8.2 on cygwin, after a simple ./configure the
make process stops with this message:
/bin/sh ../../libtool  --tag=CC   --mode=link gcc -Wall  
-I/usr/include/guile/1.8  -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include  -D_REENTRANT -I/usr/include/gdk-pixbuf-2.0
-I/usr/include/libpng16 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include  -g -O2 -lglib-2.0 -lintl -lpcre -lintl
-liconv -lpcre  -lguile -lgmp -lcrypt -lm -lltdl  -lgdk_pixbuf-2.0 -lm
-lgmodule-2.0 -lpng16 -lm -lz -lgobject-2.0 -lffi -lglib-2.0 -lintl -lpcre
-lintl -liconv -lpcre   -o geda-shell.exe geda_shell-shell.o
../src/libgeda.la -lintl -lm
libtool: link: gcc -Wall -I/usr/include/guile/1.8 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -D_REENTRANT -I/usr/include/gdk-pixbuf-2.0
-I/usr/include/libpng16 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -g -O2 -o .libs/geda-shell.exe
geda_shell-shell.o  ../src/.libs/libgeda.a /usr/lib/libguile.dll.a
/usr/lib/libgmp.dll.a -lcrypt /usr/lib/libltdl.dll.a -lgdk_pixbuf-2.0
-lgmodule-2.0 /usr/lib/libpng16.dll.a -lz -lgobject-2.0 -lffi -lglib-2.0
/usr/lib/libpcre.dll.a /usr/lib/libintl.dll.a /usr/lib/libiconv.dll.a
../src/.libs/libgeda.a(libgeda_la-o_picture.o): In function
`o_picture_set_from_buffer':
[basedir]/geda-gaf-1.8.2/libgeda/src/o_picture.c:1133: undefined reference
to `g_input_stream_get_type'
[basedir]/geda-gaf-1.8.2/libgeda/src/o_picture.c:1133: undefined reference
to `g_memory_input_stream_new_from_data'
collect2: error: ld returned 1 exit status

However it seems that the two functions are present in the library:
$ objdump -x /usr/lib/libgio-2.0.dll.a|grep -B2 -A2 g_input_stream_get_type
[  4](sec  5)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$6
[  5](sec -1)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000001 @feat.00
[  6](sec  1)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000
_g_input_stream_get_type
[  7](sec  3)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000
__imp__g_input_stream_get_type
[  8](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000
__head_cyggio_2_0_0_dll

$ objdump -x /usr/lib/libgio-2.0.dll.a|grep -B2 -A2
g_memory_input_stream_new_from_data
[  4](sec  5)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 .idata$6
[  5](sec -1)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000001 @feat.00
[  6](sec  1)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000
_g_memory_input_stream_new_from_data
[  7](sec  3)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000
__imp__g_memory_input_stream_new_from_data
[  8](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000
__head_cyggio_2_0_0_dll

Then running configure with
./configure LIBS="-lgio-2.0 /usr/lib/libgio-2.0.dll.a"
seems to solve the issue.

As a backup I also tried to compile the latest version from [1], needing
Guile 2.0 which is not available with Cygwin. This triggers the need for
bdwgc [2]. After compilation of bdwgc Guile 2.0 fails to compile but I its
not the place here to report Guile issues.

[1] ftp://ftp.delorie.com/pub/geda-windows/snapshots/
[2] https://github.com/ivmai/bdwgc


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019