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.

[参考译文] Linux/MSPBSL:为 ARM 嵌入式 Linux 处理器构建 BSL Scripter

Guru**** 2554400 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/579032/linux-mspbsl-building-bsl-scripter-for-arm-embedded-linux-processor

器件型号:MSPBSL

工具/软件:Linux

您好!

我想在运行 debian 的嵌入式 ARM 机器上使用 BSL-Scripter。

如何使用为 Linux 32位提供的源代码在此计算机上构建我自己的脚本?

在 readme.txt 文件中、我发现:

2. Linux
--------------------------------------------------
2.1开发环境
--------------------------------------------------
*您需要 GNU 工具链(GCC 4.6.3或更高版本)才能使用
现有 Makefile。
--------------------------------------------------
2.2.依赖关系
--------------------------------------------------
要使用 GCC 编译 BSL Scripter、您需要:

*升压
-从 http://www.boost.org 下载
-官方编译中使用的版本为1.56
仅限 libboost_system.a/so 和 libboost_filesystem。a/so
需要 libboost_program_options-xxx.a/so

* hidapi
-下载并构建(github.com/.../releases)
官方编译中使用的版本为0.8.0-RC1
- BSL Scripter 项目假定 hidapi 是根据 libusb-1.0构建的
(与 hidapi 0.8.0-RC1一同提供的 Makefile 文件中使用的默认值)
-hidapi.h 必须复制到 thirdparty/include/
hid-libusb.o 必须复制到 thirdparty/lib/

那么、我应该将源代码复制到嵌入式 Linux 并尝试从那里构建它吗?

