make[3]: Entering directory `/data/iamroot/xen/setup/xen-unstable.hg/tools/libxl'

gcc  -O1 -fno-omit-frame-pointer -fno-optimize-sibling-calls -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement  -D__XEN_TOOLS__ -MMD -MF .libxl.o.d  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -Werror -Wno-format-zero-length -Wmissing-declarations  -I. -fPIC -I../../tools/libxc -I../../tools/include -I../../tools/libxc -I../../tools/include -I../../tools/xenstore -I../../tools/include -I../../tools/blktap2/control -I../../tools/blktap2/include -I../../tools/include -c -o libxl.o libxl.c

cc1: warnings being treated as errors

libxl.c: In function ‘libxl_create_cpupool’:

libxl.c:3981: error: format not a string literal and no format arguments

libxl.c:3983: error: format not a string literal and no format arguments

libxl.c: In function ‘libxl_cpupool_movedomain’:

libxl.c:4095: error: format not a string literal and no format arguments

make[3]: *** [libxl.o] 오류 1

make[3]: Leaving directory `/data/iamroot/xen/setup/xen-unstable.hg/tools/libxl'

make[2]: *** [subdir-install-libxl] 오류 2

make[2]: Leaving directory `/data/iamroot/xen/setup/xen-unstable.hg/tools'

make[1]: *** [subdirs-install] 오류 2

make[1]: Leaving directory `/data/iamroot/xen/setup/xen-unstable.hg/tools'

make: *** [install-tools] 오류 2



위와 같이 libxl에서 에러가 발생하는 이유는 gcc 4.3이상 부터 가변인자로 형식으로 argument를 받을 때 char *변수를 통해 입력을 할 경우 이를 warning이 발생 되도록 바뀌었음.

xen에서는 빌드 시 옵션을 -Werror를 주므로 warning도 에러로 처리 해서 문제가 됨.

위의 빌드에러를 고치기 위해 소스를 수정 해야 한다.

<수정 전>
3980         libxl__xs_write(&gc, t, libxl__sprintf(&gc, "/local/pool/%d/uuid", *poolid),
3981                  uuid_string);
3982         libxl__xs_write(&gc, t, libxl__sprintf(&gc, "/local/pool/%d/name", *poolid),
3983                  name);


<수정 후>

3980         libxl__xs_write(&gc, t, libxl__sprintf(&gc, "/local/pool/%d/uuid", *poolid), "%s",
3981                  uuid_string);
3982         libxl__xs_write(&gc, t, libxl__sprintf(&gc, "/local/pool/%d/name", *poolid), "%s",
3983                  name);


<수정 전>

4095         libxl__xs_write(&gc, t, libxl__sprintf(&gc, "%s/pool_name", vm_path), poolname);


<수정 후>

4095         libxl__xs_write(&gc, t, libxl__sprintf(&gc, "%s/pool_name", vm_path), "%s", poolname);



위와 같이 수정 하시면 빌드 시 에러가 발생 안합니다.

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 하이퍼바이져 스터디 관련 Q&A 게시판 입니다. woos 2016.04.09 236
155 dom0 is now available in the linux upstream!! [1] 박은병 2011.01.18 5067
154 intel virtualization tech IDF 2010 [1] file 박은병 2011.01.08 3418
153 credit 관련 던랩 메일링 리스트 포스팅 문대혁 2011.01.08 15299
152 credit2 관련 자료 문대혁 2010.12.18 3990
151 Nested Virtualization [11] 박은병 2010.11.25 5502
» 20101023일자 xen 소스 빌드 중 toos/libxl/libxl.c의 에러 발생되는 문제 해결 법 [2] 이상철 2010.10.23 45976
149 stackvm 웹 인터페이스 지원 가상화 프로그램 [1] 문대혁 2010.10.21 4098
148 XEN Scheduler 비교 file 박은병 2010.10.09 6373
147 우리 이번주 어떻게 하기로 했나요? [6] 문대혁 2010.09.23 3018
146 p2m mapping 박은병 2010.09.14 3044
145 안녕하세요, 저번주 스터디에 처음 참여했던 김우중이라고 합니다. [4] 김우중 2010.09.09 3897
144 [6/26 스터디 여론 조사] [4] 박은병 2010.06.23 2605
143 [그리스전 스터디~~] 박은병 2010.06.11 2755
142 다들 수고하셨습니다..~~ [3] 박은병 2010.05.22 3085
141 make 한글 메뉴얼 주소 이상철 2010.05.08 4391
140 xen이 4.0이 release되었네요 [3] 박은병 2010.05.06 5397
139 가상화 conference [3] 장정숙 2010.04.30 3197
138 I/O Ring Buffer [3] 박은병 2010.04.27 4651
137 nested page table정리를 해봤습니다. [5] file 이상철 2010.04.20 3894
136 xen 책 소스 코드 다운로드 사이트 문대혁 2010.04.17 8269

XE Login