gpt4 book ai didi

makefile - 铛:警告:-l *:'链接器'输入未使用

转载 作者:行者123 更新时间:2023-12-03 14:54:15 25 4
gpt4 key购买 nike

当我使用GNU Make编译代码时,我收到多个警告,例如:

clang: warning: -lGui: 'linker' input unused


这可能是因为我在Makefile中弄乱了某些东西(如下)。谁能指出我的问题?

CXX=g++
CC=g++
CXXFLAGS=-g -Wall -W -Wshadow -Wcast-qual -Wwrite-strings $(shell root-config --cflags --glibs)
CPPFLAGS+=-MMD -MP
LDFLAGS=-g $(shell root-config --ldflags)
LDLIBS=$(shell root-config --libs)

xSec_x: xSec_x.o xSec.o Analysis.o
-include xSec_x.d xSec.d Analysis.d

xSec.o: xSec.cpp xSec.h Analysis.h Analysis.cpp

xSec_x.o: xSec_x.cpp xSec.h Analysis.h

clean:
rm -f @rm -f $(PROGRAMS) *.o *.d

最佳答案

该消息表示您正在将链接器标志(例如-l告诉链接器插入库)传递给编译器。

这意味着运行root-config --cflags --glibs的结果将生成链接器标志,而这些标志将进入CXXFLAGS,并传递给编译器。我不知道root-config是什么,但是您应该研究它的命令行并以不生成链接器标志的方式调用它。可能删除--glibs选项即可。

预计到达时间:如果您要在其中运行:=,您真的想使用$(shell ...)来分配这些标志变量。无论哪种方式都可以,但是如果使用=,则每次make扩展变量时都会运行shell命令,每次编译一次。如果使用:=,则在分析makefile时,它将仅运行一次。

关于makefile - 铛:警告:-l *:'链接器'输入未使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19774795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com