I. Background and Objective
To try my hand at BIM things, I did BIM Modelling tutorial for FreeCAD.
In that tutorial, at the point of exporting a model in IFC format, one is told to install IfcOpenShell.
I tried installing IfcOpenShell in vain.
In that tutorial, at the point of exporting a model in IFC format, one is told to install IfcOpenShell.
I tried installing IfcOpenShell in vain.
II. Summary
The following is the situation/facts as I found it.
- Lack of a header file(“BRepAdaptor_HCompCurve.h”) from opencascade hinders building process of IfcOpenShell.
- In a discussion thread in the official IfcOpenShell, a developer recommends downgrading opencascade to 7.5.
- The header file seems to have existed until the version 7.5.?, but removed at least in the latest version 7.6.0.
- Installing opencascade 7.5.0 was not successful due to the lack of a header file “tbb/task_scheduler_init.h” from tbb.
- At the moment I installed tbb and tbb@2020 in homebrew, and I am not aware of how to remove the former or to give precedence to the latter.
III. Details
1. “BRepAdaptor_HCompCurve.h” missing
Installation commands are on the main page of the IfcOpenShell repository.
Dependency installation and repository cloning seemed to complete without any error.
Dependency installation and repository cloning seemed to complete without any error.
![]() |
| Installation commands. |
But the command to build exited with errors. I checked the include directory for opencascade, which is substituted DOCC_INCLUDE_DIR in the cmake command, did really contain header files for opencascade but did not contain “BRepAdaptor_HCompCurve.h”.
![]() |
| “Fatal error” during make run. |
2. Opencascade downgrading
In a discussion thread in the official IFcOpenShell, a developer recommends downgrading opencascade to 7.5 for now(posted Jan 13 2022).
![]() |
| Excerpt from the post. |
3. Removal of the header file in question
The header file seems to have existed until at least the version 7.5.0.
![]() |
![]() |
| Online documentation for opencascade 7.6.0. |
4. Installation of opencascade 7.5.0
To install opencascade using homebrew, one needs to use
The following snapshot shows where I hit the stumbling block again, and the cause was the lack of a header file “tbb/task_scheduler_init.h” from tbb.
brew extract command.The following snapshot shows where I hit the stumbling block again, and the cause was the lack of a header file “tbb/task_scheduler_init.h” from tbb.
![]() |
| Fatal error during installation. |
As far as I searched on google, few web resources mentions this problem. But official(?) issue tracker page for opencascade does list it(and it is still open).

5. If only I can make use of my tbb@2020 package!
My homebrew has both tbb and tbb@2020 packages, and I confirmed tbb@2020 contained task_scheduler_init.h. But I am not aware of how to remove the former or to give precedence to the latter.





