On Wed, Dec 3, 2014 at 1:33 AM, Antti Kantee <[email protected]> wrote:
> On 03/12/14 01:15, Andy Ray wrote:
>>>
>>> It should more or less work on any compiler that targets the right ISA.
>>> Just set CC (and optionally AR/NM/OBJCOPY) in the env when you run
>>> buildrump.sh.
>>>
>>> If it doesn't work, let us know ;)
>>
>>
>>
>> I didn't have a lot of luck with the linux cross compiler
>> (arm-none-eabi-).  They were failing during buildrump with pointer
>> mismatch errors in drivers related to devmajor(minor)_t / int.
>
>
> That shouldn't happen (unless maybe you left out -k to buildrump.sh, which
> you shouldn't in this case).  The rump kernel type system is self-contained
> (apart from some minor ridiculousness with printf leaking through from the
> compiler ... don't ask)
>
> Can you post the exact command line?  Also post the exact error.
>

(with all of CC, AR, NM and OBJCOPY set)

$ ./buildrump.sh -s ../src-netbsd-arm -V MKPIC=no -V
RUMP_KERNEL_IS_LIBC=1 -k -N kernelheaders fullbuild
[...]
#    create  rumpkern/subr_extent.d
CC=/home/andyman/dev/github/forks/rumpkernel/buildrump.sh-arm/obj/tooldir/bin/arm--netbsdelf-eabi-gcc
/home/andyman/dev/github/forks/rumpkernel/buildrump.sh-arm/obj/tooldir/bin/nbmkdep
-f subr_extent.d.tmp  --  \
    -std=gnu99  \
    
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../include
 
-I/home/andyman/dev/github/forks/rumpkernel/buildrump.sh-arm/obj/tooldir/compat/include
-D__NetBSD__ 
-I/home/andyman/dev/github/forks/rumpkernel/buildrump.sh-arm/obj/dest.stage/usr/include
-D_RUMPKERNEL 
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../librump/rumpkern
-DMAXUSERS=32 -DCOMPAT_50=1 -DCOMPAT_60=1 -nostdinc -D_KERNEL
-DMULTIPROCESSOR
-D_MI/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern
-I. 
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../../common/include
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../include
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../librump/rumpkern/opt
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../arch
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../..
-DDIAGNOSTIC -DKTRACE -D__NetBSD__  -DRUMP_KERNEL_IS_LIBC
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../librump/rumpkern
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../librump/rumpvfs
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../librump/rumpnet
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../librump/rumpdev
-DARCH_ELFSIZE=32
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../lib/libkern/arch/arm
  
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../lib/libkern/../../../common/lib/libc/quad
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../lib/libkern/../../../common/lib/libc/string
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../lib/libkern/../../../common/lib/libc/arch/arm/string
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../lib/libkern/../../../common/include
-I/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../../common/lib/libc/atomic
   \
     
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/librump/rumpkern/../../../kern/subr_extent.c
&& \
    mv subr_extent.d.tmp subr_extent.d
--- dependall-dev ---
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../dev/cgd.c:
In function 'cgd_modcmd':
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../dev/cgd.c:1028:7:
error: passing argument 3 of 'devsw_attach' from incompatible pointer
type [-Werror]
       &cgd_cdevsw, &cmajor);
       ^
In file included from
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../dev/cgd.c:52:0:
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../sys/conf.h:104:5:
note: expected '__devmajor_t *' but argument is of type 'int *'
 int devsw_attach(const char *, const struct bdevsw *, devmajor_t *,
     ^
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../dev/cgd.c:1028:7:
error: passing argument 5 of 'devsw_attach' from incompatible pointer
type [-Werror]
       &cgd_cdevsw, &cmajor);
       ^
In file included from
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../dev/cgd.c:52:0:
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd/../../../../sys/conf.h:104:5:
note: expected '__devmajor_t *' but argument is of type 'int *'
 int devsw_attach(const char *, const struct bdevsw *, devmajor_t *,
     ^
cc1: all warnings being treated as errors
*** [cgd.o] Error code 1

nbmake[5]: stopped in
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd
1 error

nbmake[5]: stopped in
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd
*** [dependall] Error code 2

nbmake[4]: stopped in
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd
1 error

nbmake[4]: stopped in
/home/andyman/dev/github/forks/rumpkernel/src-netbsd-arm/sys/rump/dev/lib/libcgd
*** [dependall-libcgd] Error code 2




>
> Another trick you can use to proceed is just ignore the whole of userspace
> for now.  There's probably a few bits to keep you busy for a day with
> getting rump_init() finishing on ARM, so just run make in rumpuser-baremetal
> with as "make RUMPRUN_PRESENT=no"
>
> Sorry that things weren't quite as simple as advertised ...



Good idea.  I'll give that a go tomorrow.

Cheers,
Andy

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk
_______________________________________________
rumpkernel-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rumpkernel-users

Reply via email to