按照QQ群里中文文档的步骤配置环境
没出现问题;
设置好共享文件夹后,DNS启动总是失败,怀疑是主机和虚拟机之间网络存在问题
尝试主机和虚拟机互ping,存在虚拟机ping不通主机的问题,在网上寻找答案
尝试了好几种解决方案,包括关闭防火墙、重新安装DNS、修改配置文件,均未奏效
参照飞书文档配好了开发板启动后的操作
麻了,一直没搞明白DNS服务器为什么一直启动失败,网络也一直没法ping通。。。。
找老师问了一下,尝试去仔细分析DNS日志文件,看看是不是ubuntu版本兼容问题
麻了,问题出在配置文件,第一次打开配置文件不小心碰到键盘,在文件首输了一个f,导致配置文件里配置的共享文件夹目录没法识别,修正后,DNS启动成功。
但又发现了新的问题,虚拟机还是没法ping通主机
泪流满面了。。
依旧是ping不通,不知道是哪里的问题,依照飞书文档的配置做一遍试试
还是ping不通,而且原来主机能ping通虚拟机,先在也不行了,头大。
ping不通,先不管了,直接试试启动板子,发现DNS出现问题,检查一下前置步骤,,原来是没有禁用主机wifi,禁用一下后再次启动。
win!!
太惰怠了,都给我摆完了!!!
虚拟机开发环境的搭建,包括32位代码运行支持,gcc使用,交叉编译环境配置不成功问题解决,make生成arm板可执行文件,syslink例程的运行
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libc6:i386 libncurses5:i386 libstdc++6:i386
方法一我这边一直行不通,所以我暂时用方法二
sudo gedit /root/.bashrc
在文档最后添加编译工具绝对路径,需注意由于[HOME]目录设置的名 字可能不同,需对应实际而定,例如按照当前路径应添加: (修改加粗部分)
export PATH=**/home/user/**CodeSourcery/Sourcery_G++_Lite/bin:$PATH
每次编译都要配置一次
export PATH=/home/user/CodeSourcery/Sourcery_G++_Lite/bin:$PATH
没有安装make的需要先安装一下
sudo apt update
sudo apt install make
放入一个文件目录下
helloworld.c
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
makefile
cc = $(CROSS_COMPILE)gcc
helloworld.o: helloworld.c
$(cc) -c helloworld.c
helloworld: helloworld.o
$(cc) helloworld.o -o helloworld
rm *.o
export PATH=(/home/user)/CodeSourcery/Sourcery_G++_Lite/bin:$PATH
make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm helloworld
cp helloworld ../ti-ezsdk_dm816x-evm_5_05_01_04/filesystem/ezsdk-dm816x-evm-rootfs/home/root/my20240312
开发板启动后终端已经在root文件夹
./my20240312
看到正常输出即可
启动开发板后输入以下命令
cd ../
cd ../
cd ./ex01_helloworld/release
./run.sh
赶紧开搞第二阶段的ex04和gdbserver
编译不成功->(检查 ../../products.mak, 并根据安装位置,修改! 其实就是user --> guan(另外,注释了109行,116行,137行,156行,177行,227行) 该错误是ex01目标下的products.mak第60行, include $(EXBASE)/../../products.mak/ 多出/,删除后,可运行make .show)->还是编译失败->【删掉原来的ex04(管理员),重新解压一份(两份有所区别)】->运行成功了(不知道为啥,原来的只是多了一个本该make后才存在的文件夹)
参考7,8次课堂笔记,以及关于新安装ubuntu的环境.txt
0.进入ex04(/home/zhang/workspace/ti-ezsdk_dm816x-evm_5_05_01_04/component-sources/syslink_2_20_00_14/examples/)
1.make .show-products命令检查工具的路径是否符合安装路径一致!如果不一致,需要修改../../products.mak,将文件内的所有user修改为自己的路径(如zhang/workspace),并注释了109行,116行,137行,156行,177行,227行
若第一步报这样的错:
products.mak:60: ../../products.mak/: Not a directory make: *** No rule to make target '../../products.mak/'. Stop.那么进入./products.mak删去products.mak第60行,include $(EXBASE)/../../products.mak/中最后一个/
2.接下来make .show,若路径都正确,就没问题了,直接make,之后make install
我在这一步又出问题了,make之后报错,host端没问题,但dsp端生成不完整,解决方案是:删掉原来的ex04(管理员),重新解压一份(两份有所区别),(不知道为啥,不能make成功的只是多了一个本该make后才存在的文件夹)
提前准备工作还有下载以及解压arm-2014.05.tar.gz
按照以下步骤进行就没问题,唯一一点变化是将第二步中的gdbserver路径修改为刚解压的arm-2014.05.tar.gz中gdbserver的路径
【4.调试helloworld测试】 (1)准备工作,目标板(192.168.1.21)与虚拟机网络(192.168.1.41)已连接。 (2)在虚拟机下将ti-ezsdk.../inux-devkit/arm-none-linux-gnueabi/usr/bin/gdbserver复制到ti-ezsdk.../filesystem/ezsdk-dm816x-evm-rootfs/usr/bin/下 (3)进入helloworld的编译目录,里面有helloworld.c源文件。注意,要添加编译开关-g ! 在目标板控制台:gdbserver 192.168.1.41:2345 helloworld (注意文件名正确) 在虚拟机上: export PATH=/home/user/CodeSourcery/Sourcery_G++_Lite/bin:$PATH arm-none-linux-gnueabi-gdb helloworld 启动后: (gdb) target remote 192.168.1.21:2345
开始调试:【注:几个常用的调试命令】
(1)l:列出所有源代码 (2)break main:在main处打断点 break test_debug.c:11:在test_debug.c的11行打断点 (3)c:运行到断点处 (4)step:单步执行 (5)next:单步执行,但是step会进入函数里面,但是next不会 (6)print a:打印a这个变量的值 (6)quit:退出,输入此命令则开发板上的gdbserver也退出
export PATH=/home/zhang/workspace/arm-2014.05/bin:$PATH //虚拟机
gdbserver 192.168.1.41:2345 +(文件名) //目标板
进入文件所在目录 //虚拟机
arm-none-linux-gnueabi-gdb +(文件名) //虚拟机
target remote 192.168.1.21:2345 //虚拟机
尝试理解ex04代码,以及修改后的代码
第三阶段,音频输入输出
失败,听不到声音,具体因为什么暂且不知,决定5.1用小音箱试一下
进行一个中期报告的写和ppt的做