Comments (3)
For VS 2013, I recommend not to use CMake, but simply open the existing .sln
file, as described in the build instructions wiki page.
HAVE_BOOST_UNORDERED_COLLECTIONS is defined in vcpp_config.h, you don't have to
define it in a global project scope.
cbrt.h does not have include guards, but it is included only in win32.h, which
does have include guards. So there are no duplicate symbols, unless you include
cbrt.h manually somewhere else.
Original comment by [email protected]
on 9 Jul 2014 at 10:14
- Changed state: Invalid
- Added labels: Type-Other
- Removed labels: Type-Defect
from ifcplusplus.
Thanks for the info, but as you already have an almost working CMake system,
why make the effort and maintain also the VS project files? It would be easier
to only have CMake, fix one or two errors and you can generate for whatever IDE
you want (theoretically). It would also be easier as you don't have those ugly
cmd batch files to set variables (OSG_DIR).
Yes, HAVE_BOOST_UNORDERED_COLLECTIONS is defined in vcpp_config.h, but if you
use CMake, config.h is included instead of vcpp_config.h (in
Carve/src/include/carve/carve.hpp) and therefore not defined.
One more argument for Cmake is, I build IfcPlusPlus as an external project with
EXTERNALPROJECT_ADD. Therefore, VS project files are not that useful.
I changed the Cmake files, so for me it's Ok, but I think others would also
benefit from a Cmake system for all platforms.
Feature request? :-)
Thanks for the good work!
Original comment by [email protected]
on 9 Jul 2014 at 11:47
- Added labels: ****
- Removed labels: ****
from ifcplusplus.
The .sln file is my working environment, so it is no additional effort to
maintain it.
The batch script is necessary to set the paths to Qt and OSG. It is the easiest
way to handle different versions of the libs and to switch to a new version (or
if you have to handle both 32 bit and 64 bit libs).
Ok, the cmd syntax is ugly, but I would say that CMake syntax is even worse :)
>Yes, HAVE_BOOST_UNORDERED_COLLECTIONS is defined in vcpp_config.h, but if you
use CMake, config.h is included instead of vcpp_config.h (in
Carve/src/include/carve/carve.hpp) and therefore not defined.
I think there is a misunderstanding here in the way CMake and C++ compilers
work:
CMake does not include header files, they are included during compile time in a
.cpp file by the compiler. CMake does not change the code in a .cpp file.
You can leave out all the header files in CMakeLists.txt, and it still compiles
correctly. It is only there for the dev environment to list the files in the
project.
INCLUDE_DIRECTORIES is important though, because it tells the compiler where to
look for #include header files when compiling a .cpp file.
Original comment by [email protected]
on 9 Jul 2014 at 1:14
- Added labels: ****
- Removed labels: ****
from ifcplusplus.
Related Issues (20)
- Missing corner pipes. HOT 1
- Insert IFC at specific coordinates into another IFC HOT 1
- OCC HOT 1
- ifc4 mesh error HOT 5
- Request for original source code HOT 4
- Releases source code 1.9 vesion cmake Error HOT 1
- getTrimAngles regression HOT 3
- Allow miniz to be provided externally HOT 2
- Linker error in Ubuntu HOT 4
- Missing geometry data when reading elements outside IFCProject HOT 2
- Only triangle data can get from a face?
- Out of bounds vector in simplifyPolygon HOT 2
- src/viewer/OrbitCameraManipulator.cpp missing HOT 2
- Is ifcplusplus still able to be built on Linux? (forked repo is unmaintained) HOT 1
- The sample code process is a bit complicated, and it is difficult to understand without the support of documentation
- Inquire about the LOD related matters of IFC HOT 9
- Reader doesn't eat all the thrash spaces HOT 1
- Conversion unit HOT 3
- IFC 4x3. version 2.3 tag number has (,) from locale HOT 1
- IFC4X3. Reading unknow entities are NOT logged or sent to the message call back. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ifcplusplus.