创龙T113学习记录--SDK编译

开发板:TLT113-MiniEVM_V1.2

系统:Ubuntu 20.04 (没有使用创龙的镜像)

前期准备工作:

1.根据创龙的“Linux 系统使用手册”,将创龙的LinuxSDK-v1.2.tar.gz,解压到自己的目录

2.按照上述手册的”1.2 安装依赖软件“章节安装相应依赖软件

3.按照上述手册"解压 Buildroot dl"章节操作

开始配置编译环境:

1.进入T113-i_v1.0文件夹:

Host# cd T113-i_v1.0/

清除所有编译和配置生成文件

Host# ./build.sh distclean

2.配置 Linux 内核、内核版本、处理器型号、评估板型号(tlt113-miniev
m-nand)、显示方式、编译器等信息:

Host# ./build.sh config

出现如下错误:

或者:python: command not found

百度得到python版本的引起的

先查看本机版本:pythonls -l /usr/bin/python*

本机python指定了python3,但是创龙需要python2

建立软连接,添加映射。如果之前建立过软连接,删除之前的软连接

sudo ln -s /usr/bin/python2 /usr/bin/python

然后,再查看python版本,已经连接到python2了

此时,再进行配置./build.sh config,顺利通过:

下一步,开始编译 :

1.编译环境配置

Host# source ./build/envsetup.sh

2.开始编译:

Host#./build.sh

出现如下错误

gdbusauth.c:1302:11: error: ‘%s’ directive argument is null

gdbusmessage.c:2702:30: error: ‘%s’ directive argument is null

在gdbusauth.c第1302行修改如下

gdbusmessage第2702行修改如下

