Bug 157874 - undefined reference to `KTextEdit::enableFindReplace(bool)
Summary: undefined reference to `KTextEdit::enableFindReplace(bool)
Status: RESOLVED FIXED
Alias: None
Product: bindings
Classification: Developer tools
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: kde-bindings
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-15 15:17 UTC by Vladislav G. Mikhailikov
Modified: 2009-04-07 21:51 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Quickly implemented module (410 bytes, patch)
2008-02-15 16:32 UTC, Vladislav G. Mikhailikov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vladislav G. Mikhailikov 2008-02-15 15:17:10 UTC
Version:            (using Devel)
Installed from:    Compiled sources
Compiler:          GCC-4.2.3/Qt-4.3.3 pentium4-east-linux
OS:                Linux

I think something wrong visibility in KDE UI library class - KTextEdit. Here, what I can see with nm -C /opt/kde4/lib/libkdeui.so.5.1.0 | grep "KTextEdit::"
---------------------------
001e705a T KTextEdit::slotDoFind()
001e7908 T KTextEdit::wheelEvent(QWheelEvent*)
001e8b68 T KTextEdit::qt_metacall(QMetaObject::Call, int, void**)
001e6cb6 T KTextEdit::qt_metacast(char const*)
001e89a6 T KTextEdit::setReadOnly(bool)
001e6cfc T KTextEdit::slotReplace()
001e784e T KTextEdit::focusInEvent(QFocusEvent*)
001e6fa2 T KTextEdit::slotFindNext()
001e75a0 T KTextEdit::checkSpelling()
001e74ca T KTextEdit::highlightWord(int, int)
001e82b2 T KTextEdit::keyPressEvent(QKeyEvent*)
001e730a T KTextEdit::slotDoReplace()
001e7e06 T KTextEdit::deleteWordBack()
001e7942 T KTextEdit::mousePopupMenu()
001e6be8 T KTextEdit::setHighlighter(Sonnet::Highlighter*)
001e71da T KTextEdit::slotReplaceNext()
001e7cc8 T KTextEdit::contextMenuEvent(QContextMenuEvent*)
001e6c36 T KTextEdit::spellCheckStatus(QString const&)
0024d90c D KTextEdit::staticMetaObject
001e78b8 T KTextEdit::createHighlighter()
001e7dbc T KTextEdit::deleteWordForward()
001e6c72 T KTextEdit::checkSpellingChanged(bool)
001e7780 T KTextEdit::setCheckSpellingEnabled(bool)
001e7550 T KTextEdit::setSpellCheckingLanguage(QString const&)
001e7578 T KTextEdit::setSpellCheckingConfigFileName(QString const&)
001e818e T KTextEdit::Private::slotAllowTab()
001e81c0 T KTextEdit::Private::menuActivated(QAction*)
001e80e2 T KTextEdit::Private::slotReplaceText(QString const&, int, int, int)
001e7d58 T KTextEdit::Private::slotFindHighlight(QString const&, int, int)
001e6bda T KTextEdit::Private::slotSpellCheckDone(QString const&)
001e827c T KTextEdit::Private::spellCheckerCanceled()
001e7d0e T KTextEdit::Private::spellCheckerFinished()
001e7830 T KTextEdit::Private::toggleAutoSpellCheck()
001e81f6 T KTextEdit::Private::spellCheckerCorrected(QString const&, int, QString const&)
001e6bd8 T KTextEdit::Private::spellCheckerAutoCorrect(QString const&, QString const&)
001e7534 T KTextEdit::Private::spellCheckerMisspelling(QString const&, int)
001e8d0e t KTextEdit::Private::Private(KTextEdit*)
001e8d84 t KTextEdit::Private::~Private()
001e6de8 T KTextEdit::replace()
001e6ed4 T KTextEdit::slotFind()
001e7f5e T KTextEdit::KTextEdit(QWidget*)
001e801e T KTextEdit::KTextEdit(QString const&, QWidget*)
001e7fbe T KTextEdit::KTextEdit(QWidget*)
001e8080 T KTextEdit::KTextEdit(QString const&, QWidget*)
001e7e58 T KTextEdit::~KTextEdit()
001e7eba T KTextEdit::~KTextEdit()
001e7f0c T KTextEdit::~KTextEdit()
001e6c24 T KTextEdit::metaObject() const
001e6bdc T KTextEdit::highlighter() const
001e6c14 T KTextEdit::checkSpellingEnabled() const
001e7e50 T non-virtual thunk to KTextEdit::~KTextEdit()
001e7eb2 T non-virtual thunk to KTextEdit::~KTextEdit()
---------------------------

And the compiler message in smokekde:

[ 10%] Built target smokeqt
Linking CXX shared library ../../lib/libsmokekde.so
CMakeFiles/smokekde.dir/x_9.o: In function `x_KTextEdit::x_17(Smoke::StackItem*)':
/usr/src/elcd/BUILD/kdebindings4/build/smoke/kde/x_9.cpp:13091: undefined reference to `KTextEdit::enableFindReplace(bool)'
collect2: ld returned 1 exit status
make[2]: *** [lib/libsmokekde.so.2.0.0] Error 1
make[1]: *** [smoke/kde/CMakeFiles/smokekde.dir/all] Error 2
make: *** [all] Error 2

So far, I'm using very strict build with next ld options: export LDFLAGS="-pie -Wl,-z,relro -Wl,--hash-style=gnu,--enable-new-dtags,--as-needed,--no-undefined"
Comment 1 Vladislav G. Mikhailikov 2008-02-15 16:32:09 UTC
Created attachment 23585 [details]
Quickly implemented module

O.K. I found the roots in kdeui/widgets. See the attached patch.
Comment 2 Vladislav G. Mikhailikov 2008-02-15 16:39:31 UTC
In fact this problem is related to kdelibs and initial bug report was erreneosly placed to kdebindings because I found it during kdebindings build. I'm sorry.
Comment 3 Andrew Coles 2009-04-07 21:51:01 UTC
Fixed in trunk.