器件型号:EVMK2H
我要做的是: 在 EVMK2H 的 ARM 端使用 Linux-RT、并能够从 DSP 内核发送和接收数据。
我过去所做的是使用 Syslink 共享区域示例、但这适用于较旧的电路板。 这款较新的电路板现在具有处理器 SDK、因此我拥有最新的处理器 SDK Linux-RT 和 RTOS 版本。 我在 Matrix 2.0演示中找到了 IPC 示例、因此我研究了 IPC 示例。 我开始遵循以下指南: processors.wiki.ti.com/.../File:Guide_Keystone_II_IPC_examples_.zip
我设置我的 products.mak 文件、如下所示:
# #版权所有(c) 2012-2015德州仪器(TI)公司- http://www.ti.com # 只要 符合以下条件、允许在源代码和二进制格式中重新分发和使用#* 重新分发源代码必须保留上述版权 # 声明、此条件列表和以下免责声明。 # *二进制形式的再发行必须复制上述版权 编号 请注意 、此条件列表和#中的以下免责声明 分发时提供的文档和/或其他材料。 # *德州仪器公司的名称和 #的名称均不相同 其贡献者可用于认可或推广衍生产品 # 未经特定的事先书面许可。 # #本软件由版权所有者和贡献者"按原样 "提供#、 不承认任何明示或暗示的保证、包括但不限于#对适销性和特定#用途适用性的暗示保证。 在任何情况下、版权所有者或 #贡献者都不对任何直接、间接、偶然、特殊、 #模范、 或相应的损害(包括但不限于 采购替代产品或服务的#件;丧失使用、数据或利润; #或业务中断)、但出于任何责任理论 、#无论是在合同中、严格责任还是因 使用本软件而以任何方式产生的侵权行为(包括疏忽或#其他)、 #即使被告知可能会造成此类损害。 # ====== products.mak ===== # #请注意、可以在此处或命令行中显式设置这些变量。 #如果要在环境中使用变量,请参见 GNU make manual 的#-e 选项: www.gnu.org/.../make.html #可选:建议将所有相关组件安装在一个文件夹中。 # depot =/home/usman/ti # Platform to build for # supported platforms (选择一个): # OMAPL138、OMAP54XX、DRA7XX、66AK2G、66AK2E、 TCI6630、TCI6636、TCI6638、 # TDA3XX # 注意、这用于 Linux、QNX 和 BIOS 内部版本 # platform = TCI6636 #目标安装内置二进制文件 # 注意、这用于 Linux (如果使用 IPC-Linux.mak 运行 # configure 命令)、QNX 和 BIOS。 # destdir =$(depot)/IPC_3_44_01_01/IPC_INSTALL ################ IPC Linux ############## #为 IPC Linux 配置和构建设置所需的交叉编译器路径 # toolchain_longname = arm-no-eabi toolchain_install_DIR =$(depot)/gcc-arm-no-eabi-4_9-2015q3 toolchain_prefix =$(toolchain_install_DIR)/bin/$(toolchain_long-ne-na-eabi-4_drink-rbi-linux-rg079+dprue-rq-rg4+rkrgrgrgrk/rq-rgrgrgrgrgrgrk-rg049+rg4+rgrgrgrgrgrg-rk-rband-rg4+rgrgrgrgrgrgrgrg-rg-rgr 此值是从 上面 kernel_install_DIR 指定的 Linux 内核中指定的#、或者 在下面指定的 make 变量 AF_RPMSG 中指定的#。 请勿同时使用。 # AF_RPMSG = #可选:DRM 库的路径 # DRM_PREFIX = #可选:TI Linux Utils 产品的路径 # CMEM_INSTALL_DIR = ######################## IPC QNX ############## # QNX 工具安装路径 # QNX_INSTALL_DIR = #可选:任何其他编译选项 # QNX_CFLAGS = ################## IPC BIOS ################ # IPC BIOS 构建所需相关性的路径 # XDC_INSTALL_DIR =$(depot)/xdctools_3_32_01_22_core BIOS_install_DIR =$(depot)/BIOS_6_46_04_53 #是否要构建启用 SMP 的库(如果目标支持)? #设置为0 (禁用)或1 (启用) # BIOS_SMPENABLED=1 #到各种 工具的路径# ti.targets.elf.C64P = ti.targets.elf.C64P_big_endian = ti.targets.elf.self.C66 = ti.targets.elf.arm.for.arge=ti.arge.ts.g.ar32.for.arf.arge.m=ti.arf.arge.m.ar32.for.arge.m.arf.ar32.es=ti.arf.arm.arge=ti.arge.g.arge.m.ar32.for.ar32.es.arf.arges=ts.g.arge.m.ar32.for.arf.ar.ar.arf.ar32.es.arges.arm.arge=tes.arge.m.ar32.for.arge.m.ar.arf.arges.arges.arges.ar.ar.ar.ar.ar.ar32.es.arges.arges=ts.a.ar.ar.ar.ar.ar32.es
运行"make -f IPC-Linux.mak config"时、出现以下错误:
Usman@Usman-VirtualBox:~/ti/ipc_3_44_01_01 make -f IPC-Linux.mak config Configuring Linux IPC... ./configure --host=arm-none-eabi \ --prefix=/home/usman/ti/ipc_3_44_01_01/IPC_install \ CC=/home/usman/ti/gcc-arm-none-eabi-4_9-2015q3/bin/arm-none-eabi-gcc \ platform=TCI6636 \ CMEM_INSTALL_DIR=\ kernel_install_DIR=/home/usman/ti/ti-processor-sdk-linux-rt-k2hk-evm-03.03.00.04/board-support/linux-rt-4.4.41 +gitAUTOINC+968d071ce9-g968d071ce9/\ DRM_PREFIX=\ AF_RPMSG= 正在检查 BSD 兼容的安装... /usr/bin/install -c 正在检查构建环境是否正常... 是 /home/usman/ti/ipc_3_44_01_01/linux/build-aux/missing:未知的`--is-lightweight 选项 请尝试`/home/usman/ti/ipc_3_44_01_01/linux/build-aux/missing --help'以了解更多信息 配置:警告:'msing'脚本太旧或缺少 检查 arm-no-eabi-strip… 不 检查条图... 去除 线程安全 mkdir -p... /bin/mkdir -p 正在检查 gawk…… 检查 make 设置是否为$(make)... 是 检查 make 是否支持嵌套变量... 是 检查是否启用 Makefiles 的维护人员特定部分... 不 检查构建系统类型... x86_64-未知-Linux 正在检查主机系统类型... arm-none-eabi 正在检查如何打印字符串... printf 正在检查 make 使用的 include 样式... GNU 正在检查 arm-none-eabi-gcc... /home/usman/ti/gcc-arm-none-eabi-4_9-2015q3/bin/arm-none-eabi-gcc 正在检查 C 编译器是否正常工作... 无 `:错误:在`/home/usman/ti/ipc_3_44_01_01中:配置:错误:C 编译器无法创建可执行文件请参阅 config.log'以了解更多详细信息 IPC-Linux.mak:56:目标'config'的配方失败 make:***[config]错误77
我已经安装了本页上列出的所有32位库: processors.wiki.ti.com/.../Sitara_Linux_SDK_64_Bit_Ubuntu_Support
我是否正朝着我要做的事情的正确方向前进? 或者、我是否应该使用 IPC 以外的其他功能