苏嵌嵌入式Linux实训第四天

本文分享了在苏嵌实训的第四天,深入学习嵌入式Linux开发的体验,包括GCC、GDP、Makefile的基础知识,以及GCC优化级别、静态库与动态库的制作流程,还介绍了CMake的基本用法。

                                             项目开发日报表

 

项目名称

 

【苏嵌实训-嵌入式 linux  第 4天】

 

今日进度以及任务

 

学习了gcc,gdp,makefile相关知识

 

 

 

本日任务完成情况

(详细说明本日任务是否按计划完成,开发的代码量)

 

任务1:编译器三级优化分别优化了哪些?

任务2:总结gcc静态库和动态库的制作

任务3:总结cmake的用法

 

 

 

本日开发中出现的问题汇总

 

 

 

 

本日未解决问题

 

 

 

 

 

 

本日开发收获

 

了解了一些编译原理

 

 

 

 

 

 

其他

 

 

 

任务1:编译器三级优化分别优化了哪些?

GNU编译器提供-O选项供程序优化使用:
-O 提供基础级别的优化
-O2 提供更加高级的代码优化,会占用更长的编译时间
-O3 提供最高级的代码优化
-O4 不优化,这是默认值

 

任务2:总结gcc静态库和动态库的制作

静态库过程如下:

(1)进入libtest/lib目录,执行命令:

       gcc -c -I../include hello.c

       这一步将在libtest/lib目录中生成一个hello.o文件。

(2)在libtest/lib目录,执行命令:

       ar rc libhello.ahello.o

这一步将在libtest/lib目录中生成一个libhello.a文件。

(3)进入libtest/src目录,执行命令:

       gcc main.c-I../include -L../lib -lhello -o main

       该命令将编译main.c并链接静态库文件libhello.a生成可执行文件main,这一步将在libtest/src目录中生成可执行文件main

动态库过程如下:

(1)进入libtest/lib目录,执行命令:

       gcc hello.c-I../include -fPIC -shared -o libhello.so

(2)进入libtest/src目录,执行命令:

       gcc main.c-I../include -L../lib -lhello -o main

      

任务3:总结cmake的用法

编写main.c,如下,

#include <stdio.h>

int main(void)
{
    printf("Hello World\n");

    return 0;
}

然后在main.c相同目录下编写CMakeLists.txt,内容如下,

cmake_minimum_required (VERSION 2.8)

project (demo)

add_executable(main main.c)
 

内容概要:本资源聚焦于配电网在发生故障后的两阶段鲁棒恢复研究,旨在提升电力系统在不确定性条件下的恢复能力与运行可靠性。研究采用两阶段优化方法,第一阶段进行预恢复决策,如网络重构、分布式电源出力调整等,以最小化预期损失;第二阶段则针对实际发生的故障场景实施校正控制,利用鲁棒优化理论应对负荷波动、新能源出力不确定性等因素,确保恢复方案的可行性与强健性。资源提供了完整的Matlab代码实现,复现了相关顶刊研究成果,便于使用者深入理解模型构建、算法求解及仿真分析全过程。; 适合人群:具备电力系统分析、优化理论基础及Matlab编程能力的研究生、科研人员及电力行业工程师。; 使用场景及目标:① 学习并掌握配电网故障恢复的先进优化方法,特别是两阶段鲁棒优化模型的构建与应用;② 复现和验证顶刊论文中的算法,为自身科研工作提供技术参考和代码基础;③ 将所学方法拓展应用于微电网、主动配电网等新型电力系统的可靠性评估与优化调度研究。; 阅读建议:学习者应结合提供的Matlab代码,仔细研读模型的数学公式与求解逻辑,重点关注不确定性建模、两阶段决策变量的设定以及鲁棒对等转换技巧。建议在掌握基础案例后,尝试修改参数或引入新的约束条件进行扩展研究,以深化理解并提升创新能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值