探索:泰山众筹模式系统开发逻辑原理方案分析(成熟源码)

简介: 探索:泰山众筹模式系统开发逻辑原理方案分析(成熟源码)

迁移华为的liteOS到STM32F4的开发板上,按照官方的步骤修改makefile后报错:

arm-none-eabi-gcc.exe: warning: '-x assembler-with-cpp' after last input file has no effect
arm-none-eabi-gcc.exe: fatal error: no input files
compilation terminated.
复制
解决过程
根据Makefile的报错地点可以看出是在对.S文件的编译过程中找不到文件所致,将结果打印出来:

arm-none-eabi-gcc -x assembler-with-cpp -c -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -DUSE_STDPERIPH_DRIVER -DSTM32F407xx -DSTM32F40_41xxx -I./Inc -IProjectDrivers/Inc -IProjectDrivers/Inc/Inc -IProjectDrivers/Inc/CORE -IDrivers/CMSIS/include -I./Src/SYSTEM -I./Src/MALLOC -I./ProjectDrivers/HARDWARE -IThirdParties/LWIP -I./ThirdParties/LWIP -I./ThirdParties/LWIP/arch -I./ThirdParties/LWIP/lwip_app -I./ThirdParties/LWIP/lwip_app/lwip_comm -I./ThirdParties/LWIP/lwip_app/tcp_server_demo -I./ThirdParties/LWIP/lwip_app/udp_demo -I./ThirdParties/LWIP/lwip-1.4.1 -I./ThirdParties/LWIP/lwip-1.4.1/src -I./ThirdParties/LWIP/lwip-1.4.1/src/api -I./ThirdParties/LWIP/lwip-1.4.1/src/core -I./ThirdParties/LWIP/lwip-1.4.1/src/core/ipv4 -I./ThirdParties/LWIP/lwip-1.4.1/src/include -I./ThirdParties/LWIP/lwip-1.4.1/src/include/ipv4 -I./ThirdParties/LWIP/lwip-1.4.1/src/include/ipv4/lwip -I./ThirdParties/LWIP/lwip-1.4.1/src/include/lwip -I./ThirdParties/LWIP/lwip-1.4.1/src/include/netif -I./ThirdParties/LWIP/lwip-1.4.1/src/netif -I./utils/datastructure -I./utils/tools -I ./Middlewares/LiteOS/arch/arm/arm-m/include -I ./Middlewares/LiteOS/arch/arm/common/cmsis -I./OS_CONFIG -I ./Middlewares/LiteOS/kernel/base/include -I ./Middlewares/LiteOS/kernel/extended/include -I ./Middlewares/LiteOS/kernel/include -O1 -Wall -Wno-pointer-sign -Wno-missing-braces -Wno-format -Wno-address -Wno-unused-but-set-variable -s -fdata-sections -ffunction-sections -g -gdwarf-2 --specs=nano.specs --specs=nosys.specs -MMD -MP -MF"Output/obj/los_dispatch_gcc.d"./Middlewares/LiteOS/arch/arm/arm-m/cortex-m4/gcc/los_dispatch_gcc.S -o Output/obj/los_dispatch_gcc.o
复制
注意这里-MF"Output/obj/los_dispatch_gcc.d"./Middlewares/LiteOS/arch/arm/arm-m/cortex-m4/gcc/los_dispatch_gcc.S,".d"后面紧跟着./Middlewares,这说明本该分开的两个参数被合并到一起了,查看Makefile:

$(BUILD_DIR)/%.o: %.s Makefile | $(BUILD_DIR)

$(AS) -c $(CFLAGS) $< -o $@
@echo $(notdir $(<:.s=.o))

$(BUILD_DIR)/%.o: %.S Makefile | $(BUILD_DIR)

$(AS) -c $(CFLAGS)$< -o $@
@echo $(notdir $(<:.s=.o))

复制
第二个CFLAGS后面少了个空格,修改后如下:

