[Voyage-linux] Build for Soekris 4501 using the Voyage 8.0 SDK ?
Jim Cromie
(spam-protected)
Thu Mar 8 11:30:45 HKT 2012
On Fri, Mar 2, 2012 at 5:53 AM, Ralph Hempel <rhempel at bmts.com> wrote:
> I am really liking the ability to have a Debian Linux running
> on my old 4501 hardware. No problem installing the basic
> install on a FLASH card on the 4501 except for the issue with the
> generic hda drivers that have been mentioned elsewhere.
>
> From there, I installed nfs-common from a regular Debian Mirror
> and it works great.
>
> Now, as a proof of concept, I am trying to build the Hiawatha Web
> server to run on the 4501
>
> <http://www.hiawatha-webserver.org>
>
> I build on the Voyage 8.0 SDK Live Install on a VirtualBox VM
> running on my desktop, and then install the result on the
> 4501, but I am running into a problem.
>
> Running Hiawatha on the Sokris 4501 causes an "Illegal Instruction".
>
> I am wondering if I need to set the CFLAGS on my instance
> of the Voyage SDK so that gcc emits the right code for the CPU
> on the 4501.
>
FWIW, I build kernels on a 32 bit laptop, w/o the SDK
(so some details differ), but the option you probably
want is "-m32"
heres the gory details (far more than you need)
gcc -Wp,-MD,kernel/.cgroup.o.d -nostdinc -isystem
/usr/lib/gcc/i686-linux-gnu/4.6.1/include
-I/home/jimc/projects/lx/linux-2.6/arch/x86/include
-Iarch/x86/include/generated -Iinclude
-I/home/jimc/projects/lx/linux-2.6/include -include
/home/jimc/projects/lx/linux-2.6/include/linux/kconfig.h
-I/home/jimc/projects/lx/linux-2.6/kernel -Ikernel -D__KERNEL__ -Wall
-Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -Werror-implicit-function-declaration -Wno-format-security
-fno-delete-null-pointer-checks -Os -m32 -msoft-float -mregparm=3
-freg-struct-return -mpreferred-stack-boundary=2 -march=pentium-mmx
-mtune=generic -maccumulate-outgoing-args -Wa,-mtune=generic32
-ffreestanding -fstack-protector -DCONFIG_AS_CFI=1
-DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -pipe
-Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx
-mno-sse2 -mno-3dnow -Wframe-larger-than=1024
-Wno-unused-but-set-variable -fno-omit-frame-pointer
-fno-optimize-sibling-calls -pg -Wdeclaration-after-statement
-Wno-pointer-sign -fno-strict-overflow -fconserve-stack
-DCC_HAVE_ASM_GOTO -D"KBUILD_STR(s)=#s"
-D"KBUILD_BASENAME=KBUILD_STR(cgroup)"
-D"KBUILD_MODNAME=KBUILD_STR(cgroup)" -c -o kernel/.tmp_cgroup.o
/home/jimc/projects/lx/linux-2.6/kernel/cgroup.c
you might also look at info gcc:
File: gcc-4.5.info, Node: i386 and x86-64 Options, Next: i386 and x86-64 Wind\
ows Options, Prev: HPPA Options, Up: Submodel Options
3.17.15 Intel 386 and AMD x86-64 Options
----------------------------------------
These `-m' options are defined for the i386 and x86-64 family of
computers:
`-mtune=CPU-TYPE'
Tune to CPU-TYPE everything applicable about the generated code,
except for the ABI and the set of available instructions. The
choices for CPU-TYPE are:
> Any hints or clues would be appreciated.
>
> Cheers, Ralph
>
please report back with your CFLAGS if it works.
thanks
More information about the Voyage-linux
mailing list