说明
我正在尝试运行自定义gdb(qnx neutrino -〉ntoaarch 64-gdb),但为此,我之前需要设置一些环境变量,我曾经尝试过使用“environment”字段,“envFile”的方法,使用“terminal.integrated.env.linux”做一个“preLaunchTask”和许多其他的事情,但我不能在调用二进制文件之前设置它们。每次尝试都会导致gdb在没有环境变量的情况下执行。我还有一个环境脚本(.sh)用于设置所有变量。
复制步骤:
1.我正在运行启动gdb,需要设置一些环境变量。
1.尝试添加envFile、环境字段或任何其他方法。
1.启动调试器
1.看到gdb调试器失败是因为变量没有设置。
launch.json
{
"name": "Launch debug (GDB)",
"type": "cppdbg",
"request": "launch",
"miDebuggerPath": "/path/to/ntoaarch64-gdb",
"program": "/path/to/binary",
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"miDebuggerServerAddress": "(ip):(port)",
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"envFile": "${workspaceFolder}/.env",
"environment": [
{
"name":"ENVVAR",
"value": "/some/path/"
}
]
}
返回如下输出:
¡QNX环境未设置!
看起来vscode有两种类型的终端,集成终端和内部终端。我设置的变量有时会对集成终端起作用,但不会对内部终端起作用。
你能帮我解决这个问题吗?谢谢
我尝试过使用“environment”字段、“envFile”方法、使用“terminal.integrated.env.linux”、执行“preLaunchTask”和许多其他操作,但我无法在调用内部终端中的二进制文件之前设置它们。
1条答案
按热度按时间llew8vvj1#
我也遇到了这个问题,发现在启动VSCode之前,必须在环境中设置QNX_HOST和QNX_TARGET变量。