soma
发表于 2024-5-8 12:49:20
c51生成obj文件,bl51对obj编译,最后oh51生成hex
durongze
发表于 2024-5-8 18:38:09
kksk 发表于 2024-5-8 12:23
Keil C51不清楚,但是SDCC和gcc类似,先sdcc生成ihx文件,再packihx转成hex文件
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\L251.EXE @sample.lnp
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\OH251.EXE sample H386 RANGE (0 - 0xFFFFFF)
F:\stc\STC32G-DEMO\03-7Segment\C>dir /b
build_stc.bat
main.c
sample.build_log.htm
sample.uvgui.du
sample.uvopt
sample.uvproj
功能说明.txt
----------------------
我本来是想弄清楚具体应该怎么编译,原理这个我知道的。
----------------------
上面是我后来弄清楚的具体命令,这个已经确定了。
不过应该少了步骤,具体少了哪一步还没弄清楚。
不过上面的命令很奇怪,还得进一步分析。
durongze
发表于 2024-5-8 22:42:17
soma 发表于 2024-5-8 12:49
c51生成obj文件,bl51对obj编译,最后oh51生成hex
嗯,这个是原理。
21cnsound
发表于 2024-8-6 11:28:28
durongze 发表于 2024-5-8 18:38
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i
F:\stc\STC32G-DEM ...
C51和C251是一样的方法,命令行下运行:
SET C251INC=D:\C251\INC
SET C251LIB=D:\C251\LIB
D:\C251\C251.exe main.c
D:\C251\L251.exe main.obj
D:\C251\OH251 main hex
21cnsound
发表于 2024-8-6 11:30:31
更多细节可以看https://www.stcaimcu.com/forum.php?mod=viewthread&tid=8320&highlight=%E5%91%BD%E4%BB%A4%E8%A1%8C&page=1&extra=#pid78486
durongze
发表于 2024-8-13 18:25:17
21cnsound 发表于 2024-8-6 11:30
更多细节可以看https://www.stcaimcu.com/forum.php?mod=viewthread&tid=8320&highlight=%E5%91%BD%E4%BB%A ...
你的没写步骤啊,就设置个变量就完事了。{:funk:}
21cnsound
发表于 2024-8-13 19:04:33
durongze 发表于 2024-8-13 18:25
你的没写步骤啊,就设置个变量就完事了。
命令就三条,你试试就知道了。
21cnsound
发表于 2024-8-13 19:11:45
durongze 发表于 2024-8-13 18:25
你的没写步骤啊,就设置个变量就完事了。
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i -----main.--i文件就是个文本文件,里面是c文件名及参数,可以直接写到C251.exe命令后面
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\L251.EXE @sample.lnp-------------sample.lnp文件就是个文本文件,里面是obj文件名及参数,可以直接写到L251.exe命令后面
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\OH251.EXE sample H386 RANGE (0 - 0xFFFFFF)
以下文件,命令行编译时不需要
sample.build_log.htm
sample.uvgui.du
sample.uvopt
sample.uvproj
功能说明.txt
这下清楚了没?
durongze
发表于 2024-8-14 07:22:43
21cnsound 发表于 2024-8-13 19:11
F:\stc\STC32G-DEMO\03-7Segment\C>F:\program\KeilC51\C251\BIN\C251.EXE @main.__i -----main.-- ...
感谢大佬啊。。。。 {:loveliness:}。各位小伙伴,没跟上的赶紧学习。
durongze
发表于 2024-8-14 07:24:04
21cnsound 发表于 2024-8-6 11:28
C51和C251是一样的方法,命令行下运行:
SET C251INC=D:\C251\INC
SET C251LIB=D:\C251\LIB
{:titter:} 会啦,谢谢大佬。