Re: Bug#554694: FTBFS with binutils-gold

View: New views
7 Messages — Rating Filter:   Alert me  

Parent Message unknown Re: Bug#554694: FTBFS with binutils-gold

by Dmitry E. Oboukhov-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

reassign 554694 qt4-qmake
retitle 554694 qt4-qmake generates a makefile which is incompatible with binutils-gold
thanks

Hi, Peter.

Goldendict are built by qt4-qmake. I think that You should report
about such projects in qt4-qmake package, because just qt4-qmake
generates linker call command. I think that it is the same as packages
which are under automake/autoconf.

You buried me with the same bugs, but only one really touched my
package. I think You should find out which specific a package has a bug
before submit bugreports.

For example: fluxbox is built with autotools. goldendict is built with
qt4-qmake. Do You suggest me to patch all these packages?


On 00:31 Fri 06 Nov     , Peter Fritzsche wrote:
PF> Source: goldendict
PF> Version: 0.9.0+svn404-1
PF> Severity: minor
PF> User: peter.fritzsche@...
PF> Usertags: no-add-needed

PF> Tried to build your package and it fails to build with GNU binutils-gold. The
PF> important difference is that --no-add-needed is the default behavior of of GNU
PF> binutils-gold. Please provide all needed libraries to the linker when building
PF> your executables.

PF> More informations can be found at
PF> http://wiki.debian.org/qa.debian.org/FTBFS#A2009-11-02Packagesfailingbecausebinutils-gold.2BAC8-indirectlinking

PF> g++ -Wl,-O1 -o goldendict build/folding.o build/main.o build/dictionary.o build/config.o build/sources.o build/mainwindow.o build/utf8.o build/file.o build/bgl_babylon.o build/bgl.o build/initializing.o build/article_netmgr.o build/dictzip.o build/btreeidx.o build/stardict.o build/chunkedstorage.o build/xdxf2html.o build/iconv.o build/lsa.o build/htmlescape.o build/dsl.o build/dsl_details.o build/filetype.o build/fsencoding.o build/groups.o build/groups_widgets.o build/instances.o build/article_maker.o build/scanpopup.o build/articleview.o build/externalviewer.o build/wordfinder.o build/groupcombobox.o build/keyboardstate.o build/mouseover.o build/preferences.o build/mutex.o build/mediawiki.o build/sounddir.o build/hunspell.o build/dictdfiles.o build/audiolink.o build/wstring.o build/wstring_qt.o build/processwrapper.o build/hotkeywrapper.o build/hotkeyedit.o build/langcoder.o build/editdictionaries.o build/loaddictionaries.o build/transliteration.o build/romaji.o build/russiantranslit.o build/german.o build
PF> /website.o build/orderandprops.o build/language.o build/dictionarybar.o build/broken_xrecord.o build/history.o build/atomic_rename.o build/articlewebview.o build/zipfile.o build/indexedzip.o build/moc_mainwindow.o build/moc_dictionary.o build/moc_config.o build/moc_sources.o build/moc_initializing.o build/moc_article_netmgr.o build/moc_groups.o build/moc_groups_widgets.o build/moc_article_maker.o build/moc_scanpopup.o build/moc_articleview.o build/moc_externalviewer.o build/moc_wordfinder.o build/moc_groupcombobox.o build/moc_mouseover.o build/moc_preferences.o build/moc_mediawiki.o build/moc_hotkeywrapper.o build/moc_hotkeyedit.o build/moc_editdictionaries.o build/moc_loaddictionaries.o build/moc_orderandprops.o build/moc_dictionarybar.o build/moc_history.o build/qrc_resources.o build/qrc_flags.o    -L/usr/lib -lvorbisfile -lvorbis -logg -lz -lhunspell-1.2 -lXtst -lQtWebKit -lQtXml -lQtGui -lQtNetwork -lQtCore -lpthread
PF> /usr/bin/ld: build/keyboardstate.o: in function KeyboardState::checkModifiersPressed(int):keyboardstate.cc:33: error: undefined reference to 'XkbGetState'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::ungrabKey(std::_Rb_tree_const_iterator<std::pair<unsigned int, unsigned int> >):hotkeywrapper.cc:481: error: undefined reference to 'XUngrabKey'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::grabKey(unsigned int, unsigned int):hotkeywrapper.cc:473: error: undefined reference to 'XGrabKey'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:305: error: undefined reference to 'XKeysymToKeycode'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:306: error: undefined reference to 'XKeysymToKeycode'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:308: error: undefined reference to 'XKeysymToKeycode'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:309: error: undefined reference to 'XKeysymToKeycode'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:321: error: undefined reference to 'XOpenDisplay'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:350: error: undefined reference to 'XSync'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:330: error: undefined reference to 'XCloseDisplay'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:344: error: undefined reference to 'XFree'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::init():hotkeywrapper.cc:345: error: undefined reference to 'XCloseDisplay'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::nativeKey(int):hotkeywrapper.cc:501: error: undefined reference to 'XStringToKeysym'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::unregister():hotkeywrapper.cc:509: error: undefined reference to 'XSync'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::unregister():hotkeywrapper.cc:514: error: undefined reference to 'XFree'
PF> /usr/bin/ld: build/hotkeywrapper.o: in function HotkeyWrapper::unregister():hotkeywrapper.cc:515: error: undefined reference to 'XCloseDisplay'
PF> collect2: ld returned 1 exit status
PF> make[1]: *** [goldendict] Error 1
--
... mpd is off

