在瑞萨Rx72M上 我想生成lib库文件,并在其它的工程中调用这个库文件,以下是我的操作步骤,麻烦各位看看哪一步存在问题,导致最终无法

使用的e2studio是2021年11月的版本

要在Renesas CC-RX中生成静态库项目并在其他项目中使用它,按照以下步骤操作:

 

  1. Rx系列中创建一个新的Renesas C/C++ 项目

- 选择File --> New --> Renesas C/C++ Project --> Renesas RX

- 在Templates for Renesas RX project窗口中,选择Renesas CC-RX C/C++ Library Project 项目,单击下一步继续

- 在项目详细信息页面上,输入静态lib项目的名称例如lib),注意不能出现中文名称,所选的保存路径也不要出现有中文名称,然后单击下一步继续

- 在设备和工具选择页面中,选择与可执行项目相同的设备和工具链

 

  1. 创建完工程后,在此工程的“src”文件夹中,进行以下操作

选择 “New” -> “源文件”。 “Source File” 对话框中输入函数的文件名,例如 “test.c”,然后点击 “Finish”。

选择 “New” -> “ Header File”。在 “ Header File” 对话框中输入函数的文件名,例如 “ test.h ”,然后点击 “Finish”

示例代码如下:

test.c

int add(int a, int b)

{

    return a + b;

}

 

int sub(int a, int b)

{

    return a - b;

}

test.h

#ifndef TEST_H_

#define TEST_H_

 

int add(int a, int b);

int sub(int a, int b);

 

#endif /* TEST_H_ */

  1. 设置库的生成方式

选择构建库(仅当选项已更改时) 如果选项发生了更改,或者用户显式地清理了项目,则将构建一个新的标准库

 

一般情况下,生成方式默认是这个,看具体情况进行相应的设置

(标准库的生成模式:

(1)、构建库每次在每次构建过程中都会构建一个新的标准库。任何依赖文件也将被重新构建

②、构建库(仅当选项已更改时) 如果选项发生了更改,或者用户显式地清理了项目,则将构建一个新的标准库

③、使用现有的库文件 应该链接指定的文件,而不是自动生成的库文件

④、不添加库文件 标准库既不会生成也不会链接。

 

用户指定的库文件(-output)

①、如果不指定,将采用默认的路径方式

②、如果指定,将链接指定的文件,而不是自动生成的库文件。)

 

  1. “项目”菜单中选择生成全部来编译项目。
  2. 项目成功编译后,将在项目的Debug中生成一个库文件(.lib)
  3.  在别的项目中调用上述生成的库文件

     

    - 打开需要调用库文件的项目工程,在该工程内的“src”目录下创建一个源代码文件夹,以存储第三方库的头文件include和链接的库文件

     

    - 将第三方库提供的头文件复制到上一步骤中创建的文件夹中。在工程中包含第三方库的头文件,以便编写代码调用第三方库函数。

     

    7.在这文件夹内,编写调用库文件函数的代码

    选择 “New” -> “源文件”。

    - 在 “Source File” 对话框中输入调用库函数的文件名,例如 “main.c”,然后点击 “Finish”。

    - 在“main.c”

  4. 文件中编写调用静态库函数的代码,例如:

#include <stdio.h>

#include "test.h"

 

int main() {

    int a = 10;

    int b = 5;

    int sum = add(a, b);

    int diff = sub(a, b);

    printf("Sum: %d, Diff: %d\n", sum, diff);

    return 0;

}

  1. 接着,在项目属性中,确保编译器能找到头文件和库文件

 

①、在“C/C++ Build(C/C++构建)”项下的“Settings(设置)”页中选择“Tool Settings(工具设置)”选项卡

 

②、在工具设置中选择Compiler(编译器),点击 Source()选项,在右侧的Include file directories(-include)(包括文件目录),点击Add,添加相应的文件路径

③、在“C/C++ Build(C/C++构建)”项下的“Settings(设置)”页中选择“Tool Settings(工具设置)”选项卡

 

④、找到“C/C++ Linker(链接器)”选项,点击"Input(输入)"选项,将添加lib库路径添加到链接器中。

  1. 添加完成后,点击应用并关闭,然后选择构建并生成代码。

 

 

完成上述所有步骤后,进行编译下载调试。编译没有问题,但在调试过程中,将变量添加到监看式时读取不出来,报错有问题。我在网上搜了不少关于这个lib库的生成和调用的问题,也试了它们的方法,但都不正确,我不知道哪一步做错了,有点迷糊现在,恳请各位大佬赐教。

Parents Reply Children
No Data