edb-debugger
edb-debugger copied to clipboard
DebuggerCore plugin PlatformThread build error
This is the first time I'm trying (and building) edb and I'm having build issues. I'm wondering if it's me or...
Here's some info:
pi@raspberrypi:~ $ neofetch
`.::///+:/-. --///+//-:`` pi@raspberrypi
`+oooooooooooo: `+oooooooooooo: --------------
/oooo++//ooooo: ooooo+//+ooooo. OS: Raspbian GNU/Linux 10 (buster) armv7l
`+ooooooo:-:oo- +o+::/ooooooo: Host: Raspberry Pi 4 Model B Rev 1.2
`:oooooooo+`` `.oooooooo+- Kernel: 5.4.79-v7l+
`:++ooo/. :+ooo+/.` Uptime: 2 hours, 6 mins
...` `.----.` ``.. Packages: 2218 (dpkg)
.::::-``:::::::::.`-:::-` Shell: bash 5.0.3
-:::-` .:::::::-` `-:::- Resolution: 1280x800
`::. `.--.` `` `.---.``.::` DE: LXDE
.::::::::` -::::::::` ` WM: Openbox
.::` .:::::::::- `::::::::::``::. Theme: Clearlooks [GTK2/3]
-:::` ::::::::::. ::::::::::.`:::- Icons: gnome [GTK2/3]
:::: -::::::::. `-:::::::: :::: Terminal: lxterminal
-::- .-:::-.``....``.-::-. -::- Terminal Font: Monospace 9
.. `` .::::::::. `..`.. CPU: BCM2711 (4) @ 1.500GHz
-:::-` -::::::::::` .:::::` Memory: 372MiB / 3827MiB
:::::::` -::::::::::` :::::::.
.::::::: -::::::::. ::::::::
`-:::::` ..--.` ::::::.
`...` `...--..` `...`
.::::::::::
`.-::::-`
pi@raspberrypi:~/Development/edb-debugger/build $ uname -a
Linux raspberrypi 5.4.79-v7l+ #1373 SMP Mon Nov 23 13:27:40 GMT 2020 armv7l GNU/Linux
pi@raspberrypi:~/Development/edb-debugger/build $ uname -m
armv7l
pi@raspberrypi:~/Development/edb-debugger/build $ grep CS_AC_WRITE /usr/local/include/capstone/capstone.h
grep: /usr/local/include/capstone/capstone.h: No such file or directory
pi@raspberrypi:~/Development/edb-debugger/build $ grep CS_AC_WRITE /usr/include/capstone/capstone.h
Note: Shows nothing
Build Output (after cmake completed):
pi@raspberrypi:~/Development/edb-debugger/build $ make
[ 1%] Automatic MOC and UIC for target edb
[ 1%] Built target edb_autogen
[ 30%] Built target edb
[ 30%] Automatic MOC and UIC for target ValueTest
[ 30%] Built target ValueTest_autogen
[ 32%] Built target ValueTest
[ 33%] Automatic MOC and UIC for target DebuggerCore
[ 33%] Built target DebuggerCore_autogen
[ 34%] Building CXX object plugins/DebuggerCore/CMakeFiles/DebuggerCore.dir/unix/linux/arch/arm-generic/PlatformThread.cpp.o
In file included from /home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:28:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformState.h: In member function ‘virtual Register DebuggerCorePlugin::PlatformState::archRegister(uint64_t, std::size_t) const’:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformState.h:72:33: warning: unused parameter ‘type’ [-Wunused-parameter]
Register archRegister(uint64_t type, size_t n) const override {
~~~~~~~~~^~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformState.h:72:46: warning: unused parameter ‘n’ [-Wunused-parameter]
Register archRegister(uint64_t type, size_t n) const override {
~~~~~~~^
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp: In member function ‘bool DebuggerCorePlugin::PlatformThread::fillStateFromPrStatus(DebuggerCorePlugin::PlatformState*)’:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:81:59: warning: unused parameter ‘state’ [-Wunused-parameter]
bool PlatformThread::fillStateFromPrStatus(PlatformState *state) {
~~~~~~~~~~~~~~~^~~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp: In member function ‘long unsigned int DebuggerCorePlugin::PlatformThread::getDebugRegister(std::size_t)’:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:167:60: warning: unused parameter ‘n’ [-Wunused-parameter]
unsigned long PlatformThread::getDebugRegister(std::size_t n) {
~~~~~~~~~~~~^
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp: At global scope:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:177:6: error: no declaration matches ‘long int DebuggerCorePlugin::PlatformThread::setDebugRegister(std::size_t, long int)’
long PlatformThread::setDebugRegister(std::size_t n, long value) {
^~~~~~~~~~~~~~
In file included from /home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:21:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/PlatformThread.h:74:7: note: candidate is: ‘long int DebuggerCorePlugin::PlatformThread::setDebugRegister(std::size_t, long unsigned int)’
long setDebugRegister(std::size_t n, unsigned long value);
^~~~~~~~~~~~~~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/PlatformThread.h:34:7: note: ‘class DebuggerCorePlugin::PlatformThread’ defined here
class PlatformThread final : public IThread {
^~~~~~~~~~~~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp: In member function ‘Status DebuggerCorePlugin::PlatformThread::doStep(edb::tid_t, long int)’:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:269:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare]
for (; i < opCount; ++i) {
~~^~~~~~~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:282:12: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const unsigned int’ [-Wsign-compare]
if (i == opCount)
~~^~~~~~~~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:338:13: warning: enumeration value ‘Unknown’ not handled in switch [-Wswitch]
switch (targetMode) {
^
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:338:13: warning: enumeration value ‘ARM64’ not handled in switch [-Wswitch]
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp: At global scope:
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:376:34: error: ‘Status DebuggerCorePlugin::PlatformThread::step’ is not a static data member of ‘class DebuggerCorePlugin::PlatformThread’
Status PlatformThread::step(edb::EVENT_STATUS status) {
^~~~~~~~~~~~
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:376:34: error: ‘EVENT_STATUS’ is not a member of ‘edb’
/home/pi/Development/edb-debugger/plugins/DebuggerCore/unix/linux/arch/arm-generic/PlatformThread.cpp:376:55: error: expected ‘,’ or ‘;’ before ‘{’ token
Status PlatformThread::step(edb::EVENT_STATUS status) {
^
make[2]: *** [plugins/DebuggerCore/CMakeFiles/DebuggerCore.dir/build.make:232: plugins/DebuggerCore/CMakeFiles/DebuggerCore.dir/unix/linux/arch/arm-generic/PlatformThread.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:350: plugins/DebuggerCore/CMakeFiles/DebuggerCore.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
Any help is appreciated! ~ Brad
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
Hmm, it seems that some of the ARM stuff is slightly out of date :-(
I'll see what I can do to fix that.
Thanks, eteran. 👍🏻
Any updates on this error/issue ? I can reproduce the error on my PI device. Thanks !
Appreciate the bump, I actually have access to an apple silicone MacBook now so it's a good time to revisit this.