. ''`.                               Dmitry E. Oboukhov
: :’  :   email: unera@... jabber://UNera@...
`. `~’              GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537


signature.asc (205 bytes) Download Attachment

Re: Bug#554694: FTBFS with binutils-gold

by Eugeniy Meshcheryakov-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

6 листопада 2009 о 09:32 +0300 Dmitry E. Oboukhov написав(-ла):
> Goldendict are built by qt4-qmake. I think that You should report
> about such projects in qt4-qmake package, because just qt4-qmake
> generates linker call command. I think that it is the same as packages
> which are under automake/autoconf.
It looks like your package uses Xlib directly and does not links with
it. IMHO it is not qmakes fault, it cannot know what libraries your
package needs, its work is to link with Qt. Other libraries should be
specified additionaly.

>
> You buried me with the same bugs, but only one really touched my
> package. I think You should find out which specific a package has a bug
> before submit bugreports.
>
> For example: fluxbox is built with autotools. goldendict is built with
> qt4-qmake. Do You suggest me to patch all these packages?
IMHO that is the right thing to do.

Regards,
Eugeniy Meshcheryakov


signature.asc (205 bytes) Download Attachment

Re: Bug#554694: FTBFS with binutils-gold

by Emilio Pozuelo Monfort :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Dmitry E. Oboukhov wrote:

> reassign 554694 qt4-qmake
> retitle 554694 qt4-qmake generates a makefile which is incompatible with binutils-gold
> thanks
>
> Hi, Peter.
>
> Goldendict are built by qt4-qmake. I think that You should report
> about such projects in qt4-qmake package, because just qt4-qmake
> generates linker call command. I think that it is the same as packages
> which are under automake/autoconf.
>
> You buried me with the same bugs, but only one really touched my
> package. I think You should find out which specific a package has a bug
> before submit bugreports.
>
> For example: fluxbox is built with autotools. goldendict is built with
> qt4-qmake. Do You suggest me to patch all these packages?
The bugs reported for GNOME packages were right, and the packages use autoconf,
so your argument doesn't sound right. If you're missing -l options for the
linker, that's not something autofoo will put in the Makefile if you don't tell
it first.

Cheers,
Emilio



signature.asc (205 bytes) Download Attachment

Re: Bug#554694: FTBFS with binutils-gold

by Sune Vuorela-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

#reassigning and retitling back
reassign 554694 src:goldendict
found 554694 0.9.0+svn404-1
retitle 554694  FTBFS with binutils-gold
thanks

> Hi, Peter.
>
> Goldendict are built by qt4-qmake. I think that You should report
> about such projects in qt4-qmake package, because just qt4-qmake
> generates linker call command. I think that it is the same as packages
> which are under automake/autoconf.

There is no magic behind neither qmake nor autotools. They only link what they
are told to link.

> For example: fluxbox is built with autotools. goldendict is built with
> qt4-qmake. Do You suggest me to patch all these packages?

Yes. if you want to fix the bugs related to using binutils-gold, a stricter
and faster linker.
 
>  build/hotkeywrapper.o: in function
>  HotkeyWrapper::init():hotkeywrapper.cc:305: error: undefined reference to
>  'XKeysymToKeycode' PF> /usr/bin/ld: build/hotkeywrapper.o: in function

you are using xlib directly here. you need to link with it. Probably you
should add a -lx at line 35 in the goldendict.pro file.

/Sune
--
Man, how can I do for pinging a login?

First of all you never need to boot the printer for booting from the cable on
the floppy disk.


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...


Re: Bug#554694: FTBFS with binutils-gold

by Peter Fritzsche :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Dmitry E. Oboukhov wrote:
> Goldendict are built by qt4-qmake. I think that You should report
> about such projects in qt4-qmake package, because just qt4-qmake
> generates linker call command. I think that it is the same as packages
> which are under automake/autoconf.
As others have said it before: these tools don't magically find dependencies.
So it is a user who specified it and in most cases not in auto* or *make, but
in a external script/config file. This means either the package author of the
broken package or the author of the (for example) pkg-config file has to
correct it. So it is correct that not always the broken package is the reason
for that problem.

> You buried me with the same bugs, but only one really touched my
> package. I think You should find out which specific a package has a bug
> before submit bugreports.
I expect ~600 broken packages. I don't have really time to check in detail
what is broken. I do a quick check if it looks like this is the fault of the
package and not the build system, but I cannot create patches for every
problem. I am really sorry if I submit a wrong bug.

To show you that this is probably real a broken config file I attached you a
patch which fixes this packages. I would feel better if it would use pkg-
config or something similar, but I don't know qmake4 good enough to find how
to use it correctly.

And the problem is only that it uses for example XKeysymToKeycode in
hotkeywrapper.cc:305 which is defined by libX11.so `readelf -s
/usr/lib/libX11.so|grep XKeysymToKeycode` - but doesn't link to it correctly.

> For example: fluxbox is built with autotools. goldendict is built with
> qt4-qmake. Do You suggest me to patch all these packages?
You don't have to fix these things. A report back to the upstream author would
be everything I expect from a maintainer. If he real fixes it by himself -
wow, that's wonderful, but I don't force anybody to do that.

Best regards,
        Peter

[goldendict_no-add-needed.patch]

--- a/goldendict.pro 2009-11-06 10:49:10.196891227 +0100
+++ b/goldendict.pro 2009-11-06 10:44:34.852891885 +0100
@@ -32,7 +32,7 @@
     LIBS += -Lwinlibs/lib
 }
 unix {
-    LIBS += -lXtst
+    LIBS += -lXtst -lX11
     PREFIX = $$(PREFIX)
     isEmpty( PREFIX ):PREFIX = /usr
     DEFINES += PROGRAM_DATA_DIR=\\\"$$PREFIX/share/apps/goldendict/\\\"


Re: Bug#554694: FTBFS with binutils-gold

by Brian Nelson-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Sune Vuorela wrote:

> #reassigning and retitling back
> reassign 554694 src:goldendict
> found 554694 0.9.0+svn404-1
> retitle 554694  FTBFS with binutils-gold
> thanks
>
>> Hi, Peter.
>>
>> Goldendict are built by qt4-qmake. I think that You should report
>> about such projects in qt4-qmake package, because just qt4-qmake
>> generates linker call command. I think that it is the same as packages
>> which are under automake/autoconf.
>
> There is no magic behind neither qmake nor autotools. They only link what they
> are told to link.

But only because qt4-qmake in Debian is patched to not follow library
dependency chains when linking.  I think that's the right thing to do
and that this isn't qmake's bug, but it's disingenuous to imply qmake is
not at fault at all when there is a conscious design decision behind it.


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...


Re: Bug#554694: FTBFS with binutils-gold

by Sune Vuorela-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Friday 06 November 2009 15:57:47 Brian Nelson wrote:

> >> Goldendict are built by qt4-qmake. I think that You should report
> >> about such projects in qt4-qmake package, because just qt4-qmake
> >> generates linker call command. I think that it is the same as packages
> >> which are under automake/autoconf.
> >
> > There is no magic behind neither qmake nor autotools. They only link what
> > they are told to link.
>
> But only because qt4-qmake in Debian is patched to not follow library
> dependency chains when linking.  I think that's the right thing to do
> and that this isn't qmake's bug, but it's disingenuous to imply qmake is
> not at fault at all when there is a conscious design decision behind it.

Yes. as it should be. but the patching of the .prl files to not follow linkage
is *not* the issue here. The issue here is that the software in question uses
XLib directly, and should actively link against it.

/Sune


--
To UNSUBSCRIBE, email to debian-devel-REQUEST@...
with a subject of "unsubscribe". Trouble? Contact listmaster@...