Package Base Details: gmsh

Git Clone URL: https://aur.archlinux.org/gmsh.git (read-only, click to copy)
Submitter: S1G1
Maintainer: gborzi
Last Packager: gborzi
Votes: 51
Popularity: 0.60
First Submitted: 2006-04-04 23:31
Last Updated: 2020-06-22 11:49

Packages (2)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 9 ... Next › Last »

gborzi commented on 2020-02-28 17:26

@lahwaacz Thanks for the suggestion, I've implemented it in the latest update (4.5.3-2).

lahwaacz commented on 2020-02-28 14:10

@gborzi The best solution would be to patch the CMakeLists.txt file and remove the command. (They have a FIXME note just on the previous line about it, too...)

gborzi commented on 2020-02-28 13:35

@lahwaacz that's a problem, because everyone can have a build directory with wathever root directory (e.g. /home, /build, /tmp). Only /usr end /etc must remain, I have to think a way to do it. Any suggestion will be appreciated.

lahwaacz commented on 2020-02-27 22:32

I have the build directory in my package too. Snippet from the build output:

Install the project...
-- Install configuration: "RelWithDebInfo"
-- Installing: /build/gmsh/pkg/gmsh/usr/bin/gmsh
-- Set runtime path of "/build/gmsh/pkg/gmsh/usr/bin/gmsh" to "/usr/lib"
-- Installing: /build/gmsh/pkg/gmsh/usr/lib/libgmsh.so.4.5.3
-- Installing: /build/gmsh/pkg/gmsh/usr/lib/libgmsh.so.4.5
-- Set runtime path of "/build/gmsh/pkg/gmsh/usr/lib/libgmsh.so.4.5.3" to "/usr/lib"
-- Installing: /build/gmsh/pkg/gmsh/usr/lib/libgmsh.so
-- Installing: /build/gmsh/pkg/gmsh/build/gmsh/src/gmsh-4.5.3-source/api/libgmsh.so.4.5.3
-- Installing: /build/gmsh/pkg/gmsh/build/gmsh/src/gmsh-4.5.3-source/api/libgmsh.so.4.5
-- Set runtime path of "/build/gmsh/pkg/gmsh/build/gmsh/src/gmsh-4.5.3-source/api/libgmsh.so.4.5.3" to "/usr/lib"
-- Installing: /build/gmsh/pkg/gmsh/build/gmsh/src/gmsh-4.5.3-source/api/libgmsh.so

It is most likely the result of the following command in the upstream CMakeLists.txt:

install(TARGETS shared DESTINATION ${CMAKE_CURRENT_SOURCE_DIR}/api OPTIONAL)

In my case, CMAKE_CURRENT_SOURCE_DIR was /build/gmsh/pkg/gmsh/build/gmsh/src/gmsh-4.5.3-source because I was building in a clean chroot: https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_clean_chroot

gborzi commented on 2020-02-27 01:54

@ccorn That's strange, in my package there isn't a build directory.

ccorn commented on 2020-02-27 01:36

Somehow /build ends up in the gmsh package, as pacman -Qlp gmsh-4.5.3-1-x86_64.pkg.tar.zst shows. Removing it with the following patch:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -51,7 +51,7 @@ package_gmsh() {
    install -D -m644 "${pkgdir}/usr/lib/gmsh.py" "${pkgdir}/usr/lib/python2.7/site-packages/gmsh.py"
    install -D -m644 "${pkgdir}/usr/lib/gmsh.py" "${pkgdir}/usr/lib/python3.8/site-packages/gmsh.py"
    rm "${pkgdir}/usr/lib/gmsh.py"
-   rm -rf "${pkgdir}/home"
+   rm -rf "${pkgdir}/home" "${pkgdir}/build"

    install -d "${pkgdir}/usr/share/pixmaps/${pkgname}"
    install -m644 ../utils/icons/*.png "${pkgdir}/usr/share/pixmaps/${pkgname}"

I'd also use more consistent quoting around srcdir and $pkgdir, but that's not essential here.

gborzi commented on 2020-02-14 13:54

@ljj038 I'm unable to reproduce that error. Perhaps you are using some compiler cache program (like ccache) or an AUR helper. If so, please retry to compile the package without these.

ljj038 commented on 2020-02-14 13:16

[ 7%] Building CXX object CMakeFiles/shared.dir/Geo/GModelIO_ACIS.cpp.o

[ 7%] Building CXX object CMakeFiles/shared.dir/Geo/GModelIO_OCC.cpp.o

/home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/GModelIO_OCC.cpp: In member function ‘bool OCC_Internals::addPlateSurface(int&, int, const std::vector<int>&, const std::vector<int>&, const std::vector<int>&)’:

/home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/GModelIO_OCC.cpp:1620:68: error: invalid use of incomplete type ‘class GeomPlate_PointConstraint’ 1620 | new GeomPlate_PointConstraint(BRep_Tool::Pnt(vertex), 0, .1); |
^ In file included from /usr/include/oce/GeomPlate_BuildPlateSurface.hxx:26, from /usr/include/oce/BRepFill_Filling.hxx:13, from /usr/include/oce/BRepOffsetAPI_MakeFilling.hxx:13, from /home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/GModelIO_OCC.cpp:44:

/usr/include/oce/Handle_GeomPlate_PointConstraint.hxx:16:7: note: forward declaration of ‘class GeomPlate_PointConstraint’ 16 | class GeomPlate_PointConstraint; | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/GModelIO_OCC.cpp: In member function ‘bool OCC_Internals::makeEdgeSTLFromFace(const TopoDS_Edge&, const TopoDS_Face&, std::vector<SPoint3>*)’: /home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/GModelIO_OCC.cpp:4542:54: error: invalid use of incomplete type ‘class Poly_PolygonOnTriangulation’ 4542 | const TColStd_Array1OfInteger &edgeVerts = edgepoly->Nodes(); | ^~ In file included from /usr/include/oce/BRep_Tool.hxx:22, from /home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/OCCEdge.h:21, from /home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/Geo/GModelIO_OCC.cpp:11: /usr/include/oce/Handle_Poly_PolygonOnTriangulation.hxx:16:7: note: forward declaration of ‘class Poly_PolygonOnTriangulation’ 16 | class Poly_PolygonOnTriangulation; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~

make[2]: *** [CMakeFiles/shared.dir/build.make:1467: CMakeFiles/shared.dir/Geo/GModelIO_OCC.cpp.o] Error 1

make[2]: Leaving directory '/home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/build'

make[1]: *** [CMakeFiles/Makefile2:1210: CMakeFiles/shared.dir/all] Error 2

make[1]: Leaving directory '/home/king/.cache/yay/gmsh/src/gmsh-4.5.2-source/build'

make: *** [Makefile:163: all] Error 2

==> ERROR: A failure occurred in build().

Aborting...

Error making: gmsh (gmsh gmsh-docs)

PrinceMachiavell commented on 2019-11-19 21:21

Does this package specifically require python 3.7? If not there is probably a better solution than hardcoding directories in the PKGBUILD.

chilichiller commented on 2019-11-07 15:45

@gborzi Found it, gmsh runs fine again. Thank for answering my noob questions :)