[
https://issues.apache.org/jira/browse/MESOS-10219?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17364787#comment-17364787
]
Andreas Peters commented on MESOS-10219:
----------------------------------------
[~acecile5555555] How about to use the Windows native function instead of the
posix one?
> 1.11.0 does not build on Windows
> --------------------------------
>
> Key: MESOS-10219
> URL: https://issues.apache.org/jira/browse/MESOS-10219
> Project: Mesos
> Issue Type: Bug
> Components: agent, build, cmake
> Affects Versions: 1.11.0
> Reporter: acecile5555555
> Priority: Major
> Attachments: patch_1.10.0_windows_build.diff
>
>
> Hello,
>
> I just tried building Mesos 1.11.0 on Windows and this is not working.
>
> The first issue is libarchive compilation that can be easily workarounded by
> adding the following hunk to 3rdparty/libarchive-3.3.2.patch:
> {noformat}
> --- a/CMakeLists.txt
> +++ b/CMakeLists.txt
> @@ -137,7 +137,7 @@
> # This is added into CMAKE_C_FLAGS when CMAKE_BUILD_TYPE is "Debug"
> # Enable level 4 C4061: The enumerate has no associated handler in a switch
> # statement.
> - SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /we4061")
> + #SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /we4061")
> # Enable level 4 C4254: A larger bit field was assigned to a smaller bit
> # field.
> SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /we4254")
> {noformat}
> Sadly it is failing later with issue I cannot solve myself:
> {noformat}
> C:\Users\earthlab\mesos\src\csi/state.hpp(22,10): fatal error C1083: Cannot
> open include file: 'csi/state.pb.h': No such file or directory (compiling
> source file C:\Users\earthlab\mesos\src\slave\csi_server.cpp)
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> qos_controller.cpp
> resource_estimator.cpp
> slave.cpp
> state.cpp
> task_status_update_manager.cpp
> sandbox.cpp
> C:\Users\earthlab\mesos\src\csi/state.hpp(22,10): fatal error C1083: Cannot
> open include file: 'csi/state.pb.h': No such file or directory (compiling
> source file C:\Users\earthlab\mesos\src\slave\slave.cpp)
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> composing.cpp
> isolator.cpp
> C:\Users\earthlab\mesos\src\csi/state.hpp(22,10): fatal error C1083: Cannot
> open include file: 'csi/state.pb.h': No such file or directory (compiling
> source file C:\Users\earthlab\mesos\src\slave\task_status_update_manager.cpp)
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> isolator_tracker.cpp
> launch.cpp
> C:\Users\earthlab\mesos\src\csi/state.hpp(22,10): fatal error C1083: Cannot
> open include file: 'csi/state.pb.h': No such file or directory (compiling
> source file C:\Users\earthlab\mesos\src\slave\containerizer\composing.cpp)
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> launcher.cpp
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp(524,34):
> error C2668: 'os::spawn': ambiguous call to overloaded function
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> C:\Users\earthlab\mesos\3rdparty\stout\include\stout/os/exec.hpp(52,20):
> message : could be 'Option<T> os::spawn(const std::string &,const
> std::vector<std::string,std::allocator<std::string>> &)'
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> with
> [
> T=int
> ] (compiling source file
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp)
> C:\Users\earthlab\mesos\3rdparty\stout\include\stout/os/windows/exec.hpp(412,20):
> message : or 'Option<T> os::spawn(const std::string &,const
> std::vector<std::string,std::allocator<std::string>> &,const
> Option<std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const
> std::string,std::string>>>> &)'
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> with
> [
> T=int
> ] (compiling source file
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp)
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp(525,75):
> message : while trying to match the argument list '(const char [3],
> initializer list)' [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp(893,47):
> error C2668: 'os::spawn': ambiguous call to overloaded function
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> C:\Users\earthlab\mesos\3rdparty\stout\include\stout/os/exec.hpp(52,20):
> message : could be 'Option<T> os::spawn(const std::string &,const
> std::vector<std::string,std::allocator<std::string>> &)'
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> with
> [
> T=int
> ] (compiling source file
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp)
> C:\Users\earthlab\mesos\3rdparty\stout\include\stout/os/windows/exec.hpp(412,20):
> message : or 'Option<T> os::spawn(const std::string &,const
> std::vector<std::string,std::allocator<std::string>> &,const
> Option<std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const
> std::string,std::string>>>> &)'
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> with
> [
> T=int
> ] (compiling source file
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp)
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launch.cpp(893,47):
> message : while trying to match the argument list '(const std::string,
> std::vector<std::string,std::allocator<std::string>>)'
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> launcher_tracker.cpp
> C:\Users\earthlab\mesos\src\csi/state.hpp(22,10): fatal error C1083: Cannot
> open include file: 'csi/state.pb.h': No such file or directory (compiling
> source file
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launcher.cpp)
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> mount.cpp
> switchboard.cpp
> C:\Users\earthlab\mesos\src\csi/state.hpp(22,10): fatal error C1083: Cannot
> open include file: 'csi/state.pb.h': No such file or directory (compiling
> source file
> C:\Users\earthlab\mesos\src\slave\containerizer\mesos\launcher_tracker.cpp)
> [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> environment_secret.cpp
> posix.cpp
> backend.cpp
> provisioner.cpp
> store.cpp
> authenticatee.cpp
> authenticator.cpp
> auxprop.cpp
> basic_authenticatee.cpp
> basic_authenticator_factory.cpp
> combined_authenticator.cpp
> acls.cpp
> build.cpp
> command_utils.cpp
> protobuf_utils.cpp
> resource_quantities.cpp
> resources_utils.cpp
> roles.cpp
> type_utils.cpp
> exec.cpp
> v0_v1executor.cpp
> files.cpp
> hdfs.cpp
> checker.cpp
> checker_process.cpp
> health_checker.cpp
> devolve.cpp
> evolve.cpp
> logging.cpp
> framework.cpp
> maintenance.cpp
> master.cpp
> quota.cpp
> quota_handler.cpp
> readonly_handler.cpp
> registry_operations.cpp
> weights.cpp
> weights_handler.cpp
> allocator.cpp
> hierarchical.cpp
> offer_constraints_filter.cpp
> C:\Users\earthlab\mesos\src\master\allocator\mesos\offer_constraints_filter.cpp(26,10):
> fatal error C1083: Cannot open include file: 're2/re2.h': No such file or
> directory [C:\Users\earthlab\mesos\build\src\mesos.vcxproj]
> messages.cpp
> daemon.cpp
> driver.cpp
> disk_profile_adaptor.cpp
> sched.cpp
> scheduler.cpp
> resolver.cpp
> in_memory.cpp
> operation.cpp
> curl.cpp
> hadoop.cpp
> usage.cpp
> mesos.cpp
> version.cpp
> whitelist_watcher.cpp
> authentication.cpp
> group.cpp
> cpu.cpp
> mem.cpp
> windows.cpp{noformat}
> If you're interested in getting it built, I'll keep my Windows VM for a
> moment.
> I'm restarting with older version to see if it goes better.
>
> Best regards, Adam.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)