|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT/LIBLUA PATCH 0/3] support for the lua language
Hi Justin,
On 04.09.19, 14:44, "Jia He" <jiakernel2@xxxxxxxxx> wrote:
Hi Felipe,
Sorry for using gmail box, our outlook filtered your replies.
Please see inline
On 2019/9/3 21:15, Felipe Huici wrote:
> Hi Justin, please see inline.
>
> On 02.09.19, 06:58, "Justin He (Arm Technology China)"
<Justin.He@xxxxxxx> wrote:
>
> Hi Felipe
> Besides, I found another 2 issues:
> 1. some head files are missing after fetching the liblua src codes
> root@jong:~/hj/UK/apps/helloworld# ll
/root/hj/UK/apps/helloworld/build/liblua/include/
> total 28
> drwxr-xr-x 2 root root 4096 9月 2 12:52 ./
> drwxr-xr-x 4 root root 4096 9月 2 12:53 ../
> lrwxrwxrwx 1 root root 71 9月 2 12:52 lauxlib.h ->
/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/lauxlib.h
> lrwxrwxrwx 1 root root 71 9月 2 12:52 luaconf.h ->
/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/luaconf.h
> lrwxrwxrwx 1 root root 67 9月 2 12:52 lua.h ->
/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/lua.h
> lrwxrwxrwx 1 root root 69 9月 2 12:52 lua.hpp ->
/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/lua.hpp
> lrwxrwxrwx 1 root root 70 9月 2 12:52 lualib.h ->
/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/lualib.h
> root@jong:~/hj/UK/apps/helloworld# ll
/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/lauxlib.h
> ls: cannot access
'/root/hj/UK/apps/helloworld/build/liblua/origin/lua-5.3.5/src/lauxlib.h': No
such file or directory
> root@jong:~/hj/UK/apps/helloworld#
>
> I guess something wrong in Makefile.uk
> # TO_INC
> UK_PREPARE += $(LIBLUA_BUILD)/include/lua.h
> UK_PREPARE += $(LIBLUA_BUILD)/include/luaconf.h
> UK_PREPARE += $(LIBLUA_BUILD)/include/lualib.h
> UK_PREPARE += $(LIBLUA_BUILD)/include/lauxlib.h
> UK_PREPARE += $(LIBLUA_BUILD)/include/lua.hpp
>
> This is actually a problem of the build system, we're currently working
on it. As a workaround, in your app's Makefile please put:
>
> all:
> @make -C $(UK_ROOT) A=$(PWD) L=$(LIBS) fetch
> @make -C $(UK_ROOT) A=$(PWD) L=$(LIBS) prepare
> @make -C $(UK_ROOT) A=$(PWD) L=$(LIBS)
>
> This will make sure the prepare step runs before the actual make, which
is what's causing the error.
>
>
> 2. seems liblua can't be built with nolibc enabled, no signal.h is
found
>
> Yes, one of the commits says it, this library can't build against noblic
(at least for now), it requires newlib.
How about make it explictly depends on newlib? instead of "select LIBNOLIBC
if
!HAVE_LIBC“
Yes, makes sense, will do.
-- Felipe
>
> 3, with newlib enabled, the helloworld app (almost dummy main())
can't
> be linked:
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `__collate_err':
> sglist.c:(.text+0x788d): undefined reference to `write'
> sglist.c:(.text+0x78a5): undefined reference to `write'
> sglist.c:(.text+0x78bb): undefined reference to `write'
> sglist.c:(.text+0x78ee): undefined reference to `write'
> sglist.c:(.text+0x7904): undefined reference to `write'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_close_r':
> sglist.c:(.text+0xf219): undefined reference to `close'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_fstat_r':
> sglist.c:(.text+0xf3bc): undefined reference to `fstat'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_mkdir_r':
> sglist.c:(.text+0xf50c): undefined reference to `mkdir'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_open_r':
> sglist.c:(.text+0xf550): undefined reference to `open'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_read_r':
> sglist.c:(.text+0xf58f): undefined reference to `read'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_stat_r':
> sglist.c:(.text+0xf67d): undefined reference to `stat'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_unlink_r':
> sglist.c:(.text+0xf6ca): undefined reference to `unlink'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `_write_r':
> sglist.c:(.text+0xf70f): undefined reference to `write'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `flush_meta':
> hash.c:(.text+0x1040c): undefined reference to `write'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `hdestroy':
> hash.c:(.text+0x105ad): undefined reference to `close'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `__hash_open':
> sglist.c:(.text+0x10f28): undefined reference to `stat'
> sglist.c:(.text+0x10f62): undefined reference to `open'
> sglist.c:(.text+0x10f9a): undefined reference to `fstat'
> sglist.c:(.text+0x1104b): undefined reference to `stat'
> sglist.c:(.text+0x11206): undefined reference to `read'
> sglist.c:(.text+0x1169d): undefined reference to `close'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `__get_page':
> sglist.c:(.text+0x1304e): undefined reference to `read'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `__put_page':
> sglist.c:(.text+0x132ae): undefined reference to `unlink'
> sglist.c:(.text+0x133fa): undefined reference to `write'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `__add_ovflpage':
> sglist.c:(.text+0x136ab): undefined reference to `write'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `pmain':
> lua.c:(.text+0x67a97): undefined reference to
`ukplat_memregion_find_initrd0'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `luaD_throw':
> linit.c:(.text+0x6cbd0): undefined reference to `longjmp'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `luaD_rawrunprotected':
> linit.c:(.text+0x6cdce): undefined reference to `setjmp'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `os_execute':
> loslib.c:(.text+0x82f0f): undefined reference to `system'
> /root/hj/UK/apps/helloworld/build/helloworld_kvm-x86_64.o: In
function `main':
> sglist.c:(.text.startup+0x77): undefined reference to `luaL_openlibs'
> sglist.c:(.text.startup+0xc8): undefined reference to
`luaL_loadbufferx'
>
> This is strange. Most of the symbols are newlib ones, did you do a
properclean; make and you still get these errors? I ask becase I have all of
those symbols in my final image...
I will double check it
---
Cheers,
Justin (Jia He)
_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel
_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |