我在Makefile.am
来源中使用yocto
。
我的代码正常使用Makefile
。
但是,在与Makefile.am
中的yocto
进行整合时,会出现分段错误。
我在编译时使用 - lpthread
。我想知道如何使用
cflags
中的Makefile.am
。任何人都可以告诉我,Makefile.am
是否正确?因为我对我的汇编感到怀疑。
以下是我的Makefile.am
AUTOMAKE_OPTIONS = foreign
CFLAGS = -Wall -Wextra -static -lpthread -lrt
#include_HEADERS = .Iinclude/*
nobase_include_HEADERS = include/fmsHeader.h include/c_typedef.h include/console_comm.h
bin_PROGRAMS = bbmain
bbexample_SOURCES = bbmain.c
答案 0 :(得分:1)
我将内容重新修改为以下格式。 有效
希望它对某人有帮助。
w
答案 1 :(得分:0)
您建议的makefile的几个问题(在问题中):
=
,因为这使得从外部控制基本标志变得更加困难。请改用+=
。CFLAGS
用于编译标志。不幸的是,LDFLAGS
也是错误的,因为它用于链接器标志。您应该将标记添加到LIBS
。-lpthread
。请改用-pthread
。另请注意,-pthread
是一个编译标志,也是一个链接时标志。-Wall
和-Wextra
等标志,而不是makefile本身的一部分。它可以更容易地控制它的使用。最终结果应如下所示:
CFLAGS += -pthread
LIBS += -lrt