我试图将多个.exe放在单个.msi包中,它应该逐个安装.
假设我有一个a.exe,b.exe和c.exe
单击.msi包时应安装a.exe,并且.msi应该在成功安装a.exe后等待它,它应该触发b.exe.成功安装b.exe后,应触发c.exe进行安装.
.exe文件(a.exe,b.exe和c.exe)是标准安装程序(用于egCodeSourcery,flash工具,IAR工作台等).
请告诉我如何实现这一点以及我需要哪些工具.
关心Horaira
没有RTOS/OS的小型嵌入式系统是否使用动态/共享库.我的理解是,使用它非常困难,而且效率不高.
如果我们多次调用一个静态库中存在的API.API代码是否会放置在每个调用位置,如宏扩展或代码/文本将是所有调用的通用位置.我认为代码/文本很常见.
如果我为具有多个API的.c文件创建了静态库,并且我将其与主文件静态链接,并且在主文件中只调用了一个API,那么我的问题是整个库是否包含在最终的.bin中或仅特定的API代码.
从上面的问题,你可以假设我缺少基本面本身,所以任何人都可以提供相关的链接来刷这些.
问候
[编辑]
我试过以下事情
addition.c模块
`int addition(int a,int b)`
`{`
`int result;`
`result = a + b;`
`return result;`
`}`
`size addition.o`
23 0 0 23 17 addition.o
Run Code Online (Sandbox Code Playgroud)
multiplication.c模块
`int multiplication(int a, int b)`
`{`
`int result;`
`result = a * b;`
`return result;`
`}`
`size multiplication.o`
21 0 0 21 15 multiplication.o
Run Code Online (Sandbox Code Playgroud)
创建了两者的目标文件并放入了archieve
ar cr libarith.a addition.o multiplication.o
Run Code Online (Sandbox Code Playgroud)
然后静态链接到我的主应用程序
example.c模块
`#include "header.h"`
`#include <stdio.h>`
`1:int main()`
`2:{`
`3:int result;`
`4:result = addition(1,2);`
`5:printf("addition result is : …Run Code Online (Sandbox Code Playgroud)