kdevelop build error: undefined reference to `KDevelop::EditorContext::currentWord() const'

Aetf 7437103 at gmail.com
Sat Jun 25 12:01:06 UTC 2016


Still, I can build it without any error. :/

On Fri, Jun 24, 2016 at 1:40 PM René J.V. <rjvbertin at gmail.com> wrote:

> It also seems (from nm output) that the symbol ought to be visible but I
> have been known to misinterpret that information before.


It's marked as a T and it shows up with -g option, so I think it's there.


> It's something to look at, as well as any custom compiler flags you might
> be using. Or the compiler version ...
> Maybe use the -loadall linker option?
>

I'm using gcc 6.1.1 on Arch Linux. There should be no special custom
compiler flags as far as I remember. The actual command is
/usr/bin/c++  -fPIC -std=c++0x -Wall -Wextra -Wcast-align -Wchar-subscripts
-Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor
-Woverloaded-virtual -Werror=return-type -Wno-missing-field-initializers
-fexceptions -g -Wl,--no-undefined -Wl,--fatal-warnings
-Wl,--enable-new-dtags  -shared  -o kdevgdb.so
CMakeFiles/kdevgdb.dir/debuggerplugin.cpp.o
CMakeFiles/kdevgdb.dir/gdb.cpp.o
CMakeFiles/kdevgdb.dir/disassemblewidget.cpp.o
CMakeFiles/kdevgdb.dir/gdboutputwidget.cpp.o
CMakeFiles/kdevgdb.dir/debugsession.cpp.o
CMakeFiles/kdevgdb.dir/gdbbreakpointcontroller.cpp.o
CMakeFiles/kdevgdb.dir/gdbconfigpage.cpp.o
CMakeFiles/kdevgdb.dir/variablecontroller.cpp.o
CMakeFiles/kdevgdb.dir/gdbframestackmodel.cpp.o
CMakeFiles/kdevgdb.dir/gdbvariable.cpp.o
CMakeFiles/kdevgdb.dir/registers/registersview.cpp.o
CMakeFiles/kdevgdb.dir/registers/registercontroller.cpp.o
CMakeFiles/kdevgdb.dir/registers/registersmanager.cpp.o
CMakeFiles/kdevgdb.dir/registers/registercontroller_x86.cpp.o
CMakeFiles/kdevgdb.dir/registers/registercontroller_arm.cpp.o
CMakeFiles/kdevgdb.dir/registers/modelsmanager.cpp.o
CMakeFiles/kdevgdb.dir/registers/converters.cpp.o
CMakeFiles/kdevgdb.dir/qrc_kdevgdb.cpp.o
CMakeFiles/kdevgdb.dir/kdevgdb_automoc.cpp.o
/home/aetf/develop/stage/lib64/libKDevPlatformLanguage.so.10.0.0
/home/aetf/develop/stage/lib64/libKDevPlatformProject.so.10.0.0
../common/libkdevdebuggercommon.a
/home/aetf/develop/stage/lib64/libKDevPlatformOutputView.so.10.0.0
/usr/lib/libKF5ThreadWeaver.so.5.23.0
/home/aetf/develop/stage/lib64/libKDevPlatformSerialization.so.10.0.0
/home/aetf/develop/stage/lib64/libKDevPlatformDebugger.so.10.0.0
/home/aetf/develop/stage/lib64/libKDevPlatformSublime.so.10.0.0
/home/aetf/develop/stage/lib64/libKDevPlatformUtil.so.10.0.0
/home/aetf/develop/stage/lib64/libKDevPlatformInterfaces.so.10.0.0
/usr/lib/libKF5TextEditor.so.5.23.0 /usr/lib/libKF5Parts.so.5.23.0
/usr/lib/libKF5KIOWidgets.so.5.23.0 /usr/lib/libKF5KIOCore.so.5.23.0
/usr/lib/libKF5JobWidgets.so.5.23.0 /usr/lib/libKF5XmlGui.so.5.23.0
/usr/lib/libKF5TextWidgets.so.5.23.0 /usr/lib/libKF5Service.so.5.23.0
/usr/lib/libKF5SonnetUi.so.5.23.0 /usr/lib/libKF5ItemModels.so.5.23.0
/usr/lib/libprocessui.so.5.6.5 /usr/lib/libprocesscore.so.5.6.5
/usr/lib/libKF5Completion.so.5.23.0 /usr/lib/libKF5ConfigWidgets.so.5.23.0
/usr/lib/libKF5WidgetsAddons.so.5.23.0 /usr/lib/libKF5Codecs.so.5.23.0
/usr/lib/libKF5ConfigGui.so.5.23.0 /usr/lib/libKF5ConfigCore.so.5.23.0
/usr/lib/libQt5Xml.so.5.6.1 /usr/lib/libKF5Auth.so.5.23.0
/usr/lib/libQt5DBus.so.5.6.1 /usr/lib/libKF5I18n.so.5.23.0
/usr/lib/libKF5CoreAddons.so.5.23.0 /usr/lib/libQt5Widgets.so.5.6.1
/usr/lib/libQt5Gui.so.5.6.1 /usr/lib/libQt5Network.so.5.6.1
/usr/lib/libQt5Core.so.5.6.1 -Wl,-rpath,/home/aetf/develop/stage/lib64:
-Wl,-rpath-link,/home/aetf/develop/stage/lib64


>
> I thought I'd be nice and tried to build on OS X using clang 3.8 (from
> MacPorts). The debuggers subdir builds there after correcting a single
> error:
>
> kf5-kdevelop-5/debuggers/common/midebugger.cpp:105:11: error:
>       no member named 'kill' in the global namespace
>         ::kill(pid, SIGINT);
>         ~~^
> 1 error generated.
> make[2]: ***
> [debuggers/common/CMakeFiles/kdevdebuggercommon.dir/midebugger.cpp.o] Error
> 1
>
> -> you need to `#include <signal.h>` on OS X, not `#include "sys/signal.h"`
>

Oops, actually `#include <signal.h>` also works on OS X. It must be me
somehow changed it when moving the code.


> Not even an error building kdevgdb. I do see this however, linking
> test_gdb


A quick googling show it has something to do with different `-fvisibility`
argument when compiling the code. What arguments are you using to compile
midebugsession.cpp?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20160625/c13a7a77/attachment.html>


More information about the KDevelop-devel mailing list