WEC iMX6 BSP 1.4b2 Build Errors: Could not find _filesys.dll or registry.fdf

Hi, I’m running into an issue trying to build with the latest BSP for WEC2013 (1.4b2). Firstly, I ran this build error:

_filesys.dll C:\Users\zach.hannum\Documents\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\_filesys.dll NK SHK 
  
EXEC : error : failed setting line [C:\WINCE800\public\common\oak\misc\makeimg.proj]
C:\WINCE800\public\common\oak\misc\makeimg.proj(663,5): error MSB3073: The command "romimage C:\Users\zach.hannum\Documents\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\ce.bib  " exited with code 1.
Done Building Project "C:\WINCE800\public\common\oak\misc\makeimg.proj" (default targets) -- FAILED.
Build FAILED.
"C:\WINCE800\public\common\oak\misc\makeimg.proj" (default target) (1) ->
(RunRomImage target) -> 
  EXEC : error : Could not find file 'C:\Users\zach.hannum\Documents\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\_filesys.dll' on disk [C:\WINCE800\public\common\oak\misc\makeimg.proj]
  EXEC : error : failed setting line [C:\WINCE800\public\common\oak\misc\makeimg.proj]
  C:\WINCE800\public\common\oak\misc\makeimg.proj(663,5): error MSB3073: The command "romimage C:\Users\zach.hannum\Documents\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\ce.bib  " exited with code 1.
    0 Warning(s)
    3 Error(s)

So I noticed the line _filesys.dll $(_FLATRELEASEDIR)\_filesys.dll NK SHK in platform.bib. I modified this line to be filesys.dll $(_FLATRELEASEDIR)\filesys.dll NK SHK. Now, build outputs this:

EXEC : warning : Found duplicate entry 'filesys.dll    NK               C:\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\filesys.dll 00000007' ... skipping [C:\WINCE800\public\common\oak\misc\makeimg.proj] {log="C:\WINCE800\build.log(12723)"}
EXEC : error : Could not find file 'C:\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\registry.fdf' on disk [C:\WINCE800\public\common\oak\misc\makeimg.proj] {log="C:\WINCE800\build.log(12731)"}
EXEC : error : failed setting line [C:\WINCE800\public\common\oak\misc\makeimg.proj] {log="C:\WINCE800\build.log(12734)"}
C:\WINCE800\public\common\oak\misc\makeimg.proj(663,5): error MSB3073: The command "romimage C:\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\ce.bib  " exited with code 1. {log="C:\WINCE800\build.log(12735)"}
  EXEC : warning : Found duplicate entry 'filesys.dll    NK               C:\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\filesys.dll 00000007' ... skipping [C:\WINCE800\public\common\oak\misc\makeimg.proj] {log="C:\WINCE800\build.log(12742)"}
  EXEC : error : Could not find file 'C:\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\registry.fdf' on disk [C:\WINCE800\public\common\oak\misc\makeimg.proj] {log="C:\WINCE800\build.log(12747)"}
  EXEC : error : failed setting line [C:\WINCE800\public\common\oak\misc\makeimg.proj] {log="C:\WINCE800\build.log(12748)"}
  C:\WINCE800\public\common\oak\misc\makeimg.proj(663,5): error MSB3073: The command "romimage C:\E371_SVN\software\control_module\trunk_maybe_branch\os\IMX6_Core2013\RelDir\TORADEXIMX6BIN_ARMV7_Release\ce.bib  " exited with code 1. {log="C:\WINCE800\build.log(12749)"}
BLDDEMO: ERROR: Error(s) in makeimg phase. See C:\WINCE800\build.log for details. {log="C:\WINCE800\build.log(12756)"}

I’m assuming using the underscore with filesys.dll and using registry.fdf are a part of the speed optimizations, but what exactly is going on here? Is there a fix? Thank you in advance!

By the way, I get these same errors with the provided IMX6 pbxml project (1.4b2), BSP, the latest Windows Embedded Compact 2013 updates from here: https://www.microsoft.com/en-us/download/details.aspx?id=42027

Hi,

I found the issue and we will fix it in next release.
For now please rename file

TORADEXIMX6-preri.bat 

to

TORADEXIMX6BIN-preri.bat

The OS now builds, but fails in the bootloader. This is the output while booting:

Toradex Windows CE 8.0 1.4b2
 for iMX6 Built on Jun 19 2018
Colibri iMX6 Solo 256MB IT
Wait mode Disabled
SMP support disabled
Registry is empty. Loading default values.
Registry loaded.
Loading Display...
IPU base driver is not loaded.
ERROR: c:\wince800\platform\toradeximx6\src\soc\common_fsl_v4\ipuv3\base\sdk\ipuv3_base_sdk.cpp line 95: IPUV3BaseOpenHandle:  CreateFile IPU_BASE failed!
Error accessing IPU base driver.
Exception 'Data Abort' (0x4): Thread-Id=00f0000e(pth=af80d730), Proc-Id=00400002(pprc=8640cae0) 'NK.EXE', VM-active=00400002(pprc=8640cae0) 'NK.EXE'
PC=ef6ea16f(ipuv3flat.dll+0x0000a16f) RA=ef6ea0ab(ipuv3flat.dll+0x0000a0ab) SP=bbbaf708, BVA=00000020

I just tested this and it works OK for me. Do you maybe have config block changes? What is your bootloader version? Do you do any changes to OS design?

In the 1.4b2 release we changed the way drivers are loaded at boot, to reduce boot time. You can find more information about this here:

If you did not update platform.reg in your or design this may not work.