@Deewiant mentioned your observation in the FreeCAD forum: https://forum.freecadweb.org/viewtopic.php?f=4&t=50810&p=461930#p461930
Search Criteria
Package Details: freecad-git 0.22.0.36999.ged77603af9-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/freecad-git.git (read-only, click to copy) |
---|---|
Package Base: | freecad-git |
Description: | A general purpose 3D CAD modeler - git checkout |
Upstream URL: | https://www.freecad.org/ |
Licenses: | LGPL |
Conflicts: | freecad, freecad-appimage, freecad-appimage-git |
Provides: | freecad |
Submitter: | gborzi |
Maintainer: | greyltc (adrianinsaval) |
Last Packager: | adrianinsaval |
Votes: | 104 |
Popularity: | 0.007466 |
First Submitted: | 2012-03-03 13:46 (UTC) |
Last Updated: | 2024-04-30 00:29 (UTC) |
Dependencies (39)
- boost-libs
- coin (coin-gitAUR)
- fmt (fmt-gitAUR)
- glew (glew-libepoxyAUR, glew-waylandAUR, glew-osmesa-gitAUR, glew-wayland-gitAUR, glew-gitAUR)
- jsoncpp (jsoncpp-cmake-gitAUR, jsoncpp-cmakeAUR, jsoncpp-gitAUR)
- medAUR (med-openmpi)
- netcdf (netcdf-openmpi)
- opencascade (opencascade-gitAUR, opencascade-rcAUR, opencascade-f3dAUR)
- openmpi (openmpi-gitAUR)
- pyside6
- pyside6-tools
- python-matplotlib (python-matplotlib-gitAUR)
- python-packaging
- python-pivy
- python-ply
- python-yaml (python-yaml-gitAUR)
- qt6-5compat
- qt6-base (qt6-base-gitAUR, qt6-base-headlessAUR)
- qt6-svg
- qt6-tools
- Show 19 more dependencies...
Required by (4)
- freecad-a2plus-git (requires freecad)
- freecad-cadquery-git (requires freecad)
- freecad-fcgear-git (requires freecad)
- openmc-git (requires freecad)
Sources (1)
Latest Comments
« First ‹ Previous 1 .. 13 14 15 16 17 18 19 20 21 22 23 .. 58 Next › Last »
Kunda commented on 2020-12-29 14:01 (UTC)
alhirzel commented on 2020-12-26 17:49 (UTC) (edited on 2020-12-26 17:51 (UTC) by alhirzel)
I'm seeing a few issues in check()
right now, which could be upstream. I am building on a PC where FreeCAD is not installed, and the first set of errors are like the following:
File "/home/alhirzel/build_freecad/freecad-git/src/build/Mod/Arch/ArchIFCSchema.py", line 34, in <module>
with open(os.path.join(FreeCAD.getResourceDir(), "Mod", "Arch", "Presets",
FileNotFoundError: [Errno 2] No such file or directory: '/usr/share/freecad/Mod/Arch/Presets/ifc_contexts_IFC4.json'
I think it's because FreeCAD.getResourceDir()
follows Application::getResourceDir
which depends on RESOURCEDIR
at build-time. Perhaps the tests should not use this directory or something. I'm reporting this here just in case it is due to our packaging or our invocation of the test suite. (I did not see any mention of RESOURCEDIR
in the PKGBUILD
.)
Second set of issues are as follows, which are filesystem-related though I struggle to see how they could be due to the PKGBULID
:
======================================================================
ERROR: testHatchCase (TestTechDrawApp.TechDrawTestCases)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/alhirzel/build_freecad/freecad-git/src/build/Mod/TechDraw/TestTechDrawApp.py", line 53, in testHatchCase
rc = DHatchTest()
File "/home/alhirzel/build_freecad/freecad-git/src/build/Mod/TechDraw/TDTest/DHatchTest.py", line 45, in DHatchTest
hatch = FreeCAD.ActiveDocument.addObject('TechDraw::DrawHatch','Hatch')
Base.FreeCADError: {'sclassname': 'N4Base15FileSystemErrorE', 'sErrMsg': 'File /tmp/FreeCAD_Doc_6a76e492-caf2-464f-af89-d311de155634_da39a3_47564/FreeCAD_Doc_6a76e492-caf2-464f-af89-d311de155634_da39a3_47564HatchSvgHatch.svgpg7I9M does not exist.', 'sfile': '', 'iline': 0, 'sfunction': '', 'swhat': 'File /tmp/FreeCAD_Doc_6a76e492-caf2-464f-af89-d311de155634_da39a3_47564/FreeCAD_Doc_6a76e492-caf2-464f-af89-d311de155634_da39a3_47564HatchSvgHatch.svgpg7I9M does not exist.', 'btranslatable': False, 'breported': True}
======================================================================
ERROR: testSectionCase (TestTechDrawApp.TechDrawTestCases)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/alhirzel/build_freecad/freecad-git/src/build/Mod/TechDraw/TestTechDrawApp.py", line 85, in testSectionCase
rc = DVSectionTest()
File "/home/alhirzel/build_freecad/freecad-git/src/build/Mod/TechDraw/TDTest/DVSectionTest.py", line 42, in DVSectionTest
section = FreeCAD.ActiveDocument.addObject('TechDraw::DrawViewSection','Section')
Base.FreeCADError: {'sclassname': 'N4Base15FileSystemErrorE', 'sErrMsg': 'File /tmp/FreeCAD_Doc_9ddf8b87-511a-47e5-a564-d1935042ba5b_da39a3_47564/FreeCAD_Doc_9ddf8b87-511a-47e5-a564-d1935042ba5b_da39a3_47564SectionSvgHatch.svgD7AOwM does not exist.', 'sfile': '', 'iline': 0, 'sfunction': '', 'swhat': 'File /tmp/FreeCAD_Doc_9ddf8b87-511a-47e5-a564-d1935042ba5b_da39a3_47564/FreeCAD_Doc_9ddf8b87-511a-47e5-a564-d1935042ba5b_da39a3_47564SectionSvgHatch.svgD7AOwM does not exist.', 'btranslatable': False, 'breported': True}
Deewiant commented on 2020-12-23 08:22 (UTC)
Doesn't build with both ccache and distcc enabled. The CMakeLists.txt has some custom logic to use ccache in front of every compilation command if it's found, which combined with makepkg's logic to set up the PATH for ccache results in invocations like /usr/bin/ccache /usr/lib/ccache/bin/c++
. With distcc also enabled, both the "outer" and "inner" ccache programs trigger distcc which causes it to bail out with "CRITICAL! distcc seems to have invoked itself recursively!".
This seems like FreeCAD's bug, but here's a patch:
diff --git CMakeLists.txt CMakeLists.txt
index f4dabf7657..ded1023532 100644
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -8,11 +8,6 @@ if (POLICY CMP0072)
cmake_policy(SET CMP0072 OLD)
endif(POLICY CMP0072)
-find_program(CCACHE_PROGRAM ccache) #This check should occur before project()
-if(CCACHE_PROGRAM)
- set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
-endif()
-
project(FreeCAD)
set(PACKAGE_VERSION_NAME "Vulcan")
moham_96 commented on 2020-12-22 07:37 (UTC)
I'm getting the following error while compiling https://0x0.st/iCeH.txt
greyltc commented on 2020-12-20 17:24 (UTC)
@bartus Thanks very much for the tips!
- I've added the
python-ply
dep - I never knew the environment was manipulated differently between prepare() and build() with respect to how rules in the options array are handled! (this honestly feels like a build system design flaw to me) I've moved the build preparation stuff from prepare() to build() now. Seems like I've been wrong to do that kind of preparation in prepare().
- Yeah, I should put my patches in the source array and not fetch anything in prepare(), sometimes I'm just too lazy to do it correctly
- Not sure I agree with what you've done with MAKEFLAGS and ninja there. I think I won't do that.
vipqualitypost commented on 2020-12-20 08:39 (UTC) (edited on 2020-12-20 08:48 (UTC) by vipqualitypost)
I patched my PKGBUILD with the patch posted by @bartus; it helped with building (set makeflags correctly, much slower build because of this I assume) but it still was failing the self tests so I think maybe this is an issue with FreeCAD. I commented out check() and then it just skips to package() which runs fine and the program is installed. I can open it and there are no obvious issues (I checked for the features that were failing test, all related to helix patterning). Maybe we should remove the self test until it's known to pass? Otherwise it's impossible to install, unless it's just a problem with my machine. Also, during check() we should remove the directory change; it enters the correct one at the end of Ninja build anyway.
To patch the makefile you can do like this, for anyone reading before it gets pushed:
curl http://ix.io/2IKZ >> freecad.patch
patch -ruN < freecad.patch
bartus commented on 2020-12-19 19:38 (UTC) (edited on 2020-12-19 22:18 (UTC) by bartus)
@greyltc; few things:
-
missing
python-ply
dependency ## -
cmake should be called form
build()
function asprepare()
is called in sanitized environment (no flags defined in/etc/makepkg.conf
present) ## -
to recreate make behaviour with
options=(!makeflags)
using ninja you should add${MAKEFLAGS:--j1}
to ninja call ## -
since
cmake:3.12
you can usedcmake -S source_dir -B build_dir
call creplacing allmkdir build, cd build, cmake ../
## -
and as bonus, instead of calling
curl
to get patch you can add one to source list withfilename::url
syntax ## also you can combine multiple python packages using bash bracket expansions ##
# merge with:
git am -s < <(curl -s http://ix.io/2IKZ)
btw. gendesktop
is pretty neat - will try to use it in my PKGBUILDs (ღ˘⌣˘ღ)
alex.forencich commented on 2020-12-17 22:44 (UTC)
I think python-yaml needs to be a dependency of some sort
kvkoskin commented on 2020-12-17 13:20 (UTC)
From Arch freecad package: Adding -D BUILD_ENABLE_CXX_STD=C++14 to cmake changes the std as needed.
Pinned Comments
adrianinsaval commented on 2023-03-12 14:50 (UTC)
If the check fails there is little I can do about it as it most likely needs to be fixed upstream, in such cases report those upstream (maybe wait a day or two as sometimes it's quickly solved upstream) or skip the check with
makepkg --nocheck
if you don't care about the functionality that is being reported as failing in the check.