Automake LibSocketCan
Automake LibSocketCan
我正在使用 automake 来构建我的项目。我的项目使用 pthread 和 libsocketcan。我已经使用命令
安装了 libsocketcan
sudo apt-get install libsocketcan-dev
在 eclpise 中,我为 pthread 和 libsocketcan 添加了链接器标志。代码将编译并 运行。当我 运行 我的 automake 脚本时,构建失败并出现错误。
gcc: error: unrecognized command line option ‘-socketcan’[![enter image description here][1]][1]
我的makefile.am如下:
AUTOMAKE_OPTIONS = foreign subdir-objects
bin_PROGRAMS = MAIN_Application
LDFLAGS = \
-pthread \
-socketcan
AM_CPPFLAGS = \
-I$(srcdir)/include \
-I$(srcdir)/include/utilities \
-I$(srcdir)/include/comms
MAIN_Application_SOURCES = \
src/main.c \
src/scheduler.c \
src/utilities/time_conversions.c \
src/utilities/ring_buffer.c \
src/utilities/logger.c \
src/comms/can.c
如果我删除此处对 socketcan
的所有代码和引用,一切正常。我得到了一个很好的应用程序二进制文件,可以 运行 线程。一旦我添加了,我就不能再构建了。我试过 LDFLAGS
socketcan
、libsocketcan
和 libsocketcan-dev
.
我的 makefile 中需要什么 LDFLAG
才能正确包含 libsocketcan
?
为此您不需要任何“LDFLAG
”。 LDFLAGS
用于 linker 标志,而不是用于将库添加到 link 到。
你可以用 MAIN_Application
link 来对抗 libsocketcan,比如:
MAIN_Application_LDADD = -lsocketcan
我正在使用 automake 来构建我的项目。我的项目使用 pthread 和 libsocketcan。我已经使用命令
安装了 libsocketcansudo apt-get install libsocketcan-dev
在 eclpise 中,我为 pthread 和 libsocketcan 添加了链接器标志。代码将编译并 运行。当我 运行 我的 automake 脚本时,构建失败并出现错误。
gcc: error: unrecognized command line option ‘-socketcan’[![enter image description here][1]][1]
我的makefile.am如下:
AUTOMAKE_OPTIONS = foreign subdir-objects
bin_PROGRAMS = MAIN_Application
LDFLAGS = \
-pthread \
-socketcan
AM_CPPFLAGS = \
-I$(srcdir)/include \
-I$(srcdir)/include/utilities \
-I$(srcdir)/include/comms
MAIN_Application_SOURCES = \
src/main.c \
src/scheduler.c \
src/utilities/time_conversions.c \
src/utilities/ring_buffer.c \
src/utilities/logger.c \
src/comms/can.c
如果我删除此处对 socketcan
的所有代码和引用,一切正常。我得到了一个很好的应用程序二进制文件,可以 运行 线程。一旦我添加了,我就不能再构建了。我试过 LDFLAGS
socketcan
、libsocketcan
和 libsocketcan-dev
.
我的 makefile 中需要什么 LDFLAG
才能正确包含 libsocketcan
?
为此您不需要任何“LDFLAG
”。 LDFLAGS
用于 linker 标志,而不是用于将库添加到 link 到。
你可以用 MAIN_Application
link 来对抗 libsocketcan,比如:
MAIN_Application_LDADD = -lsocketcan