chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] How do I build chicken for the MIPS arch?


From: Ivan Filgueiras
Subject: Re: [Chicken-users] How do I build chicken for the MIPS arch?
Date: Fri, 08 Feb 2013 15:58:42 -0200
User-agent: Opera Mail/12.13 (Linux)

On Fri, 08 Feb 2013 14:10:52 -0200, Mario Domenech Goulart <address@hidden> wrote:

Hi Ivan,

On Fri, 08 Feb 2013 13:01:32 -0200 "Ivan Filgueiras" <address@hidden> wrote:

New attempt:

...
mipsel-linux-uclibc-gcc  -L. chicken.o batch-driver.o compiler.o
optimizer.o compiler-syntax.o scrutinizer.o support.o c-platform.o
c-backend.o -o chicken \
          -lchicken -Wl,-R"." -lm -ldl
./libchicken.so: undefined reference to `_C_do_apply_hack'
./libchicken.so: undefined reference to `trunc'
collect2: ld returned 1 exit status


Looks like this error is related to the hack you guys were talking
about. How do I compile this C generic hack? I searched for something
like that in the code and failed.

Can you provide more information about the steps you executed (e.g.,
the commands you run to get that error)?


Best wishes.
Mario

Sure!

$ make ARCH= \
    PREFIX=/usr \
    PLATFORM=linux \
    HOSTSYSTEM=mipsel-linux-uclibc \
    DESTDIR=$HOME/.local/mipsel-linux-uclibc \
    TARGET_FEATURES="-no-feature x86 -feature mips"


make -f ./Makefile.linux CONFIG= clean
make[1]: Entering directory `/home/myuser/sources/chicken-4.8.0.1'
rm -f chicken csi csc \
          chicken-profile \
          chicken-install \
          chicken-uninstall \
          chicken-status \
          chicken-bug *.o \
          libchicken.so \
          libchicken.so \
          libchicken.a \
           \
chicken.import.so lolevel.import.so srfi-1.import.so srfi-4.import.so data-structures.import.so ports.import.so files.import.so posix.import.so srfi-13.import.so srfi-69.import.so extras.import.so srfi-14.import.so tcp.import.so foreign.import.so srfi-18.import.so utils.import.so csi.import.so irregex.import.so setup-api.import.so setup-download.import.so \ setup-api.so setup-download.so setup-api.import.so setup-download.import.so
rm -f libchicken.so.6
make[1]: Leaving directory `/home/myuser/sources/chicken-4.8.0.1'
address@hidden:~/sources/chicken-4.8.0.1$ vim build_mips.sh
address@hidden:~/sources/chicken-4.8.0.1$ PATH=/opt/crosstools_hf-linux-2.6.18.0_gcc-4.2-10ts_uclibc-nptl-0.9.29-20070423_20080721/bin:$PATH ./build_mips.sh
make -f ./Makefile.linux CONFIG= all
make[1]: Entering directory `/home/myuser/sources/chicken-4.8.0.1'
mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN library.c -o library-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN eval.c -o eval-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN data-structures.c -o data-structures-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN ports.c -o ports-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN files.c -o files-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN extras.c -o extras-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN lolevel.c -o lolevel-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN utils.c -o utils-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN tcp.c -o tcp-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN srfi-1.c -o srfi-1-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN srfi-4.c -o srfi-4-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN srfi-13.c -o srfi-13-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN srfi-14.c -o srfi-14-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN srfi-18.c -o srfi-18-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN srfi-69.c -o srfi-69-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN posixunix.c -o posixunix-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN irregex.c -o irregex-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN scheduler.c -o scheduler-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN profiler.c -o profiler-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN stub.c -o stub-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN expand.c -o expand-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN modules.c -o modules-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN chicken-syntax.c -o chicken-syntax-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN chicken-ffi-syntax.c -o chicken-ffi-syntax-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN build-version.c -o build-version-static.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -DC_BUILDING_LIBCHICKEN runtime.c -o runtime-static.o -I. -I./ mipsel-linux-uclibc-ar cru libchicken.a library-static.o eval-static.o data-structures-static.o ports-static.o files-static.o extras-static.o lolevel-static.o utils-static.o tcp-static.o srfi-1-static.o srfi-4-static.o srfi-13-static.o srfi-14-static.o srfi-18-static.o srfi-69-static.o posixunix-static.o irregex-static.o scheduler-static.o profiler-static.o stub-static.o expand-static.o modules-static.o chicken-syntax-static.o chicken-ffi-syntax-static.o build-version-static.o runtime-static.o mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN library.c -o library.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN eval.c -o eval.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN data-structures.c -o data-structures.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN ports.c -o ports.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN files.c -o files.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN extras.c -o extras.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN lolevel.c -o lolevel.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN utils.c -o utils.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN tcp.c -o tcp.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN srfi-1.c -o srfi-1.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN srfi-4.c -o srfi-4.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN srfi-13.c -o srfi-13.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN srfi-14.c -o srfi-14.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN srfi-18.c -o srfi-18.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN srfi-69.c -o srfi-69.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN posixunix.c -o posixunix.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN irregex.c -o irregex.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN scheduler.c -o scheduler.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN profiler.c -o profiler.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN stub.c -o stub.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN expand.c -o expand.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN modules.c -o modules.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN chicken-syntax.c -o chicken-syntax.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN chicken-ffi-syntax.c -o chicken-ffi-syntax.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN build-version.c -o build-version.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC -DC_BUILDING_LIBCHICKEN runtime.c -o runtime.o -I. -I./
mipsel-linux-uclibc-gcc  -shared -Wl,-soname,libchicken.so \
-o libchicken.so library.o eval.o data-structures.o ports.o files.o extras.o lolevel.o utils.o tcp.o srfi-1.o srfi-4.o srfi-13.o srfi-14.o srfi-18.o srfi-69.o posixunix.o irregex.o scheduler.o profiler.o stub.o expand.o modules.o chicken-syntax.o chicken-ffi-syntax.o build-version.o runtime.o -lm -ldl
ln -sf libchicken.so libchicken.so.6
mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC chicken.c -o chicken.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC batch-driver.c -o batch-driver.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC compiler.c -o compiler.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC optimizer.c -o optimizer.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC compiler-syntax.c -o compiler-syntax.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC scrutinizer.c -o scrutinizer.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC support.c -o support.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC c-platform.c -o c-platform.o -I. -I./ mipsel-linux-uclibc-gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c -Os -fomit-frame-pointer -fPIC -DPIC c-backend.c -o c-backend.o -I. -I./ mipsel-linux-uclibc-gcc -L. chicken.o batch-driver.o compiler.o optimizer.o compiler-syntax.o scrutinizer.o support.o c-platform.o c-backend.o -o chicken \
          -lchicken -Wl,-R"." -lm -ldl
./libchicken.so: undefined reference to `_C_do_apply_hack'
./libchicken.so: undefined reference to `trunc'
collect2: ld returned 1 exit status
make[1]: *** [chicken] Error 1
make[1]: Leaving directory `/home/myuser/sources/chicken-4.8.0.1'
make: *** [all] Error 2



reply via email to

[Prev in Thread] Current Thread [Next in Thread]