我已经下载了cmocka 示例文件并按照所有说明进行操作。所有测试文件均已成功生成,我可以运行它们,但控制台中没有输出。我尝试改变CMOCKA_MESSAGE_OUTPUT
环境变量,尝试编写自己的测试并编译它们,尝试重新编译并重新安装 cmocka 几次 - 没有任何东西使测试输出任何东西。我在 Windows 7 32 位上工作,所以我想尝试一下 cygwin,但 cygwin 只是抛出它找不到公共库,所以我放弃了我的研究的这个分支——毕竟 cmocka 也应该在 windows cmd 中正常工作。有谁知道如何让测试输出任何东西到控制台?
编辑
我正在添加我的 make 信息以防编译/链接出现问题,尽管我没有看到任何问题(它不会产生任何错误并正确输出 tests.exe 文件):
生成文件
OBJ_DIR = obj
HDR = $(wildcard *.h)
SRC = $(HDR:.h=.c)
OBJ = $(HDR:%.h=$(OBJ_DIR)\\%.o)
CC = gcc
CFLAGS = -I"C:\Program Files\cmocka\include" -I"C:\Program Files\cmocka\lib" -I"C:\Program Files\cmocka\bin" -llibcmocka -lcmocka
.PHONY: all clean
all: tests.exe
$(OBJ_DIR)\\%.o: %.c %.h
$(CC) $< -c -o $@ $(CFLAGS)
$(OBJ_DIR)\tests.o: tests.c
$(CC) $< -c -o $@ $(CFLAGS)
tests.exe: $(OBJ) $(OBJ_DIR)\tests.o
$(CC) $^ -o tests.exe $(CFLAGS)
clean:
del $(OBJ) $(OBJ_DIR)\tests.o tests.exe
注意1:cflags 中的众多路径是出于绝望 - 起初我只使用第一个。
注意 2:当我尝试在 Netbeans 或 cygwin 中运行此脚本时,我更改del
为rm -f
并切换斜杠。输出与上面描述的一样:make 完成时没有任何错误并输出tests.exe
,但是一旦执行,它就会抛出关于无法找到公共库的错误。