agency icon indicating copy to clipboard operation
agency copied to clipboard

Windows support?

Open leha-bot opened this issue 4 years ago • 4 comments

leha-bot avatar Jul 06 '20 15:07 leha-bot

In principle, Agency should compile on Windows, though I have not tried to do so recently.

Have you? If so, what happened?

jaredhoberock avatar Jul 06 '20 17:07 jaredhoberock

I tried to compile some work projects with MSVC2019 and CUDA 10.2 SDK, but had a bunch of errors related to some Agency internal macros:

D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(71): error : expected a ")"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(85): error : expected a ")"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(90): error : static and nonstatic member functions with same parameter types cannot be overloaded
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : expected a ")"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : expected a ","
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : a nontype template parameter may not have class type
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : expected an identifier
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : this declaration has no storage class or type specifier
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : not a valid member class or function template declaration
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(204): error : expected a ";"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(213): warning : parsing restarts here after previous syntax error
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(236): error : expected a ")"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(236): error : expected a "," or ">"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(236): error : a nontype template parameter may not have class type
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(236): error : the global scope has no "value"
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(236): error : member "agency::bulk_guarantee_t::unsequenced_t::and" is not a valid class member template
D:\lib\agency\agency\execution\executor\properties\bulk_guarantee.hpp(236): error : expected a ";"

...

I'll try to make minimal reproducible example

leha-bot avatar Jul 07 '20 08:07 leha-bot

Thanks for looking into it. Probably around ~5 years ago I tried with whatever version of MSVC was current at the time, and that implementation had trouble with Agency's use of constexpr. Agency uses only C++11 features, so I expect a recent version of MSVC will be able to deal with the codebase, provided that these macro issues are sorted out.

Unfortunately, I don't have access to a Windows development machine, so I'll need to rely on others to help me address these issues with MSVC. A minimal reproducible example will be helpful, thanks.

jaredhoberock avatar Jul 07 '20 16:07 jaredhoberock

I tried to compile examples using CMake and have had some patches now; I'll send it ASAP. Also I made some ad-hoc find_package module for proper library adding into the project. If you're interested, I'll try to make PRs for CMake find_package() support and Windows fixes. Thank you.

leha-bot avatar Jul 20 '20 14:07 leha-bot