$(BUILD_DIR)/%.o: %.s Makefile | $(BUILD_DIR)

$(AS) -c $(CFLAGS) $< -o $@
@echo $(notdir $(<:.s=.o))

$(BUILD_DIR)/%.o: %.S Makefile | $(BUILD_DIR)

$(AS) -c $(CFLAGS) $< -o $@
@echo $(notdir $(<:.s=.o))

复制
重新编译:

$ make
main.o
linking...
arm-none-eabi-size Output/obj/out.elf
text data bss dec hex filename
31876 308 3456 35640 8b38 Output/obj/out.elf

rm -fR Output/obj/Output/obj

mkdir Output/obj/Output/obj

arm-none-eabi-objcopy -O ihex Output/obj/out.elf Output/obj/out.hex
arm-none-eabi-objcopy -O binary -S Output/obj/out.elf Output/obj/out.bin
cp Output/obj/*.bin Output/bin/
cp Output/obj/*.elf Output/bin/
cp Output/obj/*.hex Output/bin/
cp Output/obj/*.map Output/bin/

相关文章
|
6月前
|
数据采集 监控 算法
区块链量化交易系统开发策略详细丨需求步骤丨案例设计丨规则玩法丨成熟源码
策略:建立数据采集系统,获取各种市场数据,包括交易数据、新闻情报、社交媒体消息等。
|
4月前
|
缓存 前端开发 测试技术
什么是七星创客系统丨七星创客系统开发规则玩法/设计方案/逻辑需求/案例项目/源码功能
七星创客系统开发指南是一个帮助开发人员理解并完成七星创客系统的开发任务的指南。以下是一个简要的开发指南需求:
|
4月前
|
开发框架 缓存 监控
美丽天天秒丨链动2+1模式系统开发规则流程/功能设计/需求方案/成熟案例/源码指南
开发美丽天天秒丨链动2+1系统的流程可以按照以下步骤进行:
|
6月前
|
新零售 搜索推荐 大数据
二二复制公排系统开发|成熟案例|项目原理
新零售的意思是应用新互联网技术和新思维的活动
|
6月前
|
自然语言处理 iOS开发
海外短剧系统开发功能指南/案例设计/步骤方案/源码程序
The development of overseas short drama systems needs to consider the following main requirements
|
6月前
|
自然语言处理 监控 搜索推荐
佛萨奇2.0/3.0Metaforce原力元宇宙系统开发步骤逻辑丨方案项目丨案例设计丨成熟技术丨源码功能
佛萨奇(VoZaChi)是一个虚拟助手系统,其发展至2.0和3.0版本会有一些特定需求和逻辑
|
vr&ar 安全 AndFix
Metaforce佛萨奇系统开发案例详细丨方案逻辑丨项目程序丨规则玩法丨源码功能
Requirement analysis: Communicate fully with customers to understand their specific needs and expectations for the Metaforce Sasage system, including game types, features, art styles, etc
|
监控 安全 数据挖掘
泰山众筹系统开发详细指南丨设计方案丨规则玩法丨逻辑功能丨步骤需求丨源码程序
泰山众筹系统是一个基于区块链技术的众筹平台,旨在为用户提供一个安全、透明和高效的众筹环境。
|
运维 测试技术 区块链
链动2+1模式系统开发指南流程丨成熟案例丨功能设计丨测试部署丨方案项目丨逻辑需求丨源码出售
链动2+1模式系统开发方案是指一个较为复杂的系统开发模式,其中包含两个公链和一个私链的组合。
|
AndFix vr&ar 图形学
潮玩元宇宙/大逃杀游戏系统开发详细案例丨规则流程丨方案逻辑丨功能设计丨需求项目丨源码出售
The development of Chaoyu Metaverse Escape Game System refers to the creation and construction of a virtual reality game system to provide an immersive gaming experience, allowing players to participate in a virtual world for escape and combat.
下一篇
无影云桌面