Is this thing on? Cross-compiling for ARM

Erik Winkels aerique at xs4all.nl
Sun Dec 30 19:03:08 UTC 2018


Hi all,

Not sure if this is still the place to be for ECL questions but here it 
goes:

I'm having issues cross-compiling ECL for ARM and since this is actually 
the first time I'm cross-compiling stuff ever I'm kinda stuck.

I want to cross-compile for ARM, *but* it is not for Android it is for 
Sailfish OS.  There's an (unofficial) ECL package available for it but I 
cannot find a way to contact the author and also don't want to depend on 
it.

On my Void Linux machine I've installed `cross-arm-linux-gnueabi` and 
can do a `./configure --host=arm-linux-gnueabi` but when I do `make` I 
get the following errors:

```
dpp: /home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d -> 
list.o.c

Unknown symbol: mp::compare-and-swap-car

Unknown symbol: mp::atomic-incf-car

Unknown symbol: mp::compare-and-swap-cdr

Unknown symbol: mp::atomic-incf-cdr
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d: In 
function 'mp_compare_and_swap_car':
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d:670:26: 
error: 'unknown' undeclared (first use in this function)
    return ecl_compare_and_swap(&ECL_CONS_CAR(x), old, new);
                           ^~~~~~~
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d:670:26: 
note: each undeclared identifier is reported only once for each function 
it appears in
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d: In 
function 'mp_atomic_incf_car':
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d:678:26: 
error: 'unknown' undeclared (first use in this function)
    return ecl_atomic_incf(&ECL_CONS_CAR(x), increment);
                           ^~~~~~~
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d: In 
function 'mp_compare_and_swap_cdr':
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d:686:26: 
error: 'unknown' undeclared (first use in this function)
    return ecl_compare_and_swap(&ECL_CONS_CDR(x), old, new);
                           ^~~~~~~
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d: In 
function 'mp_atomic_incf_cdr':
/home/brainrot/projects/eclrepl/3rd-party/ecl-git/src/c/list.d:694:26: 
error: 'unknown' undeclared (first use in this function)
    return ecl_atomic_incf(&ECL_CONS_CDR(x), increment);
                           ^~~~~~~
make[2]: *** [Makefile:88: list.o] Error 1
make[2]: Leaving directory 
'/home/brainrot/projects/eclrepl/3rd-party/ecl-git/build/c'
make[1]: *** [Makefile:144: libeclmin.a] Error 2
make[1]: Leaving directory 
'/home/brainrot/projects/eclrepl/3rd-party/ecl-git/build'
make: *** [Makefile:72: all] Error 2
```

I get the feeling I'm forgetting some necessary steps.

Thanks,
Erik



More information about the ecl-devel mailing list