[英]Ceedling with multiple source file extensions
我正在尝试为我现有的嵌入式项目设置单元测试。 不幸的是,该项目的源文件“.c”和“.C”混合了扩展名。 由于版本控制历史,我不能只是将所有文件重命名为“.c”
我试图相应地编辑 yaml 文件,但它似乎只支持一个或另一个扩展名。
普通的
...
:extension:
:executable: .out
:source: .c
...
不工作,但需要
...
:extension:
:executable: .out
:source: .c ; .C
...
LED.C 未编译。 所以链接器失败。
Test 'test_LED.c'
-----------------
Generating runner for test_LED.c...
Compiling test_LED_runner.c...
Compiling test_LED.c...
Linking test_LED.out...
build/test/out/c/test_LED.o: In function `test_LED_NeedToImplement':
C:\Users\de7d7b\Workspaces\C_\myProject/test/test_LED.c:14: undefined reference to `LED_turnOn'
collect2.exe: error: ld returned 1 exit status
从 0.29.1 开始,这在 Ceedling 中似乎是不可能的,因为源扩展仅用作单个配置字符串而不是数组。 我强烈建议为它打开一个功能请求。
同时,您至少可以通过为每个文件创建符号链接来解决部分问题。 这很烦人,但可以让您在不重命名所有文件的情况下使用 ceedling。 例如,如果您要测试的文件在 src 中:
ln -s LED.C src/LED.c
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.