[bug#70967] Attempt to upgrade kicad to 8.0.2

Message ID a424b716b8b5570c2b290d01653646884f8ca5ac.1715796821.git.peter@polidoro.io
State New
Headers
Series [bug#70967] Attempt to upgrade kicad to 8.0.2 |

Commit Message

Peter Polidoro May 15, 2024, 6:16 p.m. UTC
From: Peter Polidoro <peter@polidoro.io>

---
 gnu/packages/engineering.scm | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)


base-commit: 28ce5085a0a4191c27aecdc085600acf585b607c
  

Comments

Peter Polidoro May 15, 2024, 6:23 p.m. UTC | #1
I am running into an error when attempting to update kicad to 
version 8:

CMake Error at 
/gnu/store/gl26kr5v6ch5lc3ignly61kb224drijc-cmake-minimal-3.24.2/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 
(message): 
  Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY)

I am not sure why CMake is having trouble finding OpenGL since 
mesa is still listed as an input to the kicad package.

I tried various configure-flags based on the new kicad 
documentation and added some inputs that now may or may not be 
needed for the latest version, but I could not get past this CMake 
error.

Does anyone have any ideas for how else I can get kicad version 8 to compile? Thanks!
  
Vinicius Monego May 15, 2024, 9:12 p.m. UTC | #2
Hi,

Em qua, 2024-05-15 às 14:23 -0400, Peter Polidoro escreveu:
> I am running into an error when attempting to update kicad to 
> version 8:
> 
> CMake Error at 
> /gnu/store/gl26kr5v6ch5lc3ignly61kb224drijc-cmake-minimal-
> 3.24.2/share/cmake-
> 3.24/Modules/FindPackageHandleStandardArgs.cmake:230 
> (message): 
>   Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY)
> 
> I am not sure why CMake is having trouble finding OpenGL since 
> mesa is still listed as an input to the kicad package.
> 
> I tried various configure-flags based on the new kicad 
> documentation and added some inputs that now may or may not be 
> needed for the latest version, but I could not get past this CMake 
> error.
> 
> Does anyone have any ideas for how else I can get kicad version 8 to
> compile? Thanks!
> 

Try adding libglvnd to the inputs.
  
Peter Polidoro May 16, 2024, 7:07 p.m. UTC | #3
Thank you, I added libglvnd and now it compiles. I submitted a new 
patch.

There still seems to be an issue with OpenGL, however. The 3D 
viewer does not seem to work and opening windows like the 
footprint editor can trigger a window saying it cannot use OpenGL 
so it is falling back to software rendering. I have tried changing 
compiler options and moving some dependencies between 
native-inputs and inputs, but nothing seems to fix the problem.

Vinicius Monego <monego@posteo.net> writes:

> Hi,
>
> Em qua, 2024-05-15 às 14:23 -0400, Peter Polidoro escreveu:
>> I am running into an error when attempting to update kicad to 
>> version 8:
>> 
>> CMake Error at 
>> /gnu/store/gl26kr5v6ch5lc3ignly61kb224drijc-cmake-minimal-
>> 3.24.2/share/cmake-
>> 3.24/Modules/FindPackageHandleStandardArgs.cmake:230 
>> (message): 
>>   Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY)
>> 
>> I am not sure why CMake is having trouble finding OpenGL since 
>> mesa is still listed as an input to the kicad package.
>> 
>> I tried various configure-flags based on the new kicad 
>> documentation and added some inputs that now may or may not be 
>> needed for the latest version, but I could not get past this CMake 
>> error.
>> 
>> Does anyone have any ideas for how else I can get kicad version 8 to
>> compile? Thanks!
>> 
>
> Try adding libglvnd to the inputs.
  
