Package: liblld-16-dev
Version: 1:16.0.6-10
Severity: normal

WasmEdge 0.13.3+dfsg-1 currently FTBFS on Ubuntu, but not Debian. It
build-depends on liblld-dev, which apparently defaults to 16 in Ubuntu,
but 14 (still) in Debian.

An example build log is:
https://launchpadlibrarian.net/681416533/buildlog_ubuntu-mantic-amd64.wasmedge_0.13.3+dfsg-1_BUILDING.txt.gz

The relevant snippet seems to be:
    -- Found assembler: /usr/bin/as
    -- Configuring done (3.1s)
    CMake Error at /usr/lib/llvm-16/lib/cmake/lld/LLDTargets.cmake:88 
(set_target_properties):
      The link interface of target "lldELF" contains:
    
        zstd::libzstd_shared
    
      but the target was not found.  Possible reasons include:
    
        * There is a typo in the target name.
        * A find_package call is missing for an IMPORTED target.
        * An ALIAS target is missing.
    
    Call Stack (most recent call first):
      /usr/lib/llvm-16/lib/cmake/lld/LLDConfig.cmake:19 (include)
      lib/aot/CMakeLists.txt:11 (find_package)

I think that's because of this:
    $ grep -B 1 zstd /usr/lib/llvm-16/lib/cmake/lld/LLDTargets.cmake
    set_target_properties(lldELF PROPERTIES
      INTERFACE_LINK_LIBRARIES "lldCommon;ZLIB::ZLIB;zstd::libzstd_shared;LLVM"

While on 14:
    $ grep -A 1 "lldELF PROPERTIES" 
/usr/lib/llvm-14/lib/cmake/lld/LLDTargets.cmake 
    set_target_properties(lldELF PROPERTIES
      INTERFACE_LINK_LIBRARIES "lldCommon;ZLIB::ZLIB;LLVM"

I guess liblld-X-dev X >= 16 should depend on libzstd-dev, and while at
it, liblld-Y-dev Y >= 14 should depend on zlib1g-dev?

Thanks!
Faidon

Reply via email to