fmipp / py-fmipp

FMI++ Python Interface
8 stars 3 forks source link

Issue Building Wheel for Windows #2

Open PeterMarkus opened 2 years ago

PeterMarkus commented 2 years ago

Hello, i´m using windows x64 and wanted to use py-fmipp but i´m having problems using it. If i understood correctly i have to build the fmi++ library using cmake/visual studio first to build the wheel for windows. But when i try to configure the fmi++ library i get errors at the tests:

  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.

Below is the full output from cmake when i hit configure. I´d be really thankful for some help! Regards Markus

Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19042.
The C compiler identification is MSVC 19.29.30145.0
The CXX compiler identification is MSVC 19.29.30145.0
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
Detecting C compile features
Detecting C compile features - done
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
Detecting CXX compile features
Detecting CXX compile features - done
Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found version "1.9.4 (5d15657a55555e6181a7830a5c723af75e7577e2)") found components: doxygen missing components: dot
Found SWIG: C:/repos/libs/swigwin_4.0.2/swigwin-4.0.2/swig.exe (found version "4.0.2")  
Found Java: C:/Program Files/Java/jdk-15.0.1/bin/java.exe (found version "15.0.1") 
Found JNI: C:/Program Files/Java/jdk-15.0.1/lib/jawt.lib  
Found PythonInterp: C:/Program Files (x86)/Python39-32/python.exe (found suitable version "3.9.7", minimum required is "2") 
Found PythonLibs: C:/Program Files (x86)/Python39-32/libs/python39.lib (found suitable version "3.9.7", minimum required is "2") 
CMake Warning (dev) at CMakeLists.txt:165 (find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  Environment variable Boost_ROOT is set to:

    C:\repos\libs\boost_1_74_0

  For compatibility, CMake is ignoring the variable.
This warning is for project developers.  Use -Wno-dev to suppress it.

Found Boost: C:/repos/libs/boost_1_74_0 (found version "1.74.0")  
CMake Deprecation Warning at import/swig/CMakeLists.txt:13 (cmake_policy):
  The OLD behavior for policy CMP0078 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

CMake Deprecation Warning at import/swig/CMakeLists.txt:14 (cmake_policy):
  The OLD behavior for policy CMP0086 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

CMake Warning (dev) at export/CMakeLists.txt:60 (find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  Environment variable Boost_ROOT is set to:

    C:\repos\libs\boost_1_74_0

  For compatibility, CMake is ignoring the variable.
This warning is for project developers.  Use -Wno-dev to suppress it.

Found Boost: C:/repos/libs/boost_1_74_0 (found version "1.74.0") found components: date_time system filesystem 
CMake Deprecation Warning at export/swig/CMakeLists.txt:12 (cmake_policy):
  The OLD behavior for policy CMP0078 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

CMake Deprecation Warning at export/swig/CMakeLists.txt:13 (cmake_policy):
  The OLD behavior for policy CMP0086 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.

Adding tests: Make sure the Boost libraries have been included in your PATH variable BEFORE you run CMake!!!
CMake Warning (dev) at test/CMakeLists.txt:87 (find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  Environment variable Boost_ROOT is set to:

    C:\repos\libs\boost_1_74_0

  For compatibility, CMake is ignoring the variable.
This warning is for project developers.  Use -Wno-dev to suppress it.

Found Boost: C:/repos/libs/boost_1_74_0 (found version "1.74.0") found components: system filesystem unit_test_framework 
Java JAR executable not available! Cannot build complete 'sine_standalone.fmu', regression tests can be run though.
Add test testFMUModelExchange for configuration Debug
Add test testFMUModelExchange for configuration Release
Add test testFMUModelExchange for configuration MinSizeRel
Add test testFMUModelExchange for configuration RelWithDebInfo
Add test testFMUIntegrator for configuration Debug
Add test testFMUIntegrator for configuration Release
Add test testFMUIntegrator for configuration MinSizeRel
Add test testFMUIntegrator for configuration RelWithDebInfo
Add test testIncrementalFMU for configuration Debug
Add test testIncrementalFMU for configuration Release
Add test testIncrementalFMU for configuration MinSizeRel
Add test testIncrementalFMU for configuration RelWithDebInfo
Add test testRollbackFMU for configuration Debug
Add test testRollbackFMU for configuration Release
Add test testRollbackFMU for configuration MinSizeRel
Add test testRollbackFMU for configuration RelWithDebInfo
Add test testFMIExportUtilities for configuration Debug
Add test testFMIExportUtilities for configuration Release
Add test testFMIExportUtilities for configuration MinSizeRel
Add test testFMIExportUtilities for configuration RelWithDebInfo
Add test testFMI2ExportUtilities for configuration Debug
Add test testFMI2ExportUtilities for configuration Release
Add test testFMI2ExportUtilities for configuration MinSizeRel
Add test testFMI2ExportUtilities for configuration RelWithDebInfo
Add test testFixedStepSizeFMU for configuration Debug
Add test testFixedStepSizeFMU for configuration Release
Add test testFixedStepSizeFMU for configuration MinSizeRel
Add test testFixedStepSizeFMU for configuration RelWithDebInfo
Add test testVariableStepSizeFMU for configuration Debug
Add test testVariableStepSizeFMU for configuration Release
Add test testVariableStepSizeFMU for configuration MinSizeRel
Add test testVariableStepSizeFMU for configuration RelWithDebInfo
Add test testInterpolatingFixedStepSizeFMU for configuration Debug
Add test testInterpolatingFixedStepSizeFMU for configuration Release
Add test testInterpolatingFixedStepSizeFMU for configuration MinSizeRel
Add test testInterpolatingFixedStepSizeFMU for configuration RelWithDebInfo
Add test testModelDescription for configuration Debug
Add test testModelDescription for configuration Release
Add test testModelDescription for configuration MinSizeRel
Add test testModelDescription for configuration RelWithDebInfo
Add test testModelManager for configuration Debug
Add test testModelManager for configuration Release
Add test testModelManager for configuration MinSizeRel
Add test testModelManager for configuration RelWithDebInfo
Add test testFMU2SDKImport for configuration Debug
Add test testFMU2SDKImport for configuration Release
Add test testFMU2SDKImport for configuration MinSizeRel
Add test testFMU2SDKImport for configuration RelWithDebInfo
Add test testFMU2Integrator for configuration Debug
Add test testFMU2Integrator for configuration Release
Add test testFMU2Integrator for configuration MinSizeRel
Add test testFMU2Integrator for configuration RelWithDebInfo
Add test testFMU2ModelExchange for configuration Debug
Add test testFMU2ModelExchange for configuration Release
Add test testFMU2ModelExchange for configuration MinSizeRel
Add test testFMU2ModelExchange for configuration RelWithDebInfo
Add test testFMUModelExchange_java for configuration Debug
Add test testFMUModelExchange_java for configuration Release
Add test testFMUModelExchange_java for configuration MinSizeRel
Add test testFMUModelExchange_java for configuration RelWithDebInfo
Add test testFMUCoSimulation_java for configuration Debug
Add test testFMUCoSimulation_java for configuration Release
Add test testFMUCoSimulation_java for configuration MinSizeRel
Add test testFMUCoSimulation_java for configuration RelWithDebInfo
Add test testIncrementalFMU_java for configuration Debug
Add test testIncrementalFMU_java for configuration Release
Add test testIncrementalFMU_java for configuration MinSizeRel
Add test testIncrementalFMU_java for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:226 (add_test_fmipp_python)

Add test testFMUModelExchange_python for configuration Debug
Add test testFMUModelExchange_python for configuration Release
Add test testFMUModelExchange_python for configuration MinSizeRel
Add test testFMUModelExchange_python for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:227 (add_test_fmipp_python)

Add test testFMUCoSimulation_python for configuration Debug
Add test testFMUCoSimulation_python for configuration Release
Add test testFMUCoSimulation_python for configuration MinSizeRel
Add test testFMUCoSimulation_python for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:228 (add_test_fmipp_python)

Add test testIncrementalFMU_python for configuration Debug
Add test testIncrementalFMU_python for configuration Release
Add test testIncrementalFMU_python for configuration MinSizeRel
Add test testIncrementalFMU_python for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:229 (add_test_fmipp_python)

Add test testRollbackFMU_python for configuration Debug
Add test testRollbackFMU_python for configuration Release
Add test testRollbackFMU_python for configuration MinSizeRel
Add test testRollbackFMU_python for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:230 (add_test_fmipp_python)

Add test testFixedStepSizeFMU_python for configuration Debug
Add test testFixedStepSizeFMU_python for configuration Release
Add test testFixedStepSizeFMU_python for configuration MinSizeRel
Add test testFixedStepSizeFMU_python for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:231 (add_test_fmipp_python)

Add test testVariableStepSizeFMU_python for configuration Debug
Add test testVariableStepSizeFMU_python for configuration Release
Add test testVariableStepSizeFMU_python for configuration MinSizeRel
Add test testVariableStepSizeFMU_python for configuration RelWithDebInfo
CMake Error at test/CMakeAddTests.txt:128 (FILE):
  FILE FILE([TO_CMAKE_PATH|TO_NATIVE_PATH] path result) must be called with
  exactly three arguments.
Call Stack (most recent call first):
  CMakeLists.txt:232 (add_test_fmipp_python)

Add test testInterpolatingFixedStepSizeFMU_python for configuration Debug
Add test testInterpolatingFixedStepSizeFMU_python for configuration Release
Add test testInterpolatingFixedStepSizeFMU_python for configuration MinSizeRel
Add test testInterpolatingFixedStepSizeFMU_python for configuration RelWithDebInfo
Configuring incomplete, errors occurred!
ewidl commented 2 years ago

You can find batch scripts for building FMI++ and the Python wrapper in directory release:

This works out of the box for me ...