xen-users
[Xen-users] Re: [Xen-devel] Re: Xen 4.0.1 failed to compile on Ubuntu Na
AWESOME!
Thank both of you guys! Ian and Olaf!
The two patches together are needed continue the compilation process.
Attached to this mail, there is a new patch, which solves this problem.
diff -Nru xen-4.0.1/tools/blktap/drivers/blk_linux.c xen-4.0.1-patched/tools/blktap/drivers/blk_linux.c --- xen-4.0.1/tools/blktap/drivers/blk_linux.c 2010-08-25 07:22:07.000000000 -0300 +++ xen-4.0.1-patched/tools/blktap/drivers/blk_linux.c 2010-12-16 16:12:19.464504421 -0200
@@ -1,6 +1,6 @@ #include <inttypes.h> #include <sys/ioctl.h> -#include <linux/fs.h> +#include <sys/mount.h> #include "tapdisk.h" #include "blk.h"
diff -Nru xen-4.0.1/tools/blktap/drivers/Makefile xen-4.0.1-patched/tools/blktap/drivers/Makefile
--- xen-4.0.1/tools/blktap/drivers/Makefile 2010-08-25 07:22:07.000000000 -0300 +++ xen-4.0.1-patched/tools/blktap/drivers/Makefile 2010-12-16 16:10:18.884503912 -0200 @@ -29,8 +29,9 @@ MEMSHRLIBS += $(MEMSHR_DIR)/libmemshr.a
endif -LDFLAGS_blktapctrl := $(LDFLAGS_libxenctrl) $(LDFLAGS_libxenstore) $(MEMSHRLIBS) -L../lib -lblktap -lrt -lm -lpthread -LDFLAGS_img := $(LIBAIO_DIR)/libaio.a $(CRYPT_LIB) -lpthread -lz +LDFLAGS_xen := $(LDFLAGS_libxenctrl) $(LDFLAGS_libxenstore)
+LDFLAGS_blktapctrl := $(LDFLAGS_xen) $(MEMSHRLIBS) -L../lib -lblktap -lrt -lm -lpthread $(LDFLAGS_xen) +LDFLAGS_img := $(LIBAIO_DIR)/libaio.a $(CRYPT_LIB) -lpthread -lz $(LDFLAGS_xen) BLK-OBJS-y := block-aio.o
BLK-OBJS-y += block-sync.o diff -Nru xen-4.0.1/tools/blktap2/drivers/blk_linux.c xen-4.0.1-patched/tools/blktap2/drivers/blk_linux.c --- xen-4.0.1/tools/blktap2/drivers/blk_linux.c 2010-08-25 07:22:07.000000000 -0300
+++ xen-4.0.1-patched/tools/blktap2/drivers/blk_linux.c 2010-12-16 16:12:39.094504255 -0200 @@ -1,7 +1,7 @@ #include <inttypes.h> +#include <errno.h> #include <sys/ioctl.h> -#include <linux/fs.h>
-#include <linux/errno.h> +#include <sys/mount.h> #include "tapdisk.h" #include "blk.h"
But now, I'm facing another problem, check it out:
make[3]: Leaving directory `/usr/src/xen-4.0.1/tools/remus'
make[2]: Leaving directory `/usr/src/xen-4.0.1/tools' make[2]: Entering directory `/usr/src/xen-4.0.1/tools' make -C xenpaging install make[3]: Entering directory `/usr/src/xen-4.0.1/tools/xenpaging'
gcc -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .file_ops.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I ../../tools/python/xen/lowlevel/xc -I ./ -I../../tools/libxc -I../../tools/include -I../../tools/xenstore -I../../tools/include -Werror -Wno-unused -g -Wp,-MD,.file_ops.o.d -c -o file_ops.o file_ops.c
gcc -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .xc.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I ../../tools/python/xen/lowlevel/xc -I ./ -I../../tools/libxc -I../../tools/include -I../../tools/xenstore -I../../tools/include -Werror -Wno-unused -g -Wp,-MD,.xc.o.d -c -o xc.o xc.c
gcc -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .xenpaging.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I ../../tools/python/xen/lowlevel/xc -I ./ -I../../tools/libxc -I../../tools/include -I../../tools/xenstore -I../../tools/include -Werror -Wno-unused -g -Wp,-MD,.xenpaging.o.d -c -o xenpaging.o xenpaging.c
gcc -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .policy_default.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I ../../tools/python/xen/lowlevel/xc -I ./ -I../../tools/libxc -I../../tools/include -I../../tools/xenstore -I../../tools/include -Werror -Wno-unused -g -Wp,-MD,.policy_default.o.d -c -o policy_default.o policy_default.c
gcc -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .xenpaging.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I ../../tools/python/xen/lowlevel/xc -I ./ -I../../tools/libxc -I../../tools/include -I../../tools/xenstore -I../../tools/include -Werror -Wno-unused -g -Wp,-MD,.xenpaging.d -L../../tools/libxc -lxenctrl -L../../tools/xenstore -lxenstore -o xenpaging file_ops.o xc.o xenpaging.o policy_default.o
xc.o: In function `get_platform_info': /usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xg_save_restore.h:52: undefined reference to `xc_version' /usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xg_save_restore.h:55: undefined reference to `xc_version'
/usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xg_save_restore.h:58: undefined reference to `xc_memory_op' xc.o: In function `do_domctl': /usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xc_private.h:143: undefined reference to `hcall_buf_prep'
/usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xc_private.h:145: undefined reference to `safe_strerror' /usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xc_private.h:145: undefined reference to `xc_set_error'
/usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xc_private.h:154: undefined reference to `do_xen_hypercall' /usr/src/xen-4.0.1/tools/xenpaging/../../tools/libxc/xc_private.h:161: undefined reference to `hcall_buf_release'
xc.o: In function `xc_mem_paging_flush_ioemu_cache': /usr/src/xen-4.0.1/tools/xenpaging/xc.c:56: undefined reference to `xs_daemon_open' /usr/src/xen-4.0.1/tools/xenpaging/xc.c:60: undefined reference to `xs_write'
/usr/src/xen-4.0.1/tools/xenpaging/xc.c:62: undefined reference to `xs_daemon_close' xc.o: In function `xc_wait_for_event_or_timeout': /usr/src/xen-4.0.1/tools/xenpaging/xc.c:79: undefined reference to `xc_set_error'
/usr/src/xen-4.0.1/tools/xenpaging/xc.c:85: undefined reference to `xc_evtchn_pending' /usr/src/xen-4.0.1/tools/xenpaging/xc.c:92: undefined reference to `xc_evtchn_unmask' /usr/src/xen-4.0.1/tools/xenpaging/xc.c:95: undefined reference to `xc_set_error'
xenpaging.o: In function `xenpaging_init': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:81: undefined reference to `xc_interface_open' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:117: undefined reference to `xc_mem_event_enable'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:127: undefined reference to `xc_evtchn_open' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:135: undefined reference to `xc_evtchn_bind_interdomain' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:170: undefined reference to `xc_domain_getinfolist'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:174: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:158: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:122: undefined reference to `xc_set_error'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:185: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:84: undefined reference to `xc_set_error' xenpaging.o:/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:103: more undefined references to `xc_set_error' follow
xenpaging.o: In function `xenpaging_teardown': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:219: undefined reference to `xc_mem_event_disable' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:227: undefined reference to `xc_evtchn_unbind'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:236: undefined reference to `xc_evtchn_close' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:245: undefined reference to `xc_interface_close' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:222: undefined reference to `xc_set_error'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:230: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:239: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:248: undefined reference to `xc_set_error'
xenpaging.o: In function `xenpaging_evict_page': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:316: undefined reference to `xc_map_foreign_pages' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:339: undefined reference to `xc_mem_paging_evict'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:343: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:329: undefined reference to `xc_set_error' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:320: undefined reference to `xc_set_error'
xenpaging.o: In function `evict_victim': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:433: undefined reference to `xc_mem_paging_nominate' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:441: undefined reference to `xc_set_error'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:447: undefined reference to `xc_set_error' xenpaging.o: In function `xenpaging_resume_page': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:367: undefined reference to `xc_mem_paging_resume'
xenpaging.o: In function `xenpaging_populate_page': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:384: undefined reference to `xc_mem_paging_prep' /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:388: undefined reference to `xc_set_error'
xenpaging.o: In function `main': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:572: undefined reference to `xc_set_error' xenpaging.o: In function `xenpaging_populate_page': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:395: undefined reference to `xc_map_foreign_pages'
/usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:408: undefined reference to `xc_set_error' xenpaging.o: In function `main': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:613: undefined reference to `xc_set_error'
xenpaging.o: In function `xenpaging_populate_page': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:400: undefined reference to `xc_set_error' xenpaging.o: In function `main': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:499: undefined reference to `xc_set_error'
xenpaging.o: In function `xenpaging_resume_page': /usr/src/xen-4.0.1/tools/xenpaging/xenpaging.c:369: undefined reference to `xc_evtchn_notify' collect2: ld returned 1 exit status make[3]: *** [xenpaging] Error 1
make[3]: Leaving directory `/usr/src/xen-4.0.1/tools/xenpaging' make[2]: *** [subdir-install-xenpaging] Error 2 make[2]: Leaving directory `/usr/src/xen-4.0.1/tools' make[1]: *** [subdirs-install] Error 2
make[1]: Leaving directory `/usr/src/xen-4.0.1/tools' make: *** [install-tools] Error 2
Can you help me again?!
Best regards! Thiago
2010/12/16 Olaf Hering <olaf@xxxxxxxxx>
On Thu, Dec 16, Martinx - ジェームズ wrote:
> Ian,
>
> I chenge the files but, the error persist, check it out:
Try this patch, I sent a similar series once for xen-unstable.
Maybe its time to backport the LDFLAGS reordering for 4.0.2.
Olaf
--- xen-4.0.1-testing.orig/tools/blktap/drivers/Makefile
+++ xen-4.0.1-testing/tools/blktap/drivers/Makefile
@@ -28,8 +28,9 @@ CFLAGS += -DMEMSHR
MEMSHRLIBS += $(MEMSHR_DIR)/libmemshr.a
endif
-LDFLAGS_blktapctrl := $(LDFLAGS_libxenctrl) $(LDFLAGS_libxenstore) $(MEMSHRLIBS) -L../lib -lblktap -lrt -lm -lpthread
-LDFLAGS_img := $(LIBAIO_DIR)/libaio.a $(CRYPT_LIB) -lpthread -lz
+LDFLAGS_xen := $(LDFLAGS_libxenctrl) $(LDFLAGS_libxenstore)
+LDFLAGS_blktapctrl := $(LDFLAGS_xen) $(MEMSHRLIBS) -L../lib -lblktap -lrt -lm -lpthread $(LDFLAGS_xen)
+LDFLAGS_img := $(LIBAIO_DIR)/libaio.a $(CRYPT_LIB) -lpthread -lz $(LDFLAGS_xen)
BLK-OBJS-y := block-aio.o
BLK-OBJS-y += block-sync.o
xen-4.0.1-bkltaps.patch
Description: Text Data
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users
|
|
|