Support Request #7356
closedCan not compile Device Toolbox 3.0.0 examples against ADTF 3.5.0
Description
Supportanfrage
I got error when build the adtf-device toolbox with the adtf3.5 SDK. In this mail I attach the error log.
I copied source, bin and other folders from \\audiins23453768.in.audi.vwg\ArtefaktePublic\fas.sdks\adtf-device-toolbox\3.0.0\adtf-device-toolbox-3.0.0-VC14_3x64__ADTF3_1907.zip<file://audiins23453768.in.audi.vwg/ArtefaktePublic/fas.sdks/adtf-device-toolbox/3.0.0/adtf-device-toolbox-3.0.0-VC14_3x64__ADTF3_1907.zip>.
But it build properly with adtf3.4 SDK (VC14_3x64__ADTF3_1907).
1>------ Erstellen gestartet: Projekt: demo_can_decoder, Konfiguration: Debug x64 ------
1>demo_can_decoder.cpp
1>C:\dev\adtf\adtf-device-toolbox\tags\V3_0_0\src\examples\src\can_config_decoder\demo_can_decoder.cpp(66): warning C4996: 'adtf_util::cDOM::cDOM': This is deprecated. See documentation for further information!
1>c:\fas\sdks\adtf\v3_5_0_vc15_9x64\pkg\a_utils\include\a_utils\std\dom.h(489): note: Siehe Deklaration von "adtf_util::cDOM::cDOM"
1>c:\fas\sdks\adtf\v3_5_0_vc15_9x64\pkg\adtffiltersdk\include\adtffiltersdk\standardfilter\triggered_filter.h(79): error C2039: "SetParentFullName": Ist kein Element von "cCAN2DDLFilter"
1>c:\dev\adtf\adtf-device-toolbox\tags\v3_0_0\src\examples\src\can_config_decoder\demo_can_decoder.h(22): note: Siehe Deklaration von "cCAN2DDLFilter"
1>c:\fas\sdks\adtf\v3_5_0_vc15_9x64\pkg\adtffiltersdk\include\adtffiltersdk\standardfilter\triggered_filter.h(77): note: Bei der Kompilierung von Klasse Vorlage der tResult adtf::filter::ant::triggered_filter<TriggerFunctionImpl>::SetParent(const adtf::ucom::ant::IObject *)-Memberfunktion
1> with
1> [
1> TriggerFunctionImpl=cCAN2DDLFilter
1> ]
1>c:\fas\sdks\adtf\v3_5_0_vc15_9x64\pkg\adtffiltersdk\include\adtffiltersdk\standardfilter\data_triggered_filter.h(39): note: Siehe Verweis auf die Klasse Vorlage-Instanziierung "adtf::filter::ant::triggered_filter<TriggerFunctionImpl>", die kompiliert wird.
1> with
1> [
1> TriggerFunctionImpl=cCAN2DDLFilter
1> ]
1>C:\dev\adtf\adtf-device-toolbox\tags\V3_0_0\src\examples\src\can_config_decoder\demo_can_decoder.cpp(27): note: Siehe Verweis auf die Klasse Vorlage-Instanziierung "adtf::filter::ant::data_triggered_filter<cCAN2DDLFilter,pintriggerlist>", die kompiliert wird.
1>Die Erstellung des Projekts "demo_can_decoder.vcxproj" ist abgeschlossen -- FEHLER. ========== Erstellen: 0 erfolgreich, 1 fehlerhaft, 0 aktuell, 0 übersprungen ==========
Lösung
Ist bekannt, die Devices haben nur die allgemeinen Namespaces angezogen (ohne Versions-Namespace, z.B. ant/bat/catwo/devil).
Das führt dazu, dass automatisch der ::flash Filter SDK verwendet wird, hier kann es an der ein oder anderen Ecke knallen.
Dies wurde zu 3.1.0 behoben, kommt innerhalb der nächsten Wochen, auch gleich mit ADTF 3.6.0 und VS2017/VC141 Support.
Workaround für euch aktuell:
Examples so anpassen, dass die "alten" Abhängigkeiten vollqualifiziert angezogen werden.
Files