GNU bug report logs - #41872
emacs-irony-mode fails to build on LLVM 10

Previous Next

Package: guix;

Reported by: Jakub Kądziołka <kuba <at> kadziolka.net>

Date: Mon, 15 Jun 2020 15:42:01 UTC

Severity: normal

Full log


Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jakub Kądziołka <kuba <at> kadziolka.net>
To: bug-guix <at> gnu.org
Cc: ludo <at> gnu.org
Subject: emacs-irony-mode fails to build on LLVM 10
Date: Mon, 15 Jun 2020 17:41:11 +0200
[Message part 1 (text/plain, inline)]
I was trying to update the default LLVM.

========================================================================
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 11e4cfbe4c..b0e80507f4 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -527,10 +527,10 @@ output), and Binutils.")
   (make-clang-toolchain clang-9))

 ;; Default LLVM and Clang version.
-(define-public llvm llvm-9)
-(define-public clang-runtime clang-runtime-9)
-(define-public clang clang-9)
-(define-public clang-toolchain clang-toolchain-9)
+(define-public llvm llvm-10)
+(define-public clang-runtime clang-runtime-10)
+(define-public clang clang-10)
+(define-public clang-toolchain clang-toolchain-10)

 (define-public llvm-8
   (package
========================================================================

With the help of `guix refresh', I have identified all packages that
depended on LLVM 9 and will now potentially be using LLVM 10. Among
those is emacs-irony-mode-server, which fails to build with the
following error:

========================================================================
CMake Error at /gnu/store/4ml806jam2af7f8i8sg8xi7b4mw81x9g-clang-10.0.0/lib/cmake/clang/ClangTargets.cmake:627 (message):
  The imported target "clangApplyReplacements" references the file

     "/gnu/store/4ml806jam2af7f8i8sg8xi7b4mw81x9g-clang-10.0.0/lib/libclangApplyReplacements.a"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/gnu/store/4ml806jam2af7f8i8sg8xi7b4mw81x9g-clang-10.0.0/lib/cmake/clang/ClangTargets.cmake"

  but not all the files it references.

Call Stack (most recent call first):
  /gnu/store/4ml806jam2af7f8i8sg8xi7b4mw81x9g-clang-10.0.0/lib/cmake/clang/ClangConfig.cmake:18 (include)
  src/CMakeLists.txt:4 (find_package)


-- Configuring incomplete, errors occurred!
See also "/tmp/guix-build-emacs-irony-mode-server-1.4.0.drv-0/source/CMakeFiles/CMakeOutput.log".
command "cmake" "server" "-DCMAKE_INSTALL_PREFIX=/gnu/store/5clyjcgw8g9jhryhk8bhljg950ijmwm4-emacs-irony-mode-server-1.4.0" failed with status 1
builder for `/gnu/store/qiiqbbzpigs7lnywplbwjdsh4qc2ic94-emacs-irony-mode-server-1.4.0.drv' failed with exit code 1
========================================================================

The ClangTargets.cmake file for LLVM 10 gained ApplyReplacements in a
list of libraries provided by clang, but Guix removes these libraries:

========================================================================
;; Remove MiBs of .a files coming from
;; 'clang-tools-extra'.
(for-each (lambda (component)
            (delete-file
             (string-append lib "/libclang"
                            component ".a")))
          '("ApplyReplacements"
            "ChangeNamespace"
            "Daemon"
            "DaemonTweaks"
            "Doc"
            "IncludeFixer"
            "IncludeFixerPlugin"
            "Move"))
========================================================================

The code was introduced in this commit:

commit 77a87ad4aceed9d89d615540e0fd147e3a8b2f64
Author: Ludovic Courtès <ludo <at> gnu.org>
Date:   Thu May 28 11:46:59 2020 +0200

    gnu: clang: Build 'clang-tools-extra'.

    * gnu/packages/llvm.scm (clang-from-llvm): Add #:tools-extra.
    Add 'output' field.  In 'inputs', add TOOLS-EXTRA when it's given.
    In 'arguments', add 'add-tools-extra' and 'move-extra-tools' phases when
    TOOLS-EXTRA is given.

I don't know cmake nearly well enough to fix this.

Regards,
Jakub Kądziołka
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 4 years and 358 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.