Details
-
Task
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
1.1.6
-
None
-
None
-
Windows 10 (x64)
-
2018-16, 2018-17, 2018-18
Description
Currently one needs to manually build all dependent C++ libraries (libuv, snappy, boost, libxml2, libiconv, gtest etc.) and add them to their Visual Studio installation.
Efforts shall be made to automate the build of the dependent libraries for Windows and include them directly into the build process so that no manual dependency management is needed any more.
This could be done through Visual Studio's packet manager nuget, through git submodules of needed libraries or a combination of both.
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Sprint | 2018-16 [ 269 ] |
Description |
To operate mcsapi on Windows 10, Microsoft Visual C++ Redistributables are needed.
These shall be added to the installer so that a customer doesn't need to obtain them in an additional step. Needed Redistributables: - Microsoft Visual C++ 2015 Redistributable (x64) - Microsoft Visual C++ 2012 Redistributable (x64) |
Currently one needs to manually build all dependent C++ libraries (libuv, snappy, boost, libxml2, libiconv, gtest etc.) and add them to their Visual Studio installation.
Efforts shall be made to automate the build of the dependent libraries for Windows and include them directly into the build process so that no manual dependency management is needed any more. This could be done through Visual Studio's packet manager _nuget_, through git submodules of needed libraries or a combination of both. |
Summary | mcsapi Windows - add needed Windows Redistributables to installer | Include Windows library build into mcsapi |
Issue Type | New Feature [ 2 ] | Task [ 3 ] |
Status | Open [ 1 ] | Confirmed [ 10101 ] |
Assignee | Jens Röwekamp [ jens.rowekamp ] | David Thompson [ dthompson ] |
Status | Confirmed [ 10101 ] | In Review [ 10002 ] |
Assignee | David Thompson [ dthompson ] | Stepan Patryshev [ stepan.patryshev ] |
Status | In Review [ 10002 ] | In Testing [ 10301 ] |
Sprint | 2018-16 [ 269 ] | 2018-16, 2018-17 [ 269, 276 ] |
Fix Version/s | 1.2.0 [ 22901 ] | |
Fix Version/s | 1.2 [ 22554 ] |
Sprint | 2018-16, 2018-17 [ 269, 276 ] | 2018-16, 2018-17, 2018-18 [ 269, 276, 278 ] |
Assignee | Stepan Patryshev [ stepan.patryshev ] | Zdravelina Sokolovska [ winstone ] |
Assignee | Zdravelina Sokolovska [ winstone ] | Andrew Hutchings [ linuxjedi ] |
Resolution | Fixed [ 1 ] | |
Status | In Testing [ 10301 ] | Closed [ 6 ] |
Component/s | mcsapi [ 14100 ] |
Some dependent libraries weren't able to be built through cmake, but through cygwin or batch scripts. Therefore, the automation would have been more complicated.
As a result I decided to add an archive of pre-compiled dependent libraries to the documentation whose contents can be directly copied to the Visual Studio installation. This way we ensure that we use the same libraries for every build. The archive is hosted in our ColumnStore Google Drive so that we have version control as well.
I further documented how each library of the archive was acquired or built, and if our mcsapi needs the static or shared variant. This way updates of dependent libraries should be easily possible in the future.
I further changed from dynamic googletest libraries to static googletest libraries and adapted the CMake scripts accordingly.
For QA:
Built the bulk write adapter on a clean Windows 10 machine according to the documentation and run the regression test suite.