Tuesday, June 18, 2013
Launching sfk-linux aborts with "Resetting soft kernel" error
Q: Launching an sfk-linux for the first time on Ubuntu, and getting this error:
Welcome to RTOSE; an OSE reference system.
Type 'help' for a list of available commands.rtose@softlin> Resetting soft kernel!
Aborted
Type 'help' for a list of available commands.rtose@softlin> Resetting soft kernel!
Aborted
A: There are several causes, but the first thing to check is ramlog.mem. You may find, especially in the case of using VMs, that the surfer aborts ungracefully:
SEH: Information about current process "ose_surfer"
SEH: Pid 0x0001003c bid 0x00010008 progpid 0x00000000
SEH: File & line: surfer.c 7072
SEH: Extra text: "ose_surfer error: bind failed (errno: 13 file: ../../modules/surfer/src/surfer.c line:7723)"
SEH: Pid 0x0001003c bid 0x00010008 progpid 0x00000000
SEH: File & line: surfer.c 7072
SEH: Extra text: "ose_surfer error: bind failed (errno: 13 file: ../../modules/surfer/src/surfer.c line:7723)"
Just comment out the "surfer" references in rtose5.conf to get around this for now; you can also remove the module manually from rtose.mk with an "override -= surfer" entry. Then "make clean cleanall cleanobj" and rebuild.
The next problem is that you're probably not user "root." There is a long-standing anomoly that the Linux soft kernel requires the user to be running as "root". If you're not logged in as root, e.g. you're using Ubuntu or other quick-use Linux distros that don't set up a root account, run the soft kernel with sudo:
jmir@ubuntu:~/OSE/BSP_SFK_OSE5.5.1/refsys/rtose/sfk-linux$ sudo ./obj/rtose_debug/rtose -c rtose5.conf
This should be enough to get your soft kernel going.
RTOSE(debug) for sfk-1 built 130618 12:06 by jmir
Copyright 2003-2010 Enea Embedded Technology AB. All rights reserved.
Copyright 2003-2010 Enea Embedded Technology AB. All rights reserved.
Changing directory to /host//home/jmir/OSE/BSP_SFK_OSE5.5.1/refsys/rtose/sfk-linux
Welcome to RTOSE; an OSE reference system.
Type 'help' for a list of available commands.
rtose@softlin
Type 'help' for a list of available commands.
rtose@softlin
Labels: Linux, rtose, sfk-linux, surfer
Friday, November 07, 2008
Building BSPs delivered with OSE5.3 and beyond
Q: I installed my new BSP in the correct place (i.e. same level as OSE5.3), but get a compile error for gcc - even though I know that it's there. I'm building from the new refsys/rtose/myhardware directory, and not using the old OSE5.3 refsys. What did I do wrong?
> C:/OSE/BSP_WALNUT_OSE5.3/refsys/rtose
$ make all
echo "--- Building RTOSE for walnut"
--- Building RTOSE for walnut
make -C walnut --unix WARNINGS=no all
make[1]: Entering directory `/cygdrive/c/OSE/OSE5.3/BSP_WALNUT_OSE5.3/refsys/rtose/walnut'
--- Making modules/corecmds
--- Compiling src/cmd_pool.c
../../../gcc_win32_powerpc_3.4.4/bin/powerpc-eabi-gcc: not found
make[3]: *** [obj/powerpc/debug/cmd_pool.o] Error 127
make[2]: *** [corecmds] Error 2
make[1]: *** [mods] Error 2
make[1]: Leaving directory `/cygdrive/c/OSE/BSP_WALNUT_OSE5.3/refsys/rtose/walnut'
make: *** [walnut] Error 2
A: You have a make a slight mod in
OSE/BSP_WALNUT_OSE5.3/refsys/environment.mk
Change
OSEROOT ?= ../../..
to
OSEROOT ?= ../../../../ose5.3
And "make all" in the new BSP rtose should work after that.
> C:/OSE/BSP_WALNUT_OSE5.3/refsys/rtose
$ make all
echo "--- Building RTOSE for walnut"
--- Building RTOSE for walnut
make -C walnut --unix WARNINGS=no all
make[1]: Entering directory `/cygdrive/c/OSE/OSE5.3/BSP_WALNUT_OSE5.3/refsys/rtose/walnut'
--- Making modules/corecmds
--- Compiling src/cmd_pool.c
../../../gcc_win32_powerpc_3.4.4/bin/powerpc-eabi-gcc: not found
make[3]: *** [obj/powerpc/debug/cmd_pool.o] Error 127
make[2]: *** [corecmds] Error 2
make[1]: *** [mods] Error 2
make[1]: Leaving directory `/cygdrive/c/OSE/BSP_WALNUT_OSE5.3/refsys/rtose/walnut'
make: *** [walnut] Error 2
A: You have a make a slight mod in
OSE/BSP_WALNUT_OSE5.3/refsys/environment.mk
Change
OSEROOT ?= ../../..
to
OSEROOT ?= ../../../../ose5.3
And "make all" in the new BSP rtose should work after that.
free invisible web counter

