所以我试图在我的Raspberry Pi上编译一个C程序,并且说明告诉我“addinclude uninstd”后面跟着确切的代码:
sed -i 's | #include <arpa / inet.h> | #include <arpa / inet.h> n #include <unistd.h> | g 'openmilight.cpp
所以,我相信说明是要修改makefile,但是我在Makefile中放入什么来包含这些库呢?
以下是整个Makefile:
CC = g++
CFLAGS = -c -Wall
LIBS = -lrf24-bcm
SOURCES = PL1167_nRF24.cpp MiLightRadio.cpp openmilight.cpp
BIN = openmilight
all: $(SOURCES) $(BIN)
$(BIN): $(SOURCES:.cpp=.o)
$(CC) $^ -o $@ $(LIBS)
%.o: %.cpp
$(CC) $(CFLAGS) -o $@ $<
clean:
rm -f *.o $(BIN)
谢谢,我只是模糊地熟悉使用Makefiles,这让我感到困惑。
如果有帮助,这是我试图运行的确切代码: http://torsten-traenkner.de/wissen/smarthome/openmilight.php 这是德语,这可能是它在翻译中丢失的原因。
答案 0 :(得分:2)
该指令是用于修改文件openmilight.cpp
的sed命令。与makefile无关。
只需在openmilight.cpp
目录中执行bash命令或手动添加包含:在preferred编辑器中打开openmilight.cpp
并添加行
#include <unistd.h>
之后
#include <arpa/inet.h>