gcc和使用CFLAGS链接文件
我正在尝试运行学习C硬方法手册中的程序 我需要将库文件名'build/liblcthw.a'作为最后一个参数传递 例如: 无法在Ubuntu上运行: gcc-g-O2-Wall-Wextra-Isrc-rdynamic-DNDEBUG build/liblcthw.a tests/list_tests.c-o tests/list_tests 在Ubuntu上工作: gcc-g-O2-Wall-Wextra-Isrc-rdynamic-DNDEBUG tests/list_tests.c-o tests/list_tests build/liblcthw.agcc和使用CFLAGS链接文件,gcc,makefile,Gcc,Makefile,我正在尝试运行学习C硬方法手册中的程序 我需要将库文件名'build/liblcthw.a'作为最后一个参数传递 例如: 无法在Ubuntu上运行: gcc-g-O2-Wall-Wextra-Isrc-rdynamic-DNDEBUG build/liblcthw.a tests/list_tests.c-o tests/list_tests 在Ubuntu上工作: gcc-g-O2-Wall-Wextra-Isrc-rdynamic-DNDEBUG tests/list_tests.c-o t
如何在Makefile中处理此问题?CFLAGS只会将其添加到源文件名之前,它不起作用。如何强制CFALGS在命令末尾添加库文件名?CFLAGS是C编译器的标志。库通常包含一个名为LDLIBS的变量。设置LDLIBS=build/liblcthw.a,看看是否有效。CFLAGS是C编译器的标志。库通常包含一个名为LDLIBS的变量。设置LDLIBS=build/liblcthw.a,看看是否有效。第一次调用没有成功,因为命令行中源和库的顺序错误。正确的顺序是源文件,然后是对象文件,然后是静态库,然后是动态库。第一次调用没有成功,因为命令行中源和库的顺序是错误的。正确的顺序是源文件,然后是目标文件,然后是静态库,最后是动态库。+1。用汽车制造商的话说,LIBS或LDADD也是一个常用术语。用汽车制造商的话说,LIBS或LDADD也是一个常用术语。