2

我正在使用以下工具在六边形模拟器上分析 c 代码:

Qualcomm/Hexagon_SDK/3.5.3/tools/HEXAGON_Tools/8.3.07/Tools/bin/hexagon-sim --timing --profile binary.hexagon

二进制文件是用 hexagon-clang 构建的:

Qualcomm/Hexagon_SDK/3.5.3/tools/HEXAGON_Tools/8.3.07/Tools/bin/hexagon-clang

但是,在运行 hexagon-sim 时,我无法将命令行参数传递给我的二进制文件

有人知道该怎么做吗?

我试过:

Qualcomm/Hexagon_SDK/3.5.3/tools/HEXAGON_Tools/8.3.07/Tools/bin/hexagon-sim --timing --profile binary.hexagon argument1 argument2
Qualcomm/Hexagon_SDK/3.5.3/tools/HEXAGON_Tools/8.3.07/Tools/bin/hexagon-sim --timing --profile binary.hexagon 'argument1 argument2'
Qualcomm/Hexagon_SDK/3.5.3/tools/HEXAGON_Tools/8.3.07/Tools/bin/hexagon-sim --timing --profile 'binary.hexagon argument1 argument2'

但这一切都只是给出了错误:

More than one non-option on command line!
(binary.hexagon)
(argument1)
Cannot determine executable - aborting.
4

1 回答 1

2

你应该使用--它。

像这样:

hexagon-sim --timing --profile binary.hexagon -- argument1 argument2

来自“Hexagon Simulator 用户指南”,Qualcomm 文档80-N2040-17 P

运行模拟器 ... 命令开关用于控制各种模拟器选项。一个开关由一个或两个短划线字符组成,后跟一个开关名称和可选参数。请注意,开关名称区分大小写。开关必须至少间隔一个空格。命令开关 ( --) 在两边由空格分隔时,用于将目标应用程序的命令参数与模拟器的命令参数分开。例如:

hexagon-sim --rtos q.cfg a.out -- 10 // 10 is target app arg
hexagon-sim --rtos q.cfg -- a.out 10 // alternate form
于 2021-07-04T03:31:16.957 回答