Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [embed-cdt-dev] Query regarding LLVM tool chain with Openocd

On 12/8/20 1:46 AM, Rahul Gupta wrote:
Thanks  Liviu for your valuable feedback..

Hi, Rahul --

As Liviu says, you are trying to bring together two entirely different compiling systems. LLVM is a really cool tool for doing new processor architectures. It's an even-lower-level virtual machine than a Java Virtual Machine. LLVM is (currently) used for two different compilers, CLANG (which compiles C++ and can emulate GCC) and Crystal, which is a compiled form of Ruby. I haven't heard of anybody successfully using GDB on CLANG, though its source code would be a good starting point, just as Eclipse and its Java source would be for an IDE.

All that said, this is not a trivial project. If this is an up-and-coming architecture like ESP32 (built on the Tensilica platform) or RISC-V you can try for support from the silicon guys but you don't want to take this on as a hobby project if there isn't a pot of gold in there somewhere.

The LLVM project has its own mailing lists and the FreeBSD OS project uses CLANG as its primary compiler, but neither has a large team or endless time and money. Those would be good places for you to ask for guidance on what to do next.

On Tue, Dec 8, 2020 at 1:56 PM Liviu Ionescu <ilg@xxxxxxxxxx> wrote:

> On 8 Dec 2020, at 09:10, Rahul Gupta <gupta5035@xxxxxxxxx> wrote:
> I need to add support for a new processor using the LLVM tool chain but in eclipse not able to find any plugin for LLVM tool chain.
> Please comment if you are aware if any LLVM tool chain plugin exists. 

My experience with LLVM in Eclipse is not great. There is some support in CDT, but I did not find it usable on my Mac, so I did not go very far.

> in eclipse with open ocd , in GDB client setup if i am using aarch64-none-elf-gdb.exe then i am able to proceed. If I am using lldb.exe which is part of LLVM tool chain to debug then I am getting an error in launching  "Could not determine GDB version after sending lldb.exe --version"  .

> Please comment how to resolve this issue.

This is something different. The Embedded CDT debug plug-ins are based on the GDB Hardware Debugging plug-ins, available in CDT. As the name implies, they are specific to gdb, and cannot be used with lldb.

I'm afraid at this moment I don't know of a proper solution for lldb. :-(

That's an added wrinkle. You are trying to use a Windows machine as a host for using an ARM debugger? The sources are available for LLVM and it has a relatively friendly license so if you did manage to get it to work your code would be unencumbered but again, this is non-trivial. Hope this helps, Rahul!
Don Wilde
* What is the Internet of Things but a system      *
* of systems including humans?                     *

Back to the top