[완료] gcc로 컴파일할 때 libxml 라이브러리 링크가 잘 안되는데요. 도와주세요.
글쓴이: geoplab / 작성시간: 화, 2007/05/29 - 1:10오전
libxml 라이브러리를 아래와 같이 링크하여 컴파일하는데 링커 인풋 화일이 사용안되었다고 메세지가 나오네요.
gcc `xml2-config --cflags` -c ./mesh/mesh_init.c `xml2-config --libs` -g -Wall
gcc: -lxml2: linker input file unused because linking not done
gcc: -lz: linker input file unused because linking not done
gcc: -lpthread: linker input file unused because linking not done
gcc: -lm: linker input file unused because linking not done
컴파일 옵션이 잘못되어서 그런가요?
어떤식으로 이런 에러 메세지를 해결할 수 있는지 알려주세요.
Forums:
옵션 -c는 컴파일만
옵션 -c는 컴파일만 하라고 지시하는 것입니다. 따라서 링크 옵션 -lxxx등을 주면 경고를 출력하게 됩니다. -c 옵션을 빼든지 아니면 `xml2-config --libs`를 빼기 바랍니다.
--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://cinsk.github.io/cfaqs/
[완료] gcc로 컴파일할 때 libxml 라이브러리 링크가 잘 안되는데요. 도와주세요.
Makefile을 아래와 같이 만들어 컴파일하니 위와 같은 warning은 나오지만 실행화일은 만들어지네요.
그전에는 libxml의 헤더화일을 불러올 수없었는데 해결되었습니다.
CCMP=gcc
DEBUG = -g
WARN = -Wall
MESH = ./mesh/
XML = -I/usr/include/libxml2/
CFLAGS = `xml2-config --cflags`
LIBS = `xml2-config --libs`
main: main.o mesh_init.o \
$(CCMP) $(CFLAGS) main.o mesh_init.o \
-o main -lm $(LIBS) $(DEBUG) $(WARN)
-rm -f *.o
main.o:
$(CCMP) -c main.c $(DEBUG) $(WARN)
mesh_init.o:
$(CCMP) -c $(CFLAGS) $(MESH)mesh_init.c $(LIBS) $(XML) $(DEBUG) $(WARN)
답변해 주신 cinsk님 감사합니다.
댓글 달기