然后又开始报错,此处忘记截图了:`\#' is not a known regexp operator

参照CSDN大佬:全志T5环境编译错误解决_strerror-sym.c errnos_msgidxof_stitching的博客-CSDN博客

将mkerrnos.awk

mkerrcodes.awk

mkerrcodes1.awk

mkerrcodes2.awk

mkstrtable.awk

这几个文件中的sub (/\#.+/, "");修改为sub (/#.+/, "");

其中,在buildroot环节,貌似还报错errnos-sym.h文件为空,忘记截图了,借用CSDN大佬的图片,记得是这个错误:

在Ubuntu21.04中编译Tina SDKV1.01 版本 踩坑记录_toplevel.mk错误-CSDN博客

按照大佬的方法,新建errnos-sym.h,复制相应的内容:

此处,也贴出errnos-sym.h内容,引自上述大佬

/* Output of mkstrtable.awk.  DO NOT EDIT.  */

/* errnos.in - List of system error values.
   Copyright (C) 2003, 2004 g10 Code GmbH

   This file is part of libgpg-error.

   libgpg-error is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public License
   as published by the Free Software Foundation; either version 2.1 of
   the License, or (at your option) any later version.

   libgpg-error is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with libgpg-error; if not, write to the Free
   Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.  */



/* The purpose of this complex string table is to produce
   optimal code with a minimum of relocations.  */

static const char errnos_msgstr[] =
  "GPG_ERR_E2BIG" "\0"
  "GPG_ERR_EACCES" "\0"
  "GPG_ERR_EADDRINUSE" "\0"
  "GPG_ERR_EADDRNOTAVAIL" "\0"
  "GPG_ERR_EADV" "\0"
  "GPG_ERR_EAFNOSUPPORT" "\0"
  "GPG_ERR_EAGAIN" "\0"
  "GPG_ERR_EALREADY" "\0"
  "GPG_ERR_EAUTH" "\0"
  "GPG_ERR_EBACKGROUND" "\0"
  "GPG_ERR_EBADE" "\0"
  "GPG_ERR_EBADF" "\0"
  "GPG_ERR_EBADFD" "\0"
  "GPG_ERR_EBADMSG" "\0"
  "GPG_ERR_EBADR" "\0"
  "GPG_ERR_EBADRPC" "\0"
  "GPG_ERR_EBADRQC" "\0"
  "GPG_ERR_EBADSLT" "\0"
  "GPG_ERR_EBFONT" "\0"
  "GPG_ERR_EBUSY" "\0"
  "GPG_ERR_ECANCELED" "\0"
  "GPG_ERR_ECHILD" "\0"
  "GPG_ERR_ECHRNG" "\0"
  "GPG_ERR_ECOMM" "\0"
  "GPG_ERR_ECONNABORTED" "\0"
  "GPG_ERR_ECONNREFUSED" "\0"
  "GPG_ERR_ECONNRESET" "\0"
  "GPG_ERR_ED" "\0"
  "GPG_ERR_EDEADLK" "\0"
  "GPG_ERR_EDEADLOCK" "\0"
  "GPG_ERR_EDESTADDRREQ" "\0"
  "GPG_ERR_EDIED" "\0"
  "GPG_ERR_EDOM" "\0"
  "GPG_ERR_EDOTDOT" "\0"
  "GPG_ERR_EDQUOT" "\0"
  "GPG_ERR_EEXIST" "\0"
  "GPG_ERR_EFAULT" "\0"
  "GPG_ERR_EFBIG" "\0"
  "GPG_ERR_EFTYPE" "\0"
  "GPG_ERR_EGRATUITOUS" "\0"
  "GPG_ERR_EGREGIOUS" "\0"
  "GPG_ERR_EHOSTDOWN" "\0"
  "GPG_ERR_EHOSTUNREACH" "\0"
  "GPG_ERR_EIDRM" "\0"
  "GPG_ERR_EIEIO" "\0"
  "GPG_ERR_EILSEQ" "\0"
  "GPG_ERR_EINPROGRESS" "\0"
  "GPG_ERR_EINTR" "\0"
  "GPG_ERR_EINVAL" "\0"
  "GPG_ERR_EIO" "\0"
  "GPG_ERR_EISCONN" "\0"
  "GPG_ERR_EISDIR" "\0"
  "GPG_ERR_EISNAM" "\0"
  "GPG_ERR_EL2HLT" "\0"
  "GPG_ERR_EL2NSYNC" "\0"
  "GPG_ERR_EL3HLT" "\0"
  "GPG_ERR_EL3RST" "\0"
  "GPG_ERR_ELIBACC" "\0"
  "GPG_ERR_ELIBBAD" "\0"
  "GPG_ERR_ELIBEXEC" "\0"
  "GPG_ERR_ELIBMAX" "\0"
  "GPG_ERR_ELIBSCN" "\0"
  "GPG_ERR_ELNRNG" "\0"
  "GPG_ERR_ELOOP" "\0"
  "GPG_ERR_EMEDIUMTYPE" "\0"
  "GPG_ERR_EMFILE" "\0"
  "GPG_ERR_EMLINK" "\0"
  "GPG_ERR_EMSGSIZE" "\0"
  "GPG_ERR_EMULTIHOP" "\0"
  "GPG_ERR_ENAMETOOLONG" "\0"
  "GPG_ERR_ENAVAIL" "\0"
  "GPG_ERR_ENEEDAUTH" "\0"
  "GPG_ERR_ENETDOWN" "\0"
  "GPG_ERR_ENETRESET" "\0"
  "GPG_ERR_ENETUNREACH" "\0"
  "GPG_ERR_ENFILE" "\0"
  "GPG_ERR_ENOANO" "\0"
  "GPG_ERR_ENOBUFS" "\0"
  "GPG_ERR_ENOCSI" "\0"
  "GPG_ERR_ENODATA" "\0"
  "GPG_ERR_ENODEV" "\0"
  "GPG_ERR_ENOENT" "\0"
  "GPG_ERR_ENOEXEC" "\0"
  "GPG_ERR_ENOLCK" "\0"
  "GPG_ERR_ENOLINK" "\0"
  "GPG_ERR_ENOMEDIUM" "\0"
  "GPG_ERR_ENOMEM" "\0"
  "GPG_ERR_ENOMSG" "\0"
  "GPG_ERR_ENONET" "\0"
  "GPG_ERR_ENOPKG" "\0"
  "GPG_ERR_ENOPROTOOPT" "\0"
  "GPG_ERR_ENOSPC" "\0"
  "GPG_ERR_ENOSR" "\0"
  "GPG_ERR_ENOSTR" "\0"
  "GPG_ERR_ENOSYS" "\0"
  "GPG_ERR_ENOTBLK" "\0"
  "GPG_ERR_ENOTCONN" "\0"
  "GPG_ERR_ENOTDIR" "\0"
  "GPG_ERR_ENOTEMPTY" "\0"
  "GPG_ERR_ENOTNAM" "\0"
  "GPG_ERR_ENOTSOCK" "\0"
  "GPG_ERR_ENOTSUP" "\0"
  "GPG_ERR_ENOTTY" "\0"
  "GPG_ERR_ENOTUNIQ" "\0"
  "GPG_ERR_ENXIO" "\0"
  "GPG_ERR_EOPNOTSUPP" "\0"
  "GPG_ERR_EOVERFLOW" "\0"
  "GPG_ERR_EPERM" "\0"
  "GPG_ERR_EPFNOSUPPORT" "\0"
  "GPG_ERR_EPIPE" "\0"
  "GPG_ERR_EPROCLIM" "\0"
  "GPG_ERR_EPROCUNAVAIL" "\0"
  "GPG_ERR_EPROGMISMATCH" "\0"
  "GPG_ERR_EPROGUNAVAIL" "\0"
  "GPG_ERR_EPROTO" "\0"
  "GPG_ERR_EPROTONOSUPPORT" "\0"
  "GPG_ERR_EPROTOTYPE" "\0"
  "GPG_ERR_ERANGE" "\0"
  "GPG_ERR_EREMCHG" "\0"
  "GPG_ERR_EREMOTE" "\0"
  "GPG_ERR_EREMOTEIO" "\0"
  "GPG_ERR_ERESTART" "\0"
  "GPG_ERR_EROFS" "\0"
  "GPG_ERR_ERPCMISMATCH" "\0"
  "GPG_ERR_ESHUTDOWN" "\0"
  "GPG_ERR_ESOCKTNOSUPPORT" "\0"
  "GPG_ERR_ESPIPE" "\0"
  "GPG_ERR_ESRCH" "\0"
  "GPG_ERR_ESRMNT" "\0"
  "GPG_ERR_ESTALE" "\0"
  "GPG_ERR_ESTRPIPE" "\0"
  "GPG_ERR_ETIME" "\0"
  "GPG_ERR_ETIMEDOUT" "\0"
  "GPG_ERR_ETOOMANYREFS" "\0"
  "GPG_ERR_ETXTBSY" "\0"
  "GPG_ERR_EUCLEAN" "\0"
  "GPG_ERR_EUNATCH" "\0"
  "GPG_ERR_EUSERS" "\0"
  "GPG_ERR_EWOULDBLOCK" "\0"
  "GPG_ERR_EXDEV" "\0"
  "GPG_ERR_EXFULL";

static const int errnos_msgidx[] =
  {
    0,
    14,
    29,
    48,
    70,
    83,
    104,
    119,
    136,
    150,
    170,
    184,
    198,
    213,
    229,
    243,
    259,
    275,
    291,
    306,
    320,
    338,
    353,
    368,
    382,
    403,
    424,
    443,
    454,
    470,
    488,
    509,
    523,
    536,
    552,
    567,
    582,
    597,
    611,
    626,
    646,
    664,
    682,
    703,
    717,
    731,
    746,
    766,
    780,
    795,
    807,
    823,
    838,
    853,
    868,
    885,
    900,
    915,
    931,
    947,
    964,
    980,
    996,
    1011,
    1025,
    1045,
    1060,
    1075,
    1092,
    1110,
    1131,
    1147,
    1165,
    1182,
    1200,
    1220,
    1235,
    1250,
    1266,
    1281,
    1297,
    1312,
    1327,
    1343,
    1358,
    1374,
    1392,
    1407,
    1422,
    1437,
    1452,
    1472,
    1487,
    1501,
    1516,
    1531,
    1547,
    1564,
    1580,
    1598,
    1614,
    1631,
    1647,
    1662,
    1679,
    1693,
    1712,
    1730,
    1744,
    1765,
    1779,
    1796,
    1817,
    1839,
    1860,
    1875,
    1899,
    1918,
    1933,
    1949,
    1965,
    1983,
    2000,
    2014,
    2035,
    2053,
    2077,
    2092,
    2106,
    2121,
    2136,
    2153,
    2167,
    2185,
    2206,
    2222,
    2238,
    2254,
    2269,
    2289,
    2303,

  };

static GPG_ERR_INLINE int
errnos_msgidxof (int code)
{
  return (0 ? 0
  : ((code >= 0) && (code <= 140)) ? (code - 0)
  : -1);
}

并将该文件放到如下文件夹:

/home/hbb/T113/T113-i_v1.0/out/t113_i/tlt113-minievm-emmc/longan/buildroot/build/libgpg-error-1.33/src

至此,./build.sh执行通过:

### 回答1: 创龙C6678开发板是一款基于德州仪器(TI)公司的多核DSP(数字信号处理器)C6678芯片的开发板。该开发板具有强大的计算能力和丰富的外设接口,适用于高性能计算、视频处理、语音识别等领域的应用开发。 创龙C6678开发板的主要特点包括: 1. C6678芯片:搭载8个C66x内核的DSP,每个内核工作频率高达1.25GHz,能够提供高达320GMACS的浮点运算性能,支持双精度浮点运算。 2. 内存配置:开发板配备了2GB DDR3内存,可以满足复杂应用的内存需求。 3. 外设接口:提供了多种常用接口,包括以太网口、USB接口、串口等,方便扩展外部设备连接。 4. 存储空间:支持2GB的NAND Flash作为存储介质,以及一个SD卡槽,方便存储和加载应用程序和数据。 5. 视频接口:支持HDMI和VGA接口,可以连接显示器进行图像输出。 6. 开发环境:提供了基于Code Composer Studio(CCS)的开发工具链,方便开发者进行软件开发和调试。 7. 软件支持:开发板支持多种操作系统,包括Linux、Windows等,使开发者可以选择适合自己的操作系统环境进行开发。 总之,创龙C6678开发板集成了高性能的多核DSP芯片和丰富的外设接口,为开发者提供了一个强大且灵活的开发平台。无论是进行高性能计算还是视频处理等应用开发,该开发板能够满足需求,并提供便捷的开发工具和软件支持。 ### 回答2: 创龙C6678开发板是一款专为高性能计算和信号处理设计的开发平台。该开发板基于德州仪器(TI)的C6678多核DSP处理器,搭载了8个TMS320C6678处理核心,每个核心运行主频为1.25GHz,具备强大的浮点运算能力和并行处理能力。 创龙C6678开发板提供了丰富的资料和资源,方便开发人员进行项目开发和系统调试。其主要资料包括: 1. 开发板手册:详细介绍了开发板的硬件组成、接口定义、信号引脚定义等信息,开发者可以根据手册进行硬件连接和系统调试。 2. 技术支持文档:包括使用指南、应用笔记和白皮书等,介绍了开发板的应用场景、特性和最佳实践,帮助开发者更好地了解和应用该开发板。 3. 软件开发工具链:包括编译器、调试器、编程接口等,可以帮助开发者进行程序开发和调试。 4. 示例代码和工程模板:提供了一些基于创龙C6678开发板的示例代码和工程模板,开发者可以借鉴和参考这些代码来快速开发自己的应用程序。 5. 接口资料和参考电路图:提供了开发板上各个接口的信号定义和电路图,开发者可以根据这些资料进行硬件设计和接口连接。 总之,创龙C6678开发板的资料丰富全面,可以帮助开发者快速入门,进行高性能计算和信号处理的开发工作。 ### 回答3: 创龙C6678开发板是德州仪器(Texas Instruments)推出的高性能数字信号处理器(DSP)开发板。该开发板基于德州仪器的C6678 DSP芯片,拥有八个DSP核心,运行频率高达1.25GHz,适用于各种高性能计算和信号处理应用。 创龙C6678开发板的资料包括硬件资料和软件资料。硬件资料提供了关于开发板的电路原理图、PCB设计文件以及外围接口的说明,帮助开发者了解开发板的硬件架构和设计,并进行硬件设计和调试。软件资料主要包括开发板的Bootloader、驱动程序和应用软件的源代码,可以帮助开发者进行软件开发和调试,快速构建自己的应用。 除了硬件和软件资料,创龙C6678开发板还提供了丰富的开发资源。例如,德州仪器提供了基于C6678的DSP开发套件(SDK),该SDK包含了各种软件库和示例代码,方便开发者快速上手并进行应用开发。此外,德州仪器还提供了技术支持和社区论坛,开发者可以在这里得到答疑解惑,和其他开发者进行交流。 总之,创龙C6678开发板是一款强大的高性能DSP开发平台,拥有丰富的硬件和软件资料,能够满足开发者在高性能计算和信号处理领域的需求。无论是学习使用DSP还是进行应用开发,创龙C6678开发板都是一个不错的选择。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值