[RESOLVED] GDB package has not installed.
-
I have the next versions of software below:
root@Omega-D913:~# oupgrade -c > Device Firmware Version: 0.2.2 b200 > Checking latest version online... url: https://api.onioniot.com/firmware/omega2p/stable > Repo Firmware Version: 0.2.2 b200 > Comparing version numbers > Device firmware is up to date!
Next I'm trying to install gdb package (The gcc and make packagies are already installed). Then I encounter with the next errors below:
root@Omega-D913:~# opkg --force-depends install gdb Installing gdb (8.2.1-2) to root... Downloading http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/base/gdb_8.2.1-2_mipsel_24kc.ipk Installing libncurses6 (6.1-4) to root... Downloading http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/base/libncurses6_6.1-4_mipsel_24kc.ipk Collected errors: * check_data_file_clashes: Package libncurses6 wants to install file /usr/lib/libformw.so.6 But that file is already provided by package * libncurses * check_data_file_clashes: Package libncurses6 wants to install file /usr/lib/libmenuw.so.6 But that file is already provided by package * libncurses * check_data_file_clashes: Package libncurses6 wants to install file /usr/lib/libncursesw.so.6 But that file is already provided by package * libncurses * check_data_file_clashes: Package libncurses6 wants to install file /usr/lib/libpanelw.so.6 But that file is already provided by package * libncurses * opkg_install_cmd: Cannot install package gdb.
I think the problem in metada. I'm noob in Linux, please help me how to fix it?
-
@Modest-Polykarpovich --force-depends is not always required, we use it to ask opkg to ignore all the warnings and stuff. I prefer to just simply use opkg install gdb. If you run gdb and it bitches about missing dependencies you can simply install them.
I took a new Omega 2+, configured the wifi and ran opkg install gdb without issue, which tells me the issue is with your device. Can you post your /etc/opkg/distfeed.conf.
If you have nothing on your device you value, use the factory reset, run oupgrade, edit your /etc/opkg/distfeeds.conf, run opkg update, run opkg install gdb. This will likely fix your issue.
I can't help but comment that after 30 years writing C and ASM code, I consider gdb to always be a last resort. Logging is your friend, search for my response on how to set up a remote logging server for your Omega. I have 80+ devices, all running my own custom applications, and there is nothing I need to know about these devices that I cannot understand using logging, or by listening on wireshark.
-
@Modest-Polykarpovich Enable the second (2nd) and the fifth (5th) lines of the '/etc/opkg/distfeeds.conf' file.
# OpenWrt 17.01 based v0.2.2 b200 firmware root@Omega-5BE1:/# cat /etc/opkg/distfeeds.conf #src/gz reboot_core http://downloads.lede-project.org/releases/17.01-SNAPSHOT/targets/ramips/mt7688/packages src/gz reboot_base http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/base #src/gz reboot_onion http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/onion ## src/gz reboot_luci http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/luci src/gz reboot_packages http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/packages ## src/gz reboot_routing http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/routing ## src/gz reboot_telephony http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/telephony src/gz omega2_core http://repo.onion.io/omega2/packages/core src/gz omega2_base http://repo.onion.io/omega2/packages/base src/gz omega2_packages http://repo.onion.io/omega2/packages/packages src/gz omega2_routing http://repo.onion.io/omega2/packages/routing src/gz omega2_onion http://repo.onion.io/omega2/packages/onion root@Omega-5BE1:/# opkg update ... root@Omega-5BE1:/# opkg list | grep -i ^make make - 4.2.1-2 - The Make package contains a tool to create executables from source files. root@Omega-5BE1:/# opkg list | grep -i ^gcc gcc - 5.4.0-1 - build a native toolchain for compiling on target root@Omega-5BE1:/# opkg list | grep -i ^gdb gdb - 7.11.1-1 - GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another program was doing at the moment it crashed. gdbserver - 7.11.1-1 - GDBSERVER is a program that allows you to run GDB on a different machine than the one which is running the program being debugged. # Omega2(+)'s storage capacity is extended formerly using a USB drive or MicroSD card (pivot-overlay) # on a clean system root@Omega-5BE1:/# opkg install make gcc gdb
Good luck!
-
Many thanks all. The problem has been resolved!!! Details is below.
@crispyoz said in GDB package has not installed.:
I took a new Omega 2+, configured the wifi and ran opkg install gdb without issue, which tells me the issue is with your device. Can you post your /etc/opkg/distfeed.conf.
Here is my list of file /etc/opkg/distfeed.conf It configuration is works!!!:
root@Omega-D913:~# cat /etc/opkg/distfeeds.conf #src/gz reboot_core http://downloads.lede-project.org/releases/17.01-SNAPSHOT/targets/ramips/mt7688/packages src/gz reboot_base http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/base #src/gz reboot_onion http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/onion ## src/gz reboot_luci http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/luci src/gz reboot_packages http://downloads.openwrt.org/snapshots/packages/mipsel_24kc/packages ## src/gz reboot_routing http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/routing ## src/gz reboot_telephony http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/telephony src/gz omega2_core http://repo.onion.io/omega2/packages/core src/gz omega2_base http://repo.onion.io/omega2/packages/base src/gz omega2_packages http://repo.onion.io/omega2/packages/packages src/gz omega2_routing http://repo.onion.io/omega2/packages/routing src/gz omega2_onion http://repo.onion.io/omega2/packages/onion
I can't help but comment that after 30 years writing C and ASM code, I consider gdb to always be a last resort. Logging is your friend, search for my response on how to set up a remote logging server for your Omega. I have 80+ devices, all running my own custom applications, and there is nothing I need to know about these devices that I cannot understand using logging, or by listening on wireshark.
You are hero. Logging, asserts, tracing are good instruments, but I drop much time to find errors without Debugger. The debugger is more perfect instrument for me. And I'm codding in C++ - it's need powerfull IDE such as Visual Studio or Eclipse, because C++ syntax is too difficult for a simple text editor.
By the way. The problem was links with different versions of Kernel and Packages. Default repository downloading packages from the OpenWRT v. 19xx, but the Onion OS is based on version 18.06.
Now I'm installed gdb and gdbserver. Both of them are already tested and works! Subject can be closed.