Compas_ifc installation issue

Hi @Li_Chen

thanks for sharing your work on compas_ifc and the installation instructions. I run into this error despite updating my microsoft built tools, pip, wheel. didn’t get any leads from chatGPT either. Any suggestions would help, thanks :slight_smile:

Collecting compas_ifc
  Using cached compas_ifc-0.4.1-py3-none-any.whl.metadata (5.4 kB)
Collecting ifcopenshell (from compas_ifc)
  Using cached ifcopenshell-0.7.0.240521-py39-none-win_amd64.whl.metadata (8.9 kB)
Collecting lark (from compas_ifc)
  Using cached lark-1.1.9-py3-none-any.whl.metadata (1.9 kB)
Collecting mathutils (from ifcopenshell->compas_ifc)
  Using cached mathutils-3.3.0.tar.gz (245 kB)
  Preparing metadata (setup.py) ... done
Collecting shapely (from ifcopenshell->compas_ifc)
  Using cached shapely-2.0.4-cp39-cp39-win_amd64.whl.metadata (7.2 kB)
Requirement already satisfied: numpy in c:\programdata\anaconda3\envs\sbp_academy_24\lib\site-packages (from ifcopenshell->compas_ifc) (1.26.4)
Collecting isodate (from ifcopenshell->compas_ifc)
  Using cached isodate-0.6.1-py2.py3-none-any.whl.metadata (9.6 kB)
Requirement already satisfied: python-dateutil in c:\programdata\anaconda3\envs\sbp_academy_24\lib\site-packages (from ifcopenshell->compas_ifc) (2.8.2)
Requirement already satisfied: six in c:\programdata\anaconda3\envs\sbp_academy_24\lib\site-packages (from isodate->ifcopenshell->compas_ifc) (1.16.0)
Using cached compas_ifc-0.4.1-py3-none-any.whl (48 kB)
Using cached ifcopenshell-0.7.0.240521-py39-none-win_amd64.whl (25.1 MB)
Using cached lark-1.1.9-py3-none-any.whl (111 kB)
Using cached isodate-0.6.1-py2.py3-none-any.whl (41 kB)
Using cached shapely-2.0.4-cp39-cp39-win_amd64.whl (1.4 MB)
Building wheels for collected packages: mathutils
  Building wheel for mathutils (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [51 lines of output]
      running bdist_wheel
      running build
      running build_ext
      building 'mathutils' extension
      creating build
      creating build\temp.win-amd64-cpython-39
      creating build\temp.win-amd64-cpython-39\Release
      creating build\temp.win-amd64-cpython-39\Release\src
      creating build\temp.win-amd64-cpython-39\Release\src\blenlib
      creating build\temp.win-amd64-cpython-39\Release\src\blenlib\intern
      creating build\temp.win-amd64-cpython-39\Release\src\generic
      creating build\temp.win-amd64-cpython-39\Release\src\mathutils
      creating build\temp.win-amd64-cpython-39\Release\src\stubs
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/BLI_assert.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/BLI_assert.obj /J
      BLI_assert.c
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/math_base.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/math_base.obj /J
      math_base.c
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/math_color.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/math_color.obj /J
      math_color.c
      src/blenlib/intern/math_color.c(185): warning C4996: 'sscanf': This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      src/blenlib/intern/math_color.c(188): warning C4996: 'sscanf': This function or variable may be unsafe. Consider using sscanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/math_geom.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/math_geom.obj /J
      math_geom.c
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/math_matrix.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/math_matrix.obj /J
      math_matrix.c
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/math_rotation.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/math_rotation.obj /J
      math_rotation.c
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/blenlib/intern/math_vector.c /Fobuild\temp.win-amd64-cpython-39\Release\src/blenlib/intern/math_vector.obj /J
      math_vector.c
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/generic/py_capi_utils.c /Fobuild\temp.win-amd64-cpython-39\Release\src/generic/py_capi_utils.obj /J
      py_capi_utils.c
      src/generic/py_capi_utils.c(80): warning C4244: "=": Konvertierung von "double" in "float", m”glicher Datenverlust
      src/generic/py_capi_utils.c(370): warning C4018: "<": Konflikt zwischen "signed" und "unsigned"
      src/generic/py_capi_utils.c(394): warning C4018: "<": Konflikt zwischen "signed" und "unsigned"
      src/generic/py_capi_utils.c(418): warning C4018: "<": Konflikt zwischen "signed" und "unsigned"
      src/generic/py_capi_utils.c(442): warning C4018: "<": Konflikt zwischen "signed" und "unsigned"
      src/generic/py_capi_utils.c(461): warning C4244: "Initialisierung": Konvertierung von "Py_ssize_t" in "const uint", m”glicher Datenverlust
      src/generic/py_capi_utils.c(472): warning C4244: "Initialisierung": Konvertierung von "Py_ssize_t" in "const uint", m”glicher Datenverlust
      "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DMATH_STANDALONE -DWITH_ASSERT_ABORT -Isrc/stubs -Isrc/blenlib -Isrc/makesdna -IC:\ProgramData\anaconda3\envs\sbp_academy_24\include -IC:\ProgramData\anaconda3\envs\sbp_academy_24\Include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.40.33807\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22621.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\um" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\shared" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\winrt" "-IC:\Program Files (x86)\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcsrc/mathutils/mathutils.c /Fobuild\temp.win-amd64-cpython-39\Release\src/mathutils/mathutils.obj /J
      mathutils.c
      src/mathutils/mathutils.c(50): warning C4244: "=": Konvertierung von "double" in "float", m”glicher Datenverlust
      src/mathutils/mathutils.c(79): error C2440: "Funktion": "void *" kann nicht in "double" konvertiert werden
      src/mathutils/mathutils.c(79): warning C4024: "_Py_HashDouble": unterschiedliche Typen f\x81r formalen und \x81bergebenen Parameter 1
      src/mathutils/mathutils.c(79): warning C4020: "_Py_HashDouble": zu viele \x81bergebene Parameter
      src/mathutils/mathutils.c(147): warning C4244: "=": Konvertierung von "Py_ssize_t" in "int", m”glicher Datenverlust
      src/mathutils/mathutils.c(231): warning C4244: "=": Konvertierung von "Py_ssize_t" in "int", m”glicher Datenverlust
      src/mathutils/mathutils.c(270): warning C4244: "=": Konvertierung von "Py_ssize_t" in "int", m”glicher Datenverlust
      src/mathutils/mathutils.c(306): warning C4244: "=": Konvertierung von "Py_ssize_t" in "int", m”glicher Datenverlust
      src/mathutils/mathutils.c(344): warning C4244: "=": Konvertierung von "Py_ssize_t" in "int", m”glicher Datenverlust
      src/mathutils/mathutils.c(383): warning C4244: "=": Konvertierung von "Py_ssize_t" in "int", m”glicher Datenverlust
      error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\Tools\\MSVC\\14.40.33807\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for mathutils
  Running setup.py clean for mathutils
Failed to build mathutils
ERROR: Could not build wheels for mathutils, which is required to install pyproject.toml-based projects

Hi @lifeisapeachfest , this is a problem from the latest ifcopenshell, recently they incldued mathutil package from blender which fails to build in many systems… They provide some pre-built packages online which might help: Installation - IfcOpenShell 0.7.0 documentation

Alternatively you can also try:
conda install ifcopenshell and see if that works on your system

Meanwhile which python are you using?

thanks for your response Li! i’m using python 3.12