andyfox - 2020-03-30

My company delivered an application on a controller a few years ago. I just added some capabilities to the application. The existing controller (at the customer site) has an older version of the Codesys runtime than the controller I have. I get a warning when I login to the device - The device version "3.5.4.20" in the project is older than the connected device. It is recommended to cancel the operation and manually update the device to version "3.5.9.30". If I ignore this warning, everything appears to function normally. If I update the device, I get ten C0136 messages, e.g. "ambiguous use of name 'SYSTIMEDATE'", "ambiguous use of name 'SysTimeRtcGet'. There are also three C0180 messages, e.g. "Ambiguous namespace 'SYSTIMERTC' defined by library 'SysTimeRtc, 3.5.5.0 (System). There are three versions of this library because AlarmManager has a dependency on version 3.5.5.0, SysTimeRtc specifies 3.5.1.0 directly, and System VisuElems has a dependency on 3.4.1.20. What is the best strategy for resolving this? I'll have an opportunity to visit the customer, so I could bring a new controller with the newer Codesys runtime.