[ 
https://issues.apache.org/jira/browse/MESOS-10219?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17364913#comment-17364913
 ] 

acecile5555555 edited comment on MESOS-10219 at 6/17/21, 12:30 PM:
-------------------------------------------------------------------

So I ended up creating a file longPathAware.manifest:
{noformat}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level='asInvoker' uiAccess='false' />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <windowsSettings 
xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings";>
    <ws2:longPathAware>true</ws2:longPathAware>
  </windowsSettings>
</assembly>
{noformat}
And applied it to relevant exe file using:
{noformat}
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-agent.exe;1"
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-containerizer.exe;1"
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-executor.exe;1"
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-fetcher.exe;1"
{noformat}
And of course, I enabled long path support from local machine policies (you can 
easily find this on Google).
 It definitely helps as I can now access from HTTP interface executor 
stdout/stderr which never worked before:

!mesos_slave_windows_longpath.png!

Sadly it's still not starting and I'm running out of ideas now....

{noformat}
WARNING: Logging before InitGoogleLogging() is written to STDERR

W0617 12:27:04.621778  7352 exec.hpp:423] Failed to call `CreateProcess`: 
mesos-executor.exe --launcher_dir=C:\mesos\bin
{noformat}

Any help ? Mesos ?


was (Author: acecile5555555):
So I ended up creating a file longPathAware.manifest:
{noformat}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level='asInvoker' uiAccess='false' />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <windowsSettings 
xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings";>
    <ws2:longPathAware>true</ws2:longPathAware>
  </windowsSettings>
</assembly>
{noformat}
And applied it to relevant exe file using:
{noformat}
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-agent.exe;1"
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-containerizer.exe;1"
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-executor.exe;1"
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\mt.exe" -nologo 
-manifest test.manifest -outputresource:"mesos-fetcher.exe;1"
{noformat}
And of course, I enabled long path support from local machine policies (you can 
easily find this on Google).
 It definitely helps as I can now access from HTTP interface executor 
stdout/stderr which never worked before:

 

!mesos_slave_windows_longpath.png!

> 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: mesos_slave_windows_longpath.png, 
> 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)

Reply via email to