Comments (12)
Ugh. This is potentially very bad. For once, it will make those data structures less memory efficient. But I also do some of my own hacking around with calculating padding etc. which might break because of that. Because I was not sure that all my code was clean in that respect, I added those checks.
This will need some careful looking into. For the time being you can remove those checks and see where it goes.
/cc @alex85k
from libosmium.
More progress: ON MSVC13CTO, it dies during code generation with a compiler error: Project-OSRM/osrm-backend#1159 (comment)
Will try to get this compiling on MSVC 14 CTP on Monday.
from libosmium.
Will try to get this compiling on MSVC 14 CTP on Monday.
Please let me know if you can build or find Intel TBB for it. I gave up...
from libosmium.
Crashes of compiler is caused by {}
field initializations like
std::vector<ProtoRing*> m_inner {};
or
slist_type m_segments {};
I am working on dumb-fixes.
Many of non-primitive type constexpr are unsupported on November CTP too.
from libosmium.
Next problem is pipes&forks still existing in reader.hpp :)
Error 56 error C3861: 'pipe': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 102 1 osmium_read
Error 57 error C2065: 'pid_t' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_read
Error 58 error C2146: syntax error : missing ';' before identifier 'pid' D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_read
Error 59 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_read
Error 60 error C3861: 'fork': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_read
Error 61 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 106 1 osmium_read
Error 62 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 109 1 osmium_read
Error 63 error C2039: 'execlp' : is not a member of '`global namespace'' D:\build_d\libosmium\include\osmium\io\reader.hpp 126 1 osmium_read
Error 64 error C3861: 'execlp': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 126 1 osmium_read
Error 65 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 131 1 osmium_read
Error 66 error C2065: 'pid_t' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_read
Error 67 error C2146: syntax error : missing ';' before identifier 'pid' D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_read
Error 68 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_read
Error 69 error C2039: 'waitpid' : is not a member of '`global namespace'' D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_read
Error 70 error C3861: 'waitpid': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_read
Error 71 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 209 1 osmium_read
Error 72 error C3861: 'WIFEXITED': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 209 1 osmium_read
Error 73 error C3861: 'WEXITSTATUS': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 209 1 osmium_read
Error 75 error C2589: '(' : illegal token on right side of '::' D:\build_d\libosmium\include\osmium\builder\osm_object_builder.hpp 108 1 osmium_read
Error 76 error C2059: syntax error : '::' D:\build_d\libosmium\include\osmium\builder\osm_object_builder.hpp 108 1 osmium_read
Error 77 error C1083: Cannot open include file: 'osmpbf/osmpbf.h': No such file or directory D:\build_d\libosmium\include\osmium\io\detail\pbf.hpp 40 1 osmium_read
Error 81 error C3861: 'pipe': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 102 1 osmium_area_test
Error 82 error C2065: 'pid_t' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_area_test
Error 83 error C2146: syntax error : missing ';' before identifier 'pid' D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_area_test
Error 84 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_area_test
Error 85 error C3861: 'fork': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 105 1 osmium_area_test
Error 86 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 106 1 osmium_area_test
Error 87 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 109 1 osmium_area_test
Error 88 error C2039: 'execlp' : is not a member of '`global namespace'' D:\build_d\libosmium\include\osmium\io\reader.hpp 126 1 osmium_area_test
Error 89 error C3861: 'execlp': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 126 1 osmium_area_test
Error 90 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 131 1 osmium_area_test
Error 91 error C2065: 'pid_t' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_area_test
Error 92 error C2146: syntax error : missing ';' before identifier 'pid' D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_area_test
Error 93 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_area_test
Error 94 error C2039: 'waitpid' : is not a member of '`global namespace'' D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_area_test
Error 95 error C3861: 'waitpid': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 206 1 osmium_area_test
Error 96 error C2065: 'pid' : undeclared identifier D:\build_d\libosmium\include\osmium\io\reader.hpp 209 1 osmium_area_test
Error 97 error C3861: 'WIFEXITED': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 209 1 osmium_area_test
Error 98 error C3861: 'WEXITSTATUS': identifier not found D:\build_d\libosmium\include\osmium\io\reader.hpp 209 1 osmium_area_test
Error 99 error C1903: unable to recover from previous error(s); stopping compilation D:\build_d\libosmium\include\osmium\geom\wkt.hpp 51 1 osmium_area_test
from libosmium.
Yes, we still use pipes and forks for HTTP support. It is on my to do list to remove those and use libcurl directly. Unfortunately the libcurl API isn't the easiest to use and I didn't have the time yet, to go into that. On the other hand this stuff is pretty separate from the rest anyway and not needed for most operations so we could #ifdef
it out.
from libosmium.
@alex85k: Can you open issues for each problem you encounter? Makes it easier to track than everything in one big ticket.
from libosmium.
Using uniform initialization can be tricky as it has (sometimes) un-intended effects, e.g. this is not the same:
std::vector<int> v(1,2) != std::vector<int> v{1,2}
from libosmium.
OK, I'll create separate issues with error samples and links to my fork (if some fix is available).
from libosmium.
I have created the separate issues for errors I can not fix:
#31
#32
Can also create issues for each commit of https://github.com/alex85k/libosmium/commits/msvc but then the process will become too slow (each commit was a fix for different error). Let us get at least half-working version to start integration and cleaning :)
from libosmium.
I have created #33 . We'll use that issue to track Windows-related tasks.
from libosmium.
I'll close this issue now. The original problem is fixed and other issues are tracked in #33.
from libosmium.
Related Issues (20)
- Unable to compile with c++20 when using precompiled binaries HOT 8
- Failing to compile libosmium: 'protozero/types.hpp' file not found HOT 5
- Incorrect proj usage HOT 1
- libosmium no longer successfully builds after `v2.17.1` on CentOS 7 HOT 2
- Need help, how to add altitude to libosmium HOT 2
- Missing prepare_for_lookup in test_members_database.cpp HOT 1
- heads-up: PROJ_LIB is now deprecated (use PROJ_DATA instead)
- io_test_bzip2 fails on Alpine Linux HOT 3
- AppVeyor builds fail due to missing LZ4 HOT 5
- Print offending string in PBF-Decoder
- installation make error HOT 2
- Does libosmium work with MacOS (M series chip)
- Performance Issues with `timegm` called from `parse_timestamp` on iOS 16.2 HOT 10
- Fractional seconds in XML timestamps HOT 2
- compiler error HOT 4
- What is the best practice for writing CPU-intensive handlers? HOT 4
- Reader class cannot record file types HOT 1
- Fails to read a bz2 file HOT 1
- location for one or more nodes not found in node location index HOT 2
- windows build is failing according to https://osmcode.org/status.html HOT 3
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 libosmium.