From: Sergio C. <sec...@gm...> - 2011-04-19 13:09:05
|
Hi, I don't understand much about building from source so I was building lxpanel (in Debian sid) and got this error when running *make *(note that *./configure --sysconfdir=/etc* completed fine): /usr/bin/ld.bfd.real: ../src/plugins/libbuiltin_plugins.a(taskbar.o): undefined reference to symbol 'XGetWindowAttributes' /usr/bin/ld.bfd.real: note: 'XGetWindowAttributes' is defined in DSO //usr/lib/libX11.so.6 so try adding it to the linker command line //usr/lib/libX11.so.6: could not read symbols: Invalid operation collect2: ld returned 1 exit status make[3]: ** [lxpanel] Erro 1 make[3]: Saindo do diretório `/home/lxde/src/lxpanel/src' make[2]: ** [all-recursive] Erro 1 make[2]: Saindo do diretório `/home/lxde/src/lxpanel/src' make[1]: ** [all-recursive] Erro 1 make[1]: Saindo do diretório `/home/lxde/src/lxpanel' make: ** [all] Erro 2 It's the latest lxpanel from git and I have all the build dependencies installed (at least the ones Debian uses). Is there a simple workaround for that error? I know so little about these things that I don't even know if it's a bug in the package or not. Thank you. |
From: Martin B. / b. <br...@bs...> - 2011-04-19 13:16:36
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On 2011-04-19 15:08, Sergio Cipolla wrote: > Hi, I don't understand much about building from source so I was building > lxpanel (in Debian sid) and got this error when running *make *(note > that *./configure > --sysconfdir=/etc* completed fine): > > /usr/bin/ld.bfd.real: ../src/plugins/libbuiltin_plugins.a(taskbar.o): > undefined reference to symbol 'XGetWindowAttributes' > /usr/bin/ld.bfd.real: note: 'XGetWindowAttributes' is defined in DSO > //usr/lib/libX11.so.6 so try adding it to the linker command line > //usr/lib/libX11.so.6: could not read symbols: Invalid operation > collect2: ld returned 1 exit status > make[3]: ** [lxpanel] Erro 1 > make[3]: Saindo do diretório `/home/lxde/src/lxpanel/src' > make[2]: ** [all-recursive] Erro 1 > make[2]: Saindo do diretório `/home/lxde/src/lxpanel/src' > make[1]: ** [all-recursive] Erro 1 > make[1]: Saindo do diretório `/home/lxde/src/lxpanel' > make: ** [all] Erro 2 > > It's the latest lxpanel from git and I have all the build dependencies > installed (at least the ones Debian uses). > > Is there a simple workaround for that error? > I know so little about these things that I don't even know if it's a bug in > the package or not. LXPanel git HEAD (a072a895cb5a93a60255f0d89ddec58be0466943) builds prefectly clean, you must be missing something in your environment. My build log (debian testing though. can try it at a SID tomorrow or something) http://buildbot.lxde.bsnet.se/builders/LXDE-lxpanel/builds/32 - -- brother http://sis.bthstudent.se -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBCAAGBQJNrYsqAAoJEJbdSEaj0jV7cpYH/387Vhg+M3HD0WdCQZazpAvR dFdTNRaOOYsDNmjqXEl//4OLA6Aa63mwXrFhGE+lWBkv2mOg0Jy70qvWtCm9mP6g np5JcZU89+FVBadEzLAWJSYsVE0wNuqXmgwmSFLDY5wrielOCip5AipykZqJNmNu hx1FCN2WR0rBdFcBYWHaaYiqW69Ljx/DAttSlLcFglhtbOWCozLNPvj3pE2Oj2// L1mQz3i3mGBSM+bCCZaLbKMjhYP8euX8GY9rrs8YYAXJ3gtabkO+Xy+WC1ddwe2T tiwCzoopjuEAVURuzQmv6AIAR8id1cMrL9SuywLUX7MNwbkPJ8C+briRLq0FHiY= =THe5 -----END PGP SIGNATURE----- |
From: Guido B. <gui...@be...> - 2011-04-19 15:16:26
|
* Martin Bagge / brother <br...@bs...> [2011-04-19 15:17]: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > On 2011-04-19 15:08, Sergio Cipolla wrote: > > Hi, I don't understand much about building from source so I was building > > lxpanel (in Debian sid) and got this error when running *make *(note > > that *./configure > > --sysconfdir=/etc* completed fine): > > > > /usr/bin/ld.bfd.real: ../src/plugins/libbuiltin_plugins.a(taskbar.o): > > undefined reference to symbol 'XGetWindowAttributes' > > /usr/bin/ld.bfd.real: note: 'XGetWindowAttributes' is defined in DSO > > //usr/lib/libX11.so.6 so try adding it to the linker command line > > //usr/lib/libX11.so.6: could not read symbols: Invalid operation > > collect2: ld returned 1 exit status > > make[3]: ** [lxpanel] Erro 1 > > make[3]: Saindo do diretório `/home/lxde/src/lxpanel/src' > > make[2]: ** [all-recursive] Erro 1 > > make[2]: Saindo do diretório `/home/lxde/src/lxpanel/src' > > make[1]: ** [all-recursive] Erro 1 > > make[1]: Saindo do diretório `/home/lxde/src/lxpanel' > > make: ** [all] Erro 2 > > > > It's the latest lxpanel from git and I have all the build dependencies > > installed (at least the ones Debian uses). > > > > Is there a simple workaround for that error? > > I know so little about these things that I don't even know if it's a bug in > > the package or not. > > LXPanel git HEAD (a072a895cb5a93a60255f0d89ddec58be0466943) builds > prefectly clean, you must be missing something in your environment. > My build log (debian testing though. can try it at a SID tomorrow or > something) > http://buildbot.lxde.bsnet.se/builders/LXDE-lxpanel/builds/32 Debian has recently changed the BFD linker default behavior following gold in not automatically resolving symbols in the dependencies of linked objects. In case you need to do what the above error tells you to do and explicitly link against libX11 when using its symbols. -- Guido Berhoerster |
From: Sergio C. <sec...@gm...> - 2011-04-19 17:15:21
|
Ok, ./configure --sysconfdir=/etc --enable-man LIBS=-lX11 did the trick (--enable-man was needed too). I figured that from ./configure --help and Google but would X11_LIBS="/usr/lib/libX11.so.6" work too (just wondering)? |
From: Guido B. <gui...@be...> - 2011-04-19 17:51:16
|
* Sergio Cipolla <sec...@gm...> [2011-04-19 19:16]: > Ok, > ./configure --sysconfdir=/etc --enable-man LIBS=-lX11 > did the trick (--enable-man was needed too). > > I figured that from ./configure --help and Google but would > X11_LIBS="/usr/lib/libX11.so.6" > work too (just wondering)? Use neither one since these will likely lead to collateral damage, ie. unecessary linking. The right thing to do would be to fix the automake makefile used to build the object which needs the libX11 symbol by adding -lX11 to its LDADD macro. -- Guido Berhoerster |
From: Sérgio C. <sec...@gm...> - 2011-04-19 19:09:27
|
Em 19-04-2011 16:08:11, Guido Berhoerster <gui...@be...>,Martin Bagge / brother <br...@bs...>, LXDE list escreveu: > * Sergio Cipolla <sec...@gm...> [2011-04-19 19:16]: > > Ok, > > ./configure --sysconfdir=/etc --enable-man LIBS=-lX11 > > did the trick (--enable-man was needed too). > > > I figured that from ./configure --help and Google but would > > X11_LIBS="/usr/lib/libX11.so.6" > > work too (just wondering)? > Use neither one since these will likely lead to collateral > damage, ie. unecessary linking. The right thing to do would be to > fix the automake makefile used to build the object which needs > the libX11 symbol by adding -lX11 to its LDADD macro. > -- > Guido Berhoerster > Ok, I changed lxpanel/src/Makefile.am 48c48,49 < $(INTLLIBS) --- > $(INTLLIBS) \ > -lX11 and it worked. Thank you. |