This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Compliments of the season to All
We have built and installed the latest release of EZSDK 5.03.01.15 so we can use the V4L Capture for the DM816X EVM and have found that the Kernel image does not include the gdbserver and we are unable to debug. Please can someone attend to this urgently as we cannot develop further without it.
Substitute your EZSDK install path in path below:
Do you find gdbserver there?
It is licensed as GPLv3 so you have to manually copy it onto the
target file system /usr/bin folder.
In reply to Michael T:
Running into the same issue with the 8148 EVM, using ti-ezsdk_dm814x-evm_5_03_01_15. Once I dropped the needed files onto the target, gdbserver just crashed with "bus error." Anyone resolve this yet? Here's a quick little log:
I see GDBServer located in a slightly different path:
host$ file ti-ezsdk_dm814x-evm_5_03_01_15/linux-devkit/arm-none-linux-gnueabi/usr/bin/gdbserver ti-ezsdk_dm814x-evm_5_03_01_15/linux-devkit/arm-none-linux-gnueabi/usr/bin/gdbserver: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, stripped
Attempting to run this on the target seems to require an additional library:
target# gdbserver gdbserver: error while loading shared libraries: libthread_db.so.1: cannot open shared object file: No such file or directory
I see we have a libthread_db-1.0.so in the linux-devkit directory. I copied this to the target, renaming it to match what gdbserver was looking for.
host$ find ti-ezsdk_dm814x-evm_5_03_01_15/ -iname libthread*ti-ezsdk_dm814x-evm_5_03_01_15/linux-devkit/arm-none-linux-gnueabi/lib/.debug/libthread_db-1.0.so
host$ file ti-ezsdk_dm814x-evm_5_03_01_15/linux-devkit/arm-none-linux-gnueabi/lib/.debug/libthread_db-1.0.soti-ezsdk_dm814x-evm_5_03_01_15/linux-devkit/arm-none-linux-gnueabi/lib/.debug/libthread_db-1.0.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), statically linked (uses shared libs), for GNU/Linux 2.6.14, not stripped
host$ sudo cp ti-ezsdk_dm814x-evm_5_03_01_15/linux-devkit/arm-none-linux-gnueabi/lib/.debug/libthread_db-1.0.so $TARGET_ROOTS/lib/libthread_db.so.1
And now we see that gdbserver crashes on attempting to run it...
target# gdbserver Bus error
In reply to Jon S.:
Well...I might have a dirty hack of a workaround...but I'd still like to hear what the underlying issue is and a "correct" fix. I still have to dive into debugging, so for all I know at this point, this might not be valid...
If I remember correctly, gdbserver worked fine in the ti-ezsdk_dm814x-evm_5_02_02_60...so I booted my VM for that version and checked the MD5 sums of gdbserver and libthread_db-1.0.so. It turns out that the gdbserver binary is the same, but libthread_db-1.0.so differs.
Working version (dm8148):
host$ md5sum ./libthread_db-1.0.so db637ef33e566bc186cc5ef531156f00 ./libthread_db-1.0.so
host$ ./libthread_db-1.0.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.14, stripped
So (compared to my previous post) one's dynamically linked and stripped, whereas one's statically linked and not stripped? Not sure what's the deal with this file -- digging around on the old 5_02_02_60, I found yet another version in ti-ezsdk_dm8148-evm_5_02_02_60/usr/lib.
Has anyone got the gdbserver to work on the target? I have the same problem with DM8168 and the latest EZSDK release. The version that came with the board worked fine?
but after reading some of the documents in the old version I got the feeling that it was just a preliminary release so I thought upgrading would be a good idea, I guess not!
Just copying it to the target folder doen't work I get:
gdbserver: error while loading shared libraries: libthread_db.so.1: cannot open shared object file: No such file or directory
and copying that doesn't help either?
We are having the same problem as others in this thread have described. Debugging worked fine in EXSDK 5.02.02.60, but gdbserver does not exist in the target filesystem in EXSDK 5.03.01.15. Can someone from TI please help with this?
In reply to Paul Randall24:
As far as I could figure out, TI screwed up the latest EZSDK and left out the gdbserver, you will have to copy it from the codesourcery to the targetFS
The also didn't include a library so that will have to be installed manually to the target also, After I did this debugging worked again.
follow this thread to install the library. http://e2e.ti.com/support/embedded/linux/f/354/t/47210.aspx
In reply to Jeffrey Dionne:
> follow this thread to install the library. http://e2e.ti.com/support/embedded/linux/f/354/t/47210.aspx
Has anybody really made it work following the instructions? I can debug a single thread application but still having a problem debugging multi-threaded application, just as described in http://e2e.ti.com/support/embedded/linux/f/354/p/84357/927400.aspx#927400.
I have tried coping gdbserver and libraries from EZSDK/linux-devkit and also from CodeSourcery, but neither solved the problem.
I use ti-ezsdk_dm814x-evm_5_05_02_00 and DM8148.If there is an older version of EZSDK which is known to work with gdbserver, I would like to try it.
Thanks in advance.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.