如何使用 Autotools 生成的 Makefile 在 Vim 中编译单个 C 文件

How to Compile Single C file in Vim using Makefile Generated by Autotools

如果在我的 Makefile.am 中,我有一组假设命名的来源:

lib_LTLIBRARIES = libmy_tutorial.la                                           
libmy_tutorial_la_SOURCES = \                                                 
  jump_table.h jump_table.c \                                                  
  core.h core.c \                                                
  my_dynapi.c                                                                   

bin_PROGRAMS = main                                                            
main_SOURCES = main.c                                                          
main_LDADD = libmy_tutorial.la                                     

CLEANFILES = *.o  

我在 Vim。如果我的 Makefile 是从上面的 Makefile.am 生成的,有没有办法在单个目标上调用 :make

例如:

:make main.o

只能从 bin_PROGRAMS 编译 main.c?

就好像我有 运行:

gcc -c -o main.o $(CFLAGS) $(CPPFLAGS) main.c

由于您使用的是 Libtool,因此您的目标是 .lo 个文件而不是 .o 个文件。如果您使用的是按目标 CFLAGS.

,请调用 make main.lomake libmy_tutorial_la-main.lo