如何构建源代码?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    这是我到目前为止所做的、但最后出现错误:

    在 Linux 机器上
    1-将源代码目录发送到嵌入式 ARM Linux 机器
    2-下载 boost 并发送 sourcecode 中的/boost 目录
    3-创建 thirdparty 目录,然后在其中创建 include 和 lib64目录
    4-发送 hidapi.h 以包含并将 hid-libb.o 添加到 lib64目录(注意:您必须从 sb Hub 下载 hidapi 并执行"./bootstrap ->./configure -> make -> make install (as root)"以从'.c'获取'.o'文件、并将 hid.o 重命名为 hid-lsu.o)

    在 Linux Arm Embedded Machine 上:
    1-inside sourcecode Directoy 在您的嵌入式设备上、您必须执行"制造"->>>>> 这是错误的来源


    /ThirdParty/lib64/hid-libusb.o:无法识别文件:无法识别文件格式
    collect2:错误:LD 返回1退出状态
    Makefile:95:目标'all'的配方失败
    制造:***[全部]错误1.


    这里有什么问题? 我是否必须在嵌入式器件上制作/构建 hidapi?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此、我在嵌入式 Linux 计算机中构建了 hidapi、"hid-libusb.o"正在工作、但在运行 make 时出现了新错误:

    make:warning:file 'Makefile"具有修改时间526035234 s
    g++-c -o BSL_Scripter.o BSL_Scripter.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -static -I./ThirdParty/include -i. -dUNIX -DNDEBUG -DUNIX
    g++-c -o Util.o Util.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-c -o BslResponseHandler.o BslResponseHandler.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -static -I./ThirdParty/include -i. -dUNIX -DNDEBUG -DUNIX
    g++-c -o UsbComM.o UsbComm.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -i. -dUNIX -DNDEBUG -DUNIX
    g++-c -o UartComM.o UartComm.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -i. -dUNIX -DNDEBUG -DUNIX
    g++-c -o Family16bit.o Family16bit.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Werror -OS -static -I./ThirdParty/include -i. -dUNIX -DNDEBUG -DUNIX
    g++-c -o Family320.o Family32bit.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -i. -dUNIX -DNDEBUG -DUNIX
    g++-c -o BaseCommands.o BaseCommands.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-c -o Timer.o Timer.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-c -o Interpreter.o Interpreter.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-c -o ScripterStream.o ScripterStream.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-c -o FactoryTarget.o FactoryTarget.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-c -o FactoryCommunication.o FactoryCommunication.cpp -std=c++0x -fvisibility=hidden -fvisibility-inlines -hidden -Wall -Werror -OS -OS -static -I./ThirdParty/include -I. -dUNIX -DNDEBUG -DUNIX
    g++-std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Werror -OS -static -o BSL_Scripter.o Util.o BslResponseHandler.o UsbComM.o UartComM.o Family16bit.o Family320.o BaseCommands.o Timer.o Brother.prior.o /ThirdParty/lib64/hid-libusb.o -lusblestrior.b.b.strior.p /ThirdParty/lib64 -flt -fluor.o -flu.b.dlpremu.o -flu.pru.b.pru.pru.pru.o -out.o -le.pru.o
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/crt1.o:在函数`_start'中:
    (.text+0x28):未`m对"ain"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`udev_hotplug_event'中:
    (.text+0x12):未定义对`udev_device_get_action'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`udev_hotplug_event'中:
    (.text+0x2e):未`对 udev_device_get_devnode'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`udev_hotplug_event'中:
    (.text+0x3a):未`对 udev_device_get_sysname'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`udev_hotplug_event'中:
    (.text+0x5c):对`udev 设备_UNREF 的引用未定义
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`udev_hotplug_event'中:
    (.text+b2):未`对"udev 设备_UNREF"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_event_thread_main'中:
    (.text+0x18c):未`对 udev_monitor_receive_device'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x1be):未定义对`udev_new'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x1d2):未定义对`udev_monitor_new_fin_netlink'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x1e8):未`对 udev_monitor_filter_add_match_subsystem_devtype"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x1fe):未`对 udev_monitor_enable_receiving'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x20c):未`对 udev_monitor_get_fd'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x27a):对`udev_monitor_undef'的引用未定义
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_start_event_monitor'中:
    (.text+0x28a):未`对"udev UNREF"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_stop_event_monitor'中:
    (.text+0x388):未`对"udev Monitor_UNREF"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_stop_event_monitor'中:
    (.text+0x398):未`对"udev UNREF"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x430):对`udev 枚举_new'的引用未定义
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x446):未`对"udev 枚举_add_match_subsystem"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x44c):未`对 udev 枚举_scan_devices'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x452):未定义对`udev 枚举_get_list_entry'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x45c):未`对 udev_list_entry_get_name'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x46e):未`对" udev 设备新路径"的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x474):未`对 udev_device_get_devnode'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x47e):未`对 udev_device_get_sysname'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x4ae):对`udev 设备_UNREF 的引用未定义
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x4b4):未定义对`udev_list_entry_get_next'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_scan_devices'中:
    (.text+0x4c0):未`对 udev_enum_UNREF'的引用
    /usr/lib/gcc/arm-linux-gnueabihf/4.9/../../../arm-linux-gnueabihf/libusb-1.0.a (libusb_1_0_la-linux_udev.o):在函数`linux_udev_hotplug_poll 中:
    (.text+0x520):未`对 udev_monitor_receive_device'的引用
    collect2:错误:LD 返回1退出状态
    Makefile:95:目标'all'的配方失败
    制造:***[全部]错误1.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Michael、

    您使用的是哪款 TI 器件? 是 MSP 低功耗微控制器吗?

    此致、
    帕维尔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Pavel、

    是的、我使用的是 MSP432。 但我无法使 BSL 脚本程序在 AM335x 上运行。
    它以 debian 8 ARM 为基础。 我正在尝试为 ARM CPU 构建脚本。

    谢谢、

    Michael
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Michael Liesenberg85"]是的,我使用的是 MSP432

    MSP 在 MSP 论坛中受支持、我看到您已经可以在这里发帖/提问:

    [引用 user="Michael Liesenberg85"]但我无法使 BSL 脚本程序在 AM335x 上运行。

    您能否提供有关 AM335x 器件相关问题的更多详细信息?

    此致、
    帕维尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Pavel、

    所以问题是在 Debian Distribution 上从 BSL Scripter 构建源代码。
    我在运行 Debian Jessie 的 AM335x 和 PC-Linux DebianJessie 上执行了这些步骤。
    在这两种情况下、我都遇到了链接错误。 未定义"udev"库引用。
    我知道有一个适用于 Linux 32和64位的有效 BSL 脚本。 但我正在尝试为 ARM 构建它。
    现在、在 Linux PC 上、我遇到的构建错误与在 ARM 上相同、我认为这不是特定的 AM335x 问题。
    我一直在构建脚本、我认为这是正确链接库的问题。
    源代码上的自述步骤(Linux)是否用于 Ubuntu?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Michael Liesenberg85 说:
    因此问题是从 Debian Distribution 上的 BSL Scripter 构建源代码。

    [引用 user="Michael Liesenberg85"]我在运行 Debian Jessie 的 AM335x 上执行了这些步骤

    此论坛仅支持 AM335x TI PSDK 附带的 Arago Linux。 关于其他 Linux 发行版(如 Debian)、您应该访问 Beagle 社区论坛。

    此致、
    帕维尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    BeagleBone 社区与"用于 Linux PC 的 BSL Scripter 的编译错误"无关。 正如我说过的、这不是 AM335x 问题、而是为 Linux PC 构建 BSL Scripter。
    我认为这里有人可以帮我解决这个问题。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的、我要让这个话题保持开放、以便有人在这里提供帮助。

    此致、
    帕维尔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    G++... o BSL_Scripter.o Util.o ...
    (.text+0x28):未`m对"ain"的引用 

    makefile 文件有问题;应该出现在"-o"之后的输出文件(可执行文件)的名称缺失、因此 gcc 会覆盖第一个目标文件(BSL_Scripter.o)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、Clemens、

    我昨天在嵌入式领域访问了 TI、当时我正在与 MSP430/MSP432引导加载程序专家交谈。
    他说、他们正在为基于 ARM 的 Linux CPU 开发 MSP432 BSL Scripter 解决方案。
    但现在他告诉我、ARM Linux 下的 MSP430有一个 BSL Scripter 应用手册和源代码。
    因此、我将尝试找到它并在 MSP432上进行测试。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    -调用 make、如'env BIT32=1 make'(或删除 if else...)

    -使用分布中的 BOOST 和 hidapi

    -相应地更改 makefile 中的路径

    此致、

    迪尔克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我们正在处理同一个问题。 目前、我们没有在 ARM 系统(debian/32位)上编译 BSL-Scripter。 有人现在是否找到了解决方案? 我们得到了此处提到的相同错误、没有进一步的解决方法。 有人可以确认使用正确的编译器和代码分发是可能的吗?

    :您是否找到了您提到的备选封装? 从哪里可以找到它?
    :根据您的建议,您是否能够成功地为 ARM 系统编译它?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Marcus、您好、Dirk、

    我还没有让它运行。

    最快的方法是使用脚本源代码作为基础、在 C 或 C++上实现脚本编写器。

    脚本编写器仅读取.txt 输出文件并在 MSP432上发送 UART (BSL)命令。

    这一切都已经编写好了。 如果像我这样不需要 USB 器件、这是最好的方法。

    如果有时间做这个,那就太棒了! 现在没有时间了。

    此致、

    Michael

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Marcus、

    BSL-Scripter 与 Jessie 一起在 BBB 上运行。 我使用 USB2RS232适配器对 MSP432进行了编程测试-工作正常!

    我刚才执行了前面提到的步骤-只需要更改 Makefile (路径)。

    此致、

    迪尔克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 、Dirk、

    您可以将针对 Arm 的 BSL 作为.deb 软件包进行脚本化、还是在 GitHub 上进行?

    我还在使用 Debian Jessie、但在 iMx6上。

    此致、

    Michael

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Dirk、

    我一开始就开始编写脚本、现在面临一个新问题:

    root@:/home/MSP/SourceCode make

    g++-std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Werror -OS -static -o BSL_Scripter.o Util.o BslResponseHandler.o UsbComM.o UartComM.o Family16bit.o Family320.o BaseCommands.o Timer.o Brother.prior.o /ThirdParty/lib64/hid-libusb.o -lusblestrior.b.b.strior.p /ThirdParty/lib64 -flt -fluor.o -flu.b.dlpremu.o -flu.pru.b.pru.pru.pru.o -out.o -le.pru.o  

    collect2:错误:LD 与信号4终止[非法指令]

    Makefile:95:目标'all'的配方失败

    制造:***[全部]错误1.

    您有什么变化? "-相应地更改 makefile 中的路径"

    那么、这就是我到目前为止所做的:

    在 Linux 计算机上:

    1-从 TI 页面下载 BSL Scripter

    2-解压缩并将 sourcecode 目录发送到 ARM 嵌入式计算机

    在 Linux Arm Embedded Machine 上:

    1-输入 sourcecode 目录

    2 -在其中、通过 wget Direct 从网站下载 BOOST 版本1.56

    3-解压缩并进入目录

    4-安装 libusb-dev

    5-安装 libusb-1.0-dev

    6-运行./boostrap

    7-运行./B2 (需要一段时间)

    8-将 libboost_filesystem.so、libboost_system 和 libboost_program_options.so 复制到/usr/local/lib 目录

    9-在 sourcecode 目录中,创建 include 和 lib64目录

    10-离开 sourcecode 目录并从 GitHub 下载 hipdapi

    11-在 hidapi 目录内执行以下操作:“./bootstrap ->./configure -> make -> sudo make install”

    12-在“libusb”目录中,将“hid.o”重命名为“hid-lsusb.o”

    13-将/hidapi/hidapi.h 复制到 sourcecode/thirdparty/include

    14-将/libusb/hid-lsusb.o”复制到 sourcecode/thirdparty/lib64

    15-内部源码:"制造"

    可以帮帮我吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    因此、我终于使它工作了。

    由于我使用 Qt 创建器将我的应用程序部署到 iMx6、我创建了一个新的 Qt 项目并从 BSL 添加源代码文件。

    我排除了 USBComm .h 和.c 文件、因为我不需要它们和 hidapi。

    我没有更改这些文件中的其他任何内容、仅包括项目中的升压库。

    在 Qt Creator 中、我添加了"进行安装"步骤、并获得了可执行文件。

    在我收到 Makefile 的所有这些错误之前、我进行了大量尝试、但仍然无法使其以这种方式工作。  

    在 Linux 计算机上:

    1-从 TI 页面下载 BSL Scripter

    2-解压缩并将 sourcecode 目录发送到 ARM 嵌入式计算机

    在 Linux Arm Embedded Machine 上:

    1-输入 sourcecode 目录

    2 -在其中、通过 wget Direct 从网站下载 BOOST 版本1.56

    3-解压缩并进入目录

    4-安装 libusb-dev

    5-安装 libusb-1.0-dev

    6-运行./boostrap

    7-运行./B2 (需要一段时间)

    在 Linux 计算机上:

    1-在 QT Creator 下创建新项目

    2-添加文件并删除 USBCOMmm .h 和.c 文件

    3-将 boost 文件夹从 iMx6复制回 PC 到 Qt Project 文件夹

    4 -链接并包含来自 BOOST 的库

    5-在项目中添加新的“make”步骤并安装参数

    6 -构建并运行它

    7-将可执行文件复制到 iMx6

    在 Linux Arm Embedded Machine 上:

    1-构建 QT 项目且文件位于 iMx6中后,执行:

    •dpkg-reconfigure 语言环境(DE_DE.UTF-8)

    •更新语言环境 LC_ALL=DE_DE.UTF-8 LANG=DE_DE.UTF-8

    •LD_library_path=$LD_library_path:"path_for_yo_libs"

    •导出 LD_LIBRARY_PATH

    2-运行执行类似./BSL_QT script.text

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Michael、

    很抱歉耽误你的时间。 以下 步骤可能会有所帮助:

    - apt-get install libhidapi-dev libboost-system libboost-filesystem libboost-program-options

    -下载并解压缩 TI 的 BSL 源代码

    -更改为源代码目录

    -在 UsbComm.h 中、将#include 行"thirdparty/include/hidapi.h"替换为#include "hidapi/hidapi.h"

    -在 Makefile 中,删除行 CXXFLAGS +=-static

    -在 Makefile 中,删除行 CXXFLAGS +=-m32

    -在 Makefile 中,将 HIDOBJ:=$(LIBTHIRD)/hid-libb.o 更改为 HIDOBJ:=

    -在 Makefile 中,将行 libs +=-lusb-1.0 -lRT -lpthread 更改为 libs +=-lusb-1.0 -lhidapi-libusb -lRT -lpthread

    调用

    清洁

    ENV BIT32=1制造

    迪尔克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Dirk、

    非常感谢!
    它工作得很好!

    此致、

    Michael
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Dirk、

    现在运行正常!
    非常感谢!

    此致!

    Sergei