Greg Hogan March 11, 2025, 3:10 p.m. UTC | #4
On Wed, May 15, 2024 at 2:17 PM <peter@polidoro.io> wrote:
>
> From: Peter Polidoro <peter@polidoro.io>
>
> ---
>  gnu/packages/engineering.scm | 22 +++++++++++++---------
>  1 file changed, 13 insertions(+), 9 deletions(-)
>
> diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
> index 624024b8d4..fc8974e72a 100644
> --- a/gnu/packages/engineering.scm
> +++ b/gnu/packages/engineering.scm
> @@ -130,6 +130,7 @@ (define-module (gnu packages engineering)
>    #:use-module (gnu packages mpi)
>    #:use-module (gnu packages multiprecision)
>    #:use-module (gnu packages ncurses)
> +  #:use-module (gnu packages networking)
>    #:use-module (gnu packages openkinect)
>    #:use-module (gnu packages openkinect)
>    #:use-module (gnu packages parallel)
> @@ -1069,7 +1070,7 @@ (define-public inspekt3d
>  (define-public kicad
>    (package
>      (name "kicad")
> -    (version "7.0.11")
> +    (version "8.0.2")
>      (source (origin
>                (method git-fetch)
>                (uri (git-reference
> @@ -1077,7 +1078,7 @@ (define-public kicad
>                      (commit version)))
>                (sha256
>                 (base32
> -                "1qn7w6pb1n5gx73z1zqbv140chh4307y8764z7xkdvric9i48qj4"))
> +                "069ycii9zvdxwxd73afd6bp975r1555yvifi9zdb77qyvn0d9nr9"))
>                (file-name (git-file-name name version))))
>      (build-system cmake-build-system)
>      (arguments
> @@ -1089,8 +1090,8 @@ (define-public kicad
>                  (string-append "-DOCC_INCLUDE_DIR="
>                                 #$(this-package-input "opencascade-occt")
>                                 "/include/opencascade")
> -                "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
>                  "-DKICAD_USE_EGL=ON"    ;because wxWidgets uses EGL
> +                "-DKICAD_USE_BUNDLED_GLEW=ON"
>                  "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE")
>         #:phases
>         (modify-phases %standard-phases
> @@ -1122,16 +1123,16 @@ (define-public kicad
>              (variable "KICAD") ;to find kicad-doc
>              (files '("")))
>             (search-path-specification
> -            (variable "KICAD7_TEMPLATE_DIR")
> +            (variable "KICAD8_TEMPLATE_DIR")
>              (files '("share/kicad/template")))
>             (search-path-specification
> -            (variable "KICAD7_SYMBOL_DIR")
> +            (variable "KICAD8_SYMBOL_DIR")
>              (files '("share/kicad/symbols")))
>             (search-path-specification
> -            (variable "KICAD7_FOOTPRINT_DIR")
> +            (variable "KICAD8_FOOTPRINT_DIR")
>              (files '("share/kicad/footprints")))
>             (search-path-specification
> -            (variable "KICAD7_3DMODEL_DIR")
> +            (variable "KICAD8_3DMODEL_DIR")
>              (files '("share/kicad/3dmodels")))))
>      (native-inputs (list boost
>                           desktop-file-utils
> @@ -1139,7 +1140,8 @@ (define-public kicad
>                           pkg-config
>                           swig
>                           unixodbc
> -                         zlib))
> +                         zlib
> +                         freeglut))
>      (inputs (list bash-minimal
>                    cairo
>                    curl
> @@ -1155,7 +1157,9 @@ (define-public kicad
>                    gtk+
>                    wxwidgets
>                    python-wxpython
> -                  gdk-pixbuf))
> +                  gdk-pixbuf
> +                  protobuf
> +                  nng))
>      (home-page "https://www.kicad.org/")
>      (synopsis "Electronics Design Automation Suite")
>      (description
>
> base-commit: 28ce5085a0a4191c27aecdc085600acf585b607c
> --
> 2.41.0

kicad was recently updated to 9.0.0. Closing.
  

Patch

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 624024b8d4..fc8974e72a 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -130,6 +130,7 @@  (define-module (gnu packages engineering)
   #:use-module (gnu packages mpi)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages networking)
   #:use-module (gnu packages openkinect)
   #:use-module (gnu packages openkinect)
   #:use-module (gnu packages parallel)
@@ -1069,7 +1070,7 @@  (define-public inspekt3d
 (define-public kicad
   (package
     (name "kicad")
-    (version "7.0.11")
+    (version "8.0.2")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1077,7 +1078,7 @@  (define-public kicad
                     (commit version)))
               (sha256
                (base32
-                "1qn7w6pb1n5gx73z1zqbv140chh4307y8764z7xkdvric9i48qj4"))
+                "069ycii9zvdxwxd73afd6bp975r1555yvifi9zdb77qyvn0d9nr9"))
               (file-name (git-file-name name version))))
     (build-system cmake-build-system)
     (arguments
@@ -1089,8 +1090,8 @@  (define-public kicad
                 (string-append "-DOCC_INCLUDE_DIR="
                                #$(this-package-input "opencascade-occt")
                                "/include/opencascade")
-                "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
                 "-DKICAD_USE_EGL=ON"    ;because wxWidgets uses EGL
+                "-DKICAD_USE_BUNDLED_GLEW=ON"
                 "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE")
        #:phases
        (modify-phases %standard-phases
@@ -1122,16 +1123,16 @@  (define-public kicad
             (variable "KICAD") ;to find kicad-doc
             (files '("")))
            (search-path-specification
-            (variable "KICAD7_TEMPLATE_DIR")
+            (variable "KICAD8_TEMPLATE_DIR")
             (files '("share/kicad/template")))
            (search-path-specification
-            (variable "KICAD7_SYMBOL_DIR")
+            (variable "KICAD8_SYMBOL_DIR")
             (files '("share/kicad/symbols")))
            (search-path-specification
-            (variable "KICAD7_FOOTPRINT_DIR")
+            (variable "KICAD8_FOOTPRINT_DIR")
             (files '("share/kicad/footprints")))
            (search-path-specification
-            (variable "KICAD7_3DMODEL_DIR")
+            (variable "KICAD8_3DMODEL_DIR")
             (files '("share/kicad/3dmodels")))))
     (native-inputs (list boost
                          desktop-file-utils
@@ -1139,7 +1140,8 @@  (define-public kicad
                          pkg-config
                          swig
                          unixodbc
-                         zlib))
+                         zlib
+                         freeglut))
     (inputs (list bash-minimal
                   cairo
                   curl
@@ -1155,7 +1157,9 @@  (define-public kicad
                   gtk+
                   wxwidgets
                   python-wxpython
-                  gdk-pixbuf))
+                  gdk-pixbuf
+                  protobuf
+                  nng))
     (home-page "https://www.kicad.org/")
     (synopsis "Electronics Design Automation Suite")
     (description