Skip to content
Discussion options

You must be logged in to vote

命令为 arm-none-eabi-gcc -E -P -CC -o rom_symbol.ld - < ./lib/xradio_v2/rom_symbol.ld 直接 运行正常,输出也正常,使用os.exec
os.exec(toolchains .. "/arm-none-eabi-gcc -E -P -CC "..define_flasgs.." -o rom_symbol.ld - < ./lib/xradio_v2/rom_symbol.ld")
失败

os.exec 执行的是进程,不是 shell,不支持 shell 的写法。。用 os.execv

使用os.execv os.execv(toolchains .. "/arm-none-eabi-gcc",{"-E","-P","-CC",define_flasgs},{stdin = "./lib/xradio_v2/rom_symbol.ld" ,stdout = "rom_symbol.ld"})

  1. 传入 stdin/stdout 的路径是相对路径,确认当前目录是否匹配。。
  2. -o rom_symbol.ld 是传参,不是重定向,不应该放到 stdout
  3. 最后面那个 - 参数也漏了

Replies: 2 comments 5 replies

Comment options

You must be logged in to vote
0 replies
Answer selected by Dozingfiretruck
Comment options

You must be logged in to vote
5 replies
@Dozingfiretruck
Comment options

@waruqi
Comment options

@Dozingfiretruck
Comment options

@waruqi
Comment options

@Dozingfiretruck
Comment options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants