csp icon indicating copy to clipboard operation
csp copied to clipboard

Visibility too restrictive for externally defined C++ nodes & adapters

Open wrieg123 opened this issue 1 year ago • 5 comments

Describe the bug This PR introduced hidden visibility for most symbols in the build on non-windows machines. Unfortunately, this hides too many symbols that would be used in external C++ adapters and node definitions.

Error Message (from build then run of the c++ example nodes, for instance) symbol not found in flat namespace __________

wrieg123 avatar Sep 29 '24 14:09 wrieg123

Can you paste the actual link error that you hit

robambalu avatar Sep 29 '24 23:09 robambalu

symbol not found in flat namespace '__ZN3csp4Node11createAlarmERNSt3__110shared_ptrIKNS_7CspTypeEEEm'
symbol not found in flat namespace '__ZN3csp4EnumINS_7CspType10TypeTraitsEE7mappingEv'
symbol not found in flat namespace '__ZN3csp12CspArrayType6createERKNSt3__110shared_ptrIKNS_7CspTypeEEEb'

createAlarm from a node definition. While Enum and CspArrayType are from the partially defined func's used in the various message mappers.

wrieg123 avatar Sep 29 '24 23:09 wrieg123

From this example

symbol not found in flat namespace '__ZN3csp14CycleStepTable8scheduleEPNS_8ConsumerE'

wrieg123 avatar Sep 29 '24 23:09 wrieg123

Thanks Will - I can repro this using our CPP examples. As @svatasoiu is out for the next 2 weeks I'll try to take a look at a fix.

AdamGlustein avatar Sep 30 '24 12:09 AdamGlustein

No problem. I'll try to produce a repro using an adapter or types sometime this week.

wrieg123 avatar Sep 30 '24 12:09 wrieg123