kper wrote:
Thank you for detailed explanations and sorry for the delay.
I needed almost a week to fix the cross compiling for the lldb-server. FYI, it
wanted to link the X86's libxml2 with RISCV which didn't work. Also the CMake
flag for disabling libxml2 didn't work for me.
I deinstalled the dependency and then it worked but it took a week.
I think, I've got the setup now. But I am still struggling to test this
particular test.
How far I have got:
(RISCV lldb-server)
```
cmake -S llvm -B build -G Ninja \
-DCMAKE_BUILD_TYPE=MinSizeRel \
-DLLVM_ENABLE_PROJECTS="clang;lld;lldb" \
-DCMAKE_SYSTEM_NAME=Linux \
-DCMAKE_SYSTEM_PROCESSOR=RISCV \
-DCMAKE_C_COMPILER=riscv64-linux-gnu-gcc \
-DCMAKE_CXX_COMPILER=riscv64-linux-gnu-g++ \
-DLLVM_HOST_TRIPLE=riscv64-unknown-linux-gnu \
-DLLVM_ENABLE_LIBXML2=0 \
-DLLVM_ENABLE_TERMINFO=0 \
-DLLDB_ENABLE_PYTHON=0 \
-DLLDB_ENABLE_LIBEDIT=0 \
-DLLDB_ENABLE_CURSES=0
```
(X86 lldb)
```
cmake -S llvm -B build -G Ninja -DCMAKE_BUILD_TYPE=MinSizeRel
-DLLVM_ENABLE_PROJECTS="lldb;clang;lld" -DLLVM_CCACHE_BUILD=1
-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache
-DLLVM_TARGETS_TO_BUILD="X86" -DLLDB_ENABLE_PYTHON=ON
```
(Qemu)
You would need a debian image setup for that.
```
qemu-system-riscv64 \
-machine virt \
-cpu rv64 \
-m 2G \
-device virtio-blk-device,drive=hd \
-drive file=overlay.qcow2,if=none,id=hd \
-device virtio-net-device,netdev=net \
-netdev
user,id=net,hostfwd=tcp::2222-:22,hostfwd=tcp::9999-:9999,hostfwd=tcp::10000-:10000
\
-bios /usr/lib/riscv64-linux-gnu/opensbi/generic/fw_jump.elf \
-kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf \
-object rng-random,filename=/dev/urandom,id=rng \
-device virtio-rng-device,rng=rng \
-append "root=LABEL=rootfs console=ttyS0" \
-nographic \
-drive file=persistent_disk.qcow2,if=none,id=hd1 \
-device virtio-blk-device,drive=hd1
```
In the Qemu guest, I run the following command. I also receive "Connection
established" so networking seems to work.
```
./lldb-server platform --server --listen 0.0.0.0:9999 --gdbserver 10000
```
(On the host X86)
```
./lldb-dotest --platform-name remote-linux --arch riscv --arch riscv64
--compiler riscv64-linux-gnu-gcc --platform-url connect://localhost:9999 -p
riscv64-gp-read
```
The last piece of the puzzle is not working for me because it tells me that
there are no matching tests. Could you tell me how to do this?
https://github.com/llvm/llvm-project/pull/124475
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits