I'm maintaining two OS images for our developers: one for x86 (VirtualPC BSP) and one for a device with an ARMV7 CPU (some TI OMAP thing). Some of our application developers prefer not to use ActiveSync bootstrapping when developing, so I preinstall ConmanClient2 into the development OS images. I do this as a Pre-Make Image step, taking the binaries from "%CommonProgramFiles%\Microsoft Shared\CoreCon\1.0\Target\wce400\%_TGTCPU%\*.*".
The application developer then starts conmanclient manually, usually through a desktop link (haven't implemented autostarting it yet).
That works fine for x86, but not for the ARMV7 device: VS2008 compains "Connection failed. The version of Conman Client running on the device is incompatible with the desktop. Bootstrap the device with desktop compatible device binaries and try connecting again."
After fiddling around a bit I recalled reading something that VS2008 doesn't support ARMV6 and ARMV7 and went and preinstalled ARMV4I ConmanClient2 binaries on the target device instead, which works.
My problem is, I'm not sure whether this is how it's supposed to work. Is it OK/required to use armv4i binaries for armv7 targets?
- Edited by Kartoffelsalat Wednesday, April 27, 2011 4:45 PM Changed "developer" to "application developer"
OK. Considering the following from the WEC7 release notes:
"Visual Studio Smart Device (VSD) native development will compile ARMv4i code for all Compact 7 ARM-based devices. SDK packages derived from ARM OS Designs will be designated as ARMv4i devices when installed against Visual Studio 2008 SP1. Applications built from those SDKs (using Smart Device Projects in Visual Studio) will be compiled and linked as ARMv4i applications. Applications built in this manner should only be deployed to devices running the OS Design from which the SDK was created.",
And that the ARMV7 target's SDK properties.xml says somewhere idefamily="armv4i",
And that VS2008 deploys the binaries from C:\Program Files\Common Files\Microsoft Shared\CoreCon\1.0\Target\wce400\armv4i when I use ActiveSync bootstrapping,
I guess at this point it's pretty much OK if I preinstall ARMV4i corecon binaries rather than what _TGTCPU says.
- Marked as answer by Kartoffelsalat Thursday, April 28, 2011 9:48 AM