Tag: gnu make

在制作ESP8266项目时获取C函数的未定义引用

我按照本教程将一个Kaa应用程序安装到ESP8266中,经过一些修改后它可以工作: https ://kaaproject.github.io/kaa/docs/v0.10.0/Programming-guide/Using-Kaa-endpoint-SDKs / C / SDK-ESP8266 / 我必须做的一个修改是在eagle.app.v6.ld中移动一行代码,因为字节溢出(箭头指向要改变我做的): … .irom0.text : ALIGN(4) { _irom0_text_start = ABSOLUTE(.); *(.literal.* .text.*) –> moved from “.text : ALIGN(4){…}” … } … 在我这样做后,我仍然有一些字节溢出,所以我修改了文档中的原始cmake命令,以禁用占用空间的cmake扩展: cmake \ -DCMAKE_TOOLCHAIN_FILE=../kaa/toolchains/esp8266.cmake \ -DKAA_PLATFORM=esp8266 \ -DCMAKE_BUILD_TYPE=MinSizeRel \ -DWITH_EXTENSION_CONFIGURATION=OFF \ -DWITH_EXTENSION_EVENT=OFF \ -DWITH_EXTENSION_LOGGING=OFF \ -DWITH_EXTENSION_NOTIFICATION=OFF \ -DWITH_EXTENSION_USER=OFF \ -DWITH_ENCRYPTION=OFF \ -DKAA_MAX_LOG_LEVEL=3 .. 最后,当我运行make命令时。 有效。 然后我创建并将二进制文件闪存到我的ESP中。 然后我重置我的ESP,GPIO0为高(所以它可以从闪存启动),ESP发送“Hello,Kaa!” […]

找不到指向Makefile的库文件

我正在尝试编译此工具。 下面是Makefile的开头: CC = gcc CFLAGS = -Wall -O2 -D TRACES DFLAGS = -g -Wall -o0 CPPFLAGS= $(INCLUDES:%=-I %) LDFLAGS = $(LIBRARIES:%=-L %) LDLIBS = $(USED_TOOLS:%=-l%) MY_FILES = INCLUDE_DIR = ~/include TOOLBOX_INC = $(INCLUDE_DIR)/tools TOOLBOX_LIB = $(TOOLBOX_INC) USED_TOOLS = std_io stringutils INCLUDES = $(TOOLBOX_INC) LIBRARIES = $(TOOLBOX_LIB) 我还有〜/ include / tools,编译后包括std_io.o,libstd_io.a,stringutils.o和libstringutils.a 我收到以下错误: gcc -L ~/include/tools […]