我正试图通过遵循Github上的本指南,将ssd1963 LCD与树莓Pi3 B+型接口。
https://github.com/matusnovak/rpi-tftgl
尝试在makefile目录中安装rpi-tftgl提供的rpi-tftgl/tftgl时,在运行make命令时出现此错误。
这是我拍摄的pi终端窗口图像的链接,显示了准确的错误:
linux - <命令行>:0:1:错误:宏名称必须是标识符…解决此错误的方法?-LMLPHP
以下是执行make命令时收到的错误:

gcc -c src/tftgl.c -o src/tftgl.o -I/opt/vc/include -I. -Iinclude -D:0 -O3
<command-line>:0:1: error: macro names must be identifiers
Makefile:18: recipe for target 'src/tftgl.o' failed
make: *** [src/tftgl.o] Error 1

我可以得到这个解决方案,或任何其他来源或链接的建议,我可以遵循接口ssd1963液晶与触摸启用与Raspberrypi3。
添加makefile,
 CC=gcc
 AR=ar
 DISPLAY?=ERROR
 CFLAGS=-I/opt/vc/include -I. -Iinclude -D$(DISPLAY) -O3
 prefix?=/usr/local

 .PHONY: default all clean

  default: tftgl
  all: default

  tftgl: libtftgl.a

  libtftgl.a: src/tftgl.o
     $(AR) rcs libtftgl.a src/tftgl.o

  src/tftgl.o: src/tftgl.c src/tftgl_ssd1963.h src/tftgl_ads7843.h
     $(CC) -c src/tftgl.c -o src/tftgl.o $(CFLAGS)

  install: tftgl
     install -m 0755 libtftgl.a $(prefix)/lib
     install -m 0644 include/tftgl.h $(prefix)/include

  clean:
     -rm -f src/*.o
     -rm -f libtftgl.a

我在这里提供到tftgl.c的链接,
https://github.com/matusnovak/rpi-tftgl/blob/master/tftgl/src/tftgl.c

最佳答案

Makefile的(编写器)不考虑环境变量DISPLAY可以定义为宏定义以外的其他内容。由于没有文档记录您是否需要以及如何定义它,因此您最好在变量未设置的情况下make

(unset DISPLAY; make)

如果您想更改makefile,只需从?中删除DISPLAY?=ERROR,并保留DISPLAY=ERROR

关于linux - <命令行>:0:1:错误:宏名称必须是标识符…解决此错误的方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54570447/

10-13 08:46