pnoltes commented on issue #321:
URL: https://github.com/apache/celix/issues/321#issuecomment-787460256


   Hi,
   
   Indeed Celix currently is only build and tested on Linux and Mac. 
   
   I am not a windows expert, so take this with a grain of salt, but to get 
Celix running under windows I think we need to do the following:
   
   1) Update the Celix CMake files to handle dll libraries next to so (linux) 
and dylib (mac) libraries. 
   This is currently the error you are seeing. Apparently the 
cmake-generator-expresssion TARGET_SONAME_FILE does not work with dll 
libraries. Btw strange, because it does work with mac dylib libraries.
   https://cmake.org/cmake/help/v3.0/manual/cmake-generator-expressions.7.html
   
   2) Support pthread. Celix thread and mutex support is build on top of 
pthread. To get Celix running on windows the easiest way would be to support 
pthread. If I am correct this can be done with cygwin. 
   
   2) Be able do dynamically load dll libraries 
   Celix uses a load library abstraction:
   
https://github.com/apache/celix/blob/master/libs/framework/src/celix_library_loader.h
   And currently there is only a dlopen implementation, but In the beginning of 
Celix (around 2010/2011) we also had an DLL loading abstraction. This could be 
reintroduced (i.e. compile a  celix_windows_library_loader.c instead of 
celix_library_loader.c on windows).  
   
   4) If I am correct with windows C/C++ functions need to explicitly declared 
exported in a library. This is currently not done and needs to be done for lib 
framework, utils and the bundle activators.
   
   5) Setup a CI pipeline to ensure Celix works and keeps working for a windows 
environment. 
   
   Hopefully this helps in getting a better overview were Celix stands with 
respect for Windows support. 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to