Package Details: enumlib-git r461.e780a44-1

Git Clone URL: https://aur.archlinux.org/enumlib-git.git (read-only, click to copy)
Package Base: enumlib-git
Description: A code generates the derivative superstructures of a parent lattice
Upstream URL: https://github.com/msg-byu/enumlib
Licenses: MIT
Provides: enumlib
Submitter: specter119
Maintainer: specter119
Last Packager: specter119
Votes: 0
Popularity: 0.000000
First Submitted: 2021-02-08 06:53 (UTC)
Last Updated: 2021-02-08 06:53 (UTC)

Dependencies (2)

Required by (0)

Sources (2)

Latest Comments

samueldy commented on 2021-02-12 05:45 (UTC)

@specter119, no worries! I was able to get it to build and install successfully. Thanks for your help!

specter119 commented on 2021-02-12 05:42 (UTC) (edited on 2021-02-12 05:57 (UTC) by specter119)

@samueldy your yay is up to date now, however yay -S enumlib-git can build enumlib-git on my machine without any cached files.

Your issue is not related to missing dependencies, it looks like on your machine the prepare() function in my PKGBUILD does not work at all. Sorry for unable to solve it.

You can still try to copy the PKGBUILD to a clean folder and exec makepkg, to see if it can build binaries successfully.

samueldy commented on 2021-02-12 03:50 (UTC)

@specter119 I used yay v10.1.0 - libalpm v12.0.2. Maybe it will work with pikaur. Thanks!

specter119 commented on 2021-02-12 02:58 (UTC) (edited on 2021-02-12 03:06 (UTC) by specter119)

@samueldy which AUR helper did you use? I have tried pikaur and yay, both can build it successfully.

Actually, $srcdir/$_provide/$_submodule/src will not exist according to this PKGBUILD. Since in the prepare() I have changed the submodule path (according to Arch Wiki/VSC package guielines#git_submodules). Your install processing is more like a manual installation in the upstream readme. Therefore, my suggestion is that you may try another AUR helper, or place the PKGBUILD in a clean folder and run makepkg without manually clone any repos. Then wait and you will get a passed build.

Moreover, this pkgbuild only build 2 binary files to support pymatgen, if you need more binaries or libs, please let me know.

samueldy commented on 2021-02-11 19:24 (UTC) (edited on 2021-02-11 19:25 (UTC) by samueldy)

I got it to compile!

I had symlib compile from its path inside the enumlib repository:

diff --git a/PKGBUILD b/PKGBUILD
index 3cdc39c..2dd2bca 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -42,7 +42,7 @@ prepare() {
 }

 build() {
-  cd $srcdir/$_submodule/src
+  cd $srcdir/$_provide/$_submodule/src
   make F90=gfortran
   cd $srcdir/$_provide/src
   make F90=gfortran enum.x

From there, I kept getting similar errors about .mod files not being available, but it appears that every time you run the build process (makepkg -si repeatedly), one of those files gets compiled. So you just have to makepkg -si enough times for the dependencies to be met, and then it will compile and package() will run. So it's probably something weird about gfortran's dependency resolution while inside build().

samueldy commented on 2021-02-10 16:19 (UTC)

Thanks for making this package! I'm getting some compilation errors:

==> Starting build()..                                                                                                                                                                                                                                                
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c num_types.f90                                                                                                                                                                              
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c utilities.f90                                                                                                                                                                              
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c numerical_utilities.f90                                                                                                                                                                    
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c vector_matrix_utilities.f90                                                                                                                                                                
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c symmetry.f90                                                                                                                                                                               
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c group_theory.f90                                                                                                                                                                           
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c itertools.f90                                                                                                                                                                              
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c classes.f90                                                                                                                                                                                
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c compare_structures.f90                                                                                                                                                                     
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c rational_mathematics.f90                                                                                                                                                                   
gfortran -g -fbounds-check -fPIC -pedantic -Wall -ffree-line-length-none -c combinatorics.f90                                                                                                                                                                          
rational_mathematics.f90:2:7:                                                                                                                                                                                                                                          

    2 |   use num_types                                                                                                                                                                                                                                                
      |       1
Fatal Error: Cannot open module file ‘num_types.mod’ for reading at (1): No such file or directory
compilation terminated.
compare_structures.f90:10:5:

   10 | use num_types
      |     1
Fatal Error: Cannot open module file ‘num_types.mod’ for reading at (1): No such file or directory
compilation terminated.
combinatorics.f90:2:7:

    2 |   use num_types
      |       1
Fatal Error: Cannot open module file ‘num_types.mod’ for reading at (1): No such file or directory
compilation terminated.
numerical_utilities.f90:2:5:

    2 | use num_types
      |     1
Fatal Error: Cannot open module file ‘num_types.mod’ for reading at (1): No such file or directory
compilation terminated.
make: *** [Makefile:117: rational_mathematics.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Makefile:117: compare_structures.o] Error 1
symmetry.f90:15:7:

   15 |   use numerical_utilities, only: equal
      |       1
Fatal Error: Cannot open module file ‘numerical_utilities.mod’ for reading at (1): No such file or directory
compilation terminated.
make: *** [Makefile:117: combinatorics.o] Error 1
make: *** [Makefile:117: numerical_utilities.o] Error 1
vector_matrix_utilities.f90:3:5:

    3 | use utilities
      |     1
Fatal Error: Cannot open module file ‘utilities.mod’ for reading at (1): No such file or directory
compilation terminated.
make: *** [Makefile:117: symmetry.o] Error 1
make: *** [Makefile:117: vector_matrix_utilities.o] Error 1
group_theory.f90:2:5:

    2 | use utilities, only : ralloc
      |     1
Fatal Error: Cannot open module file ‘utilities.mod’ for reading at (1): No such file or directory
compilation terminated.
classes.f90:8:5:

    8 | use itertools
      |     1
Fatal Error: Cannot open module file ‘itertools.mod’ for reading at (1): No such file or directory
compilation terminated.
make: *** [Makefile:117: group_theory.o] Error 1
make: *** [Makefile:117: classes.o] Error 1
==> ERROR: A failure occurred in build().
    Aborting...
error making: enumlib-git

I think perhaps the symlib repository is not being placed inside the enumlib folder? I think it might need to be because the README at https://github.com/msg-byu/enumlib says symlib should be cloned as a submodule of enumlib.