rich

Forum Replies Created

Viewing 15 posts - 31 through 45 (of 68 total)
  • Author
    Posts
  • in reply to: Downloadable demo #24228

    rich
    Keymaster
    in reply to: ELLCC on Xilinx Zynq #23513

    rich
    Keymaster

    Hi Robert,

    It’s good to hear that the tools are working on the Zynq. It makes me want to whip the Microblaze code generator into better shape.
    If you run into any problems, don’t hesitate to contact me.

    -Rich

    in reply to: ELLCC for bare-metal ARM Core-M3 on Windows #23295

    rich
    Keymaster

    Hi Maurizio,

    I haven’t finished the bare-metal support for the M3 yet. I’m hoping to get it done, or at least usable by the end of the weekend.

    -Rich

    in reply to: ELLCC for bare-metal PowerPC #23264

    rich
    Keymaster

    Hi Anthony,

    Bare metal programming is not fully supported for PowerPC yet. I’m working on the ARM first as a prototype, and plan to port to other targets afterward. I have been building the ELK library for all targets as I’m doing the ELK work, which is why ppc-linux-eng exists. Having said that, the main thing that keeps any of the targets from working is an implementation of crt1.S specific to the target. Of course if you want MMU support, etc. additional work is needed.

    -Rich

    in reply to: Using ELLCC with eclipse #23259

    rich
    Keymaster

    Hi Robert,

    ELLCC doesn’t have Eclipse integration currently, but it would be cool to have. Currently I use ecc-gdb to debug in either command line or tui mode.

    -Rich

    in reply to: ELLCC for bare-metal ARM Core-M3 on Windows #23255

    rich
    Keymaster

    Hi Maurizio,

    Version 0.1.10 has preliminary Cortex-M support. Any feedback appreciated.

    -Rich

    in reply to: ELLCC for bare-metal ARM Core-M3 on Windows #23170

    rich
    Keymaster

    Hi Maurizio,

    A quick status update. I’m working on the Cortex-M3 in my spare time. Here’s what I have so far. I created a config file called thumb-linux-engeabi (in ellcc/libecc/config):

    based_on: arm-ellcc-linux
    compiler:
      options:
        - -target arm-ellcc-linux
        - -mthumb
        - -mcpu=cortex-m3
        - -mfpu=none
        - -mfloat-abi=softfp
    linker:
      static_crt1: $R/lib/thumb-linux-engeabi/crt1.o
      dynamic_crt1: $R/lib/thumb-linux-engeabi/Scrt1.o
      crtbegin: $R/lib/thumb-linux-engeabi/crtbegin.o
      crtend: $R/lib/thumb-linux-engeabi/crtend.o
      library_paths:
        - -L$R/lib/thumb-linux-engeabi

    I modified ellcc/libecc/src/musl/configure by adding the following line:
    thumb*) ARCH=arm ;;

    Then in the ellcc/libecc directory, I can try to make the C library:
    make thumb-linux-engeabi
    If I disable building assembly language files, all the C files compile. Now it is a matter of modifying the assembly code to be thumb compatible.
    I plan to use this Linux library for testing, and then add support for standalone ELK.

    -Rich

    in reply to: ELLCC for bare-metal ARM Core-M3 on Windows #23135

    rich
    Keymaster

    Hi Maurizio,

    I’d also like to see Cortex-M3 supported by ELLCC. Could you post an example of what you’re trying to compile? I’ll take a look to see how we can start folding at least some bare metal functionality in for Cortex-M. It is probably just a matter of creating the appropriate config file.

    -Rich

    in reply to: Using ELLCC for armv4 targets #17352

    rich
    Keymaster

    Hi Teis,

    If you have a recent copy of the sources from within the last few weeks, you can set up another library build pretty easily.

    Go into the libecc/configure directory and copy one of the existing arm config files to one like “armv4-linux-engeabi”. Modify the file’s compiler “-march” option and library_paths, then go to the libecc directory and type “make armv4-linux-engeabi”.

    I have never done this so I’m not sure how well clang/LLVM supports armv4, but it should work.

    -Rich

    • This reply was modified 9 years, 6 months ago by  rich. Reason: Add tags
    in reply to: Latest Release fails to build #4450

    rich
    Keymaster

    Hi Marty,

    It is hard for me to figure your problem out without seeing config.log. Could you send it to me at rich@pennware.com? Thanks.

    -Rich

    in reply to: What is the -E flag ?? #4406

    rich
    Keymaster

    Marty,

    What’s a good question. I’m not sure why you are having the header file problems. Very strange. You should not have to copy any .h files anywhere if you have the right packages installed. The question is “What are the right packages?”. 🙁

    You don’t have to deal with building ELLCC at all if you don’t want to. I have pre-built binaries available for several Linux hosts at ftp://ellcc.org/pub

    Make sure to download the x86_64 host version. 😉

    -Rich

    in reply to: What is the -E flag ?? #4403

    rich
    Keymaster

    Hi Marty,

    OK. That makes sense. If you build ecc for an x86_64, it is already a cross compiler. For example:

    [~] dev% ~/ellcc/bin/ecc -target x86_64-ellcc-linux hello.c -o hello
    [~] dev% file hello
    hello: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=ca1d061508ddf0c5796f43abde11936f368d61b2, not stripped
    [~] dev% ~/ellcc/bin/ecc -target arm-ellcc-linux hello.c -o hello
    [~] dev% file hello
    hello: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, BuildID[sha1]=5f01f7679ad701b8b128b94b0a97a8131617aba7, not stripped
    [~] dev% 
    

    Notice that the first hello is for the x86_64 and will run on the host. The second hello will only run on an ARM based system.

    In other words, unlike gcc, ecc (and clang/LLVM) support multiple target processors with one host executable. Very convenient.

    When you try to do
    ./build arm
    what you are doing is building the whole ELLCC package (ecc, and everything else) to run on an ARM target.

    -Rich

    in reply to: What is the -E flag ?? #4399

    rich
    Keymaster

    Hi Marty,

    Back up a bit. How did you end up fixing the missing stddef,h file problem? It looks as if you are still running into header file issues.

    -Rich

    in reply to: What is the -E flag ?? #4396

    rich
    Keymaster

    Hi Marty,

    When you say “build for ARM” you mean you want to build ELLCC to run on ARM Linux, right? I’m not exactly sure what you’re trying to do.

    If you are just trying to cross-compile for ARM, then
    ecc -target arm-ellcc-linux-eabi -o echo echo.c
    should work.

    -Rich

    in reply to: does not include stddef.h #4385

    rich
    Keymaster

    Hi Marty,

    All questions are welcome. Just ask!

    -Rich

Viewing 15 posts - 31 through 45 (of 68 total)