使用gcc成功编译
This commit is contained in:
@@ -40,6 +40,8 @@ DEF=[
|
||||
]
|
||||
|
||||
INC=[
|
||||
'-ISrc/MJPEG',
|
||||
'-ISrc/MJPEG/JPEG',
|
||||
'-ISrc/STM32/CMSIS/Device/ST/STM32F4xx/Include',
|
||||
'-ISrc/STM32/CMSIS/Include',
|
||||
'-ISrc/STM32/DSP/Include',
|
||||
@@ -54,8 +56,6 @@ INC=[
|
||||
'-ISrc/lpng1637',
|
||||
'-ISrc/lua-5.4.2',
|
||||
'-ISrc/lua-5.4.2/src',
|
||||
'-ISrc/MJPEG',
|
||||
'-ISrc/MJPEG/JPEG',
|
||||
'-ISrc/MP3',
|
||||
'-ISrc/MP3/helix',
|
||||
'-ISrc/MY',
|
||||
@@ -71,14 +71,13 @@ INC=[
|
||||
]
|
||||
|
||||
SRC_DIR=[
|
||||
'Src/MJPEG',
|
||||
'Src/STM32/STM32F4xx_StdPeriph_Driver/src',
|
||||
'Src/Drive/Source',
|
||||
'Src/FreeType/src',
|
||||
'Src/JPEG',
|
||||
'Src/lib',
|
||||
'Src/lpng1637',
|
||||
'Src/lua-5.4.2/src',
|
||||
'Src/MJPEG',
|
||||
# 'Src/lua-5.4.2/src',
|
||||
'Src/MP3',
|
||||
'Src/MyApp',
|
||||
'Src/MyWin',
|
||||
@@ -89,6 +88,7 @@ SRC_DIR=[
|
||||
|
||||
SRC=[
|
||||
'Src/STM32/CMSIS/Device/ST/STM32F4xx/Source/Templates/gcc_ride7/startup_stm32f429_439xx.s',
|
||||
'Src/STM32/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c',
|
||||
"Src/MY/bsp_init.c",
|
||||
"Src/MY/main_my.c",
|
||||
"Src/MY/stm32f4xx_it.c",
|
||||
@@ -98,13 +98,32 @@ SRC=[
|
||||
'Src/FATS/ff.c',
|
||||
'Src/FATS/ffsystem.c',
|
||||
'Src/FATS/mycc936.c',
|
||||
"Src/lib/buff.c",
|
||||
'Src/rt-thread/board.c',
|
||||
# 'Src/rt-thread/core_delay.c',
|
||||
'Src/rt-thread/libcpu/arm/cortex-m4/context_gcc.S',
|
||||
'Src/rt-thread/ports/cpuport.c',
|
||||
'Src/FreeType/ftdebug.c',
|
||||
'Src/FreeType/ftfile.c',
|
||||
|
||||
|
||||
|
||||
'Src/zlib/adler32.c',
|
||||
'Src/zlib/compress.c',
|
||||
'Src/zlib/crc32.c',
|
||||
'Src/zlib/deflate.c',
|
||||
# 'Src/zlib/gzclose.c',
|
||||
# 'Src/zlib/gzlib.c',
|
||||
# 'Src/zlib/gzread.c',
|
||||
# 'Src/zlib/gzwrite.c',
|
||||
'Src/zlib/infback.c',
|
||||
'Src/zlib/inffast.c',
|
||||
'Src/zlib/inflate.c',
|
||||
'Src/zlib/inftrees.c',
|
||||
'Src/zlib/trees.c',
|
||||
'Src/zlib/uncompr.c',
|
||||
'Src/zlib/zutil.c',
|
||||
'Src/MP3/helix/arm/asmmisc_gcc.s',
|
||||
'Src/MP3/helix/arm/asmpoly_thumb2_gcc.s',
|
||||
'Src/MY/syscalls.c',
|
||||
]
|
||||
|
||||
LD_FILE="stm32f429ighx_flash.ld"
|
||||
@@ -180,7 +199,7 @@ def run_cmd(cmd_queue:Queue,cpu_index:int,return_list:Queue,failed_num):
|
||||
print(f"[{cpu_index}] {cmd.info}")
|
||||
# ret=os.system(cmd.cmd)
|
||||
try:
|
||||
ret = subprocess.run(cmd.cmd, shell=True, timeout=20).returncode
|
||||
ret = subprocess.run(cmd.cmd, shell=True, timeout=60).returncode
|
||||
except subprocess.TimeoutExpired:
|
||||
print("命令执行超时!")
|
||||
failed_num.value += 1
|
||||
@@ -193,7 +212,7 @@ def run_cmd(cmd_queue:Queue,cpu_index:int,return_list:Queue,failed_num):
|
||||
return_list.put((cpu_index,ack))
|
||||
|
||||
|
||||
def run_cmd_queue(cmd_queue:Queue,cpu_num:int=cpu_count()):
|
||||
def run_cmd_queue(cmd_queue:Queue,cpu_num:int=8):
|
||||
if(cmd_queue.empty()):
|
||||
return True
|
||||
process_list = []
|
||||
@@ -279,11 +298,13 @@ def build_target(src:list):
|
||||
obj_list.append('.'.join([name,'o']))
|
||||
dst=os.path.join(OUTPUT,TARGET)+".elf"
|
||||
if(check_rebuild(dst,obj_list)):
|
||||
cmd=f"{CC} {' '.join(obj_list)} -o {dst} {flags} -specs=nano.specs \
|
||||
rsp=f"{' '.join(obj_list)} -o {dst} {flags} -specs=nano.specs \
|
||||
-T{LD_FILE} -lc -lm -lnosys -Wl,-Map={OUTPUT}/{TARGET}.map,--cref -Wl,--gc-sections \
|
||||
-Wl,--no-warn-rwx-segments -Wl,-print-memory-usage"
|
||||
print(f"链接 {dst}")
|
||||
ret=os.system(cmd)
|
||||
with open(f"{OUTPUT}/{TARGET}.rsp",'w+') as f:
|
||||
f.write(rsp.replace('\\','/'))
|
||||
ret=os.system(f"{CC} @{OUTPUT}/{TARGET}.rsp")
|
||||
return ret==0
|
||||
return False
|
||||
|
||||
@@ -312,3 +333,5 @@ if __name__ == "__main__":
|
||||
main()
|
||||
tick_end=time.time()
|
||||
print(f"cost: {tick_end-tick_start}")
|
||||
# for item in find_type('Src/zlib',".c"):
|
||||
# print(f"'{item}',".replace('\\','/'))
|
||||
|
Reference in New Issue
Block a user