Skip to content

Latest commit

 

History

History
254 lines (161 loc) · 7.61 KB

File metadata and controls

254 lines (161 loc) · 7.61 KB

日志2

3.4

第一阶段:配置综设环境

按照QQ群里中文文档的步骤配置环境

1.CodeSourcery和ezsdk的解压以及环境变量配置

没出现问题;

2.设置桥接模式
3.配置DNS文件共享

设置好共享文件夹后,DNS启动总是失败,怀疑是主机和虚拟机之间网络存在问题

尝试主机和虚拟机互ping,存在虚拟机ping不通主机的问题,在网上寻找答案

尝试了好几种解决方案,包括关闭防火墙、重新安装DNS、修改配置文件,均未奏效

参照飞书文档配好了开发板启动后的操作

3.7

第一阶段:配置综设环境

麻了,一直没搞明白DNS服务器为什么一直启动失败,网络也一直没法ping通。。。。

3.13

找老师问了一下,尝试去仔细分析DNS日志文件,看看是不是ubuntu版本兼容问题

麻了,问题出在配置文件,第一次打开配置文件不小心碰到键盘,在文件首输了一个f,导致配置文件里配置的共享文件夹目录没法识别,修正后,DNS启动成功。

但又发现了新的问题,虚拟机还是没法ping通主机

泪流满面了。。

3.15

依旧是ping不通,不知道是哪里的问题,依照飞书文档的配置做一遍试试

还是ping不通,而且原来主机能ping通虚拟机,先在也不行了,头大。

3.20

ping不通,先不管了,直接试试启动板子,发现DNS出现问题,检查一下前置步骤,,原来是没有禁用主机wifi,禁用一下后再次启动。

win!!

4.3

太惰怠了,都给我摆完了!!!

虚拟机开发环境的搭建,包括32位代码运行支持,gcc使用,交叉编译环境配置不成功问题解决,make生成arm板可执行文件,syslink例程的运行

1.32位代码运行支持

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libc6:i386 libncurses5:i386 libstdc++6:i386

2.交叉编译环境配置不成功问题解决

方法一我这边一直行不通,所以我暂时用方法二

方法一:配置交叉编译工具codesourcery为环境变量
sudo gedit /root/.bashrc

在文档最后添加编译工具绝对路径,需注意由于[HOME]目录设置的名 字可能不同,需对应实际而定,例如按照当前路径应添加: (修改加粗部分)

export PATH=**/home/user/**CodeSourcery/Sourcery_G++_Lite/bin:$PATH

image-20240407153949330

方法二:每次使用前配置临时环境变量(记得修改路径)

每次编译都要配置一次

export PATH=/home/user/CodeSourcery/Sourcery_G++_Lite/bin:$PATH

3.make生成arm板可执行文件

没有安装make的需要先安装一下

*(0).安装make
sudo apt update
sudo apt install make
(1)准备文件

放入一个文件目录下

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
(2)编译并将可执行文件移入nfs共享文件内
环境变量
export PATH=(/home/user)/CodeSourcery/Sourcery_G++_Lite/bin:$PATH 
编译
make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm helloworld  

image-20240407155808167

移动
cp helloworld ../ti-ezsdk_dm816x-evm_5_05_01_04/filesystem/ezsdk-dm816x-evm-rootfs/home/root/my20240312

4.在arm板运行例程代码

开发板启动后终端已经在root文件夹

./my20240312

看到正常输出即可

5.syslink例程的运行

启动开发板后输入以下命令

cd ../
cd ../
cd ./ex01_helloworld/release
./run.sh

4.10

赶紧开搞第二阶段的ex04和gdbserver

ex04编译

编译不成功->(检查 ../../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后才存在的文件夹)

4.14

gdbserver

提前准备工作还有下载以及解压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                         //虚拟机

4.20

尝试理解ex04代码,以及修改后的代码

4.27

第三阶段,音频输入输出

失败,听不到声音,具体因为什么暂且不知,决定5.1用小音箱试一下

4.28

进行一个中期报告的写和ppt的做