我有C语言的源代码,并且使用make构建可执行文件。这是一个命令行程序(仅用于终端I / O)。
我从程序中得到的不变输出是来自较早开发状态的不变输出。生成文件如下。如果有人认为源代码很重要,我也可以证明这一点。
我从保存Makefile和源代码的目录执行make。我从其目录执行生成的二进制文件。
# Makefile for project "KlaVirtuell"
HOST = $(shell hostname)
# configuration for all platforms
SRC = .
CFLAGS = -Wall -Wextra -g
# build PC binaries
ifeq ($(HOST),notebook-frank)
vpath %.o ../../bin/lib_PC
LIB = ../../bin/lib_PC
EXE = ../../bin/exe_PC
else ifeq ($(HOST),Raspberry-Pi)
vpath %.o ../../bin/lib_Raspi
LIB = ../../bin/lib_Raspi
EXE = ../../bin/exe_Raspi
else ifeq ($(TARGET),stm32)
endif
# Test: read soundfile, configure hardware, play sound
test-sound: $(SRC)/test-sound.c
gcc -o $(EXE)/test-sound $(SRC)/test-sound.c $(CFLAGS) -lsndfile -lasound