none
Third Party Catalog Items is not generating corresponding .dll??? RRS feed

  • Question

  • Hello Friends,

    I have added one third party FTDI folder under Public and under catalog items I can see the entry. When I select the corresponding entry with variable name as  SYSGEN_FTDI_VCP_ARM_CE700 and when I build the system I cannot see the corresponding .dll...

    I have also included it in the  platform.reg files as 

    IF SYSGEN_FTDI_VCP_ARM_CE700
    #include "$(_TARGETPLATROOT)\SRC\DRIVERS\FTDI\ftdi.reg"
    ENDIF
    

    and platform.bib as

    #if (defined SYSGEN_FTDI_VCP_ARM_CE700)
    ftdi_ser.dll	$(_TARGETPLATROOT)\src\DRIVERS\FTDI\ftdi_ser.dll NK SHK
    #endif

    and still the building process is not generating corresponding driver ...

    I think so I have done the correct way of adding the third party catalog items...

    If it is not correct and i have to add additional thing then please tell me ??????

    Thursday, November 20, 2014 9:04 AM

All replies

  • Post sources file and build log that you get if you re-build only that folder.

    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Thursday, November 20, 2014 10:48 AM
  • Hello Keshava,

    Actually, the thing is that when I open OSDesign, I cannot see the particular folder under Drivers location. But when I traverse via C:\Wince700\platform ... ..\.. \..\Drivers

    Then I can see the FTDI folder.

    I have also added this folder entry in dirs under Drivers but still it did not work for me and I think so in this case I cannot build the corresponding folder only....????

    Thursday, November 20, 2014 11:37 AM
  • Post sources file

    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Thursday, November 20, 2014 12:30 PM
  • Is there a sources file in that folder? If not, create one! :)

    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Thursday, November 20, 2014 12:32 PM
  • Is there a sources/dirs file in that folder? If not, create one! :)

    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Thursday, November 20, 2014 12:40 PM
  • Hello Friends,

    @Keshava

    I have copied all the corresponding folder in the .\.\Drivers\FTDI and also made entries in  platform.bib  and platform.reg  as

    ; FTDI Driver
    #if (defined SYSGEN_FTDI_VCP_ARM_CE700)
    ftdi_ser.dll	$(_TARGETPLATROOT)\src\DRIVERS\FTDI\ftdi_ser.dll NK SHK
    #endif


    IF SYSGEN_FTDI_VCP_ARM_CE700
    #include "$(_TARGETPLATROOT)\SRC\DRIVERS\FTDI\ftdi_ser.reg"
    ENDIF
    

    But now I am getting only one error as shown below -

    BUILD: [04:0000000900:ERRORE] Error(s) in directory "C:\WINCE700\platform\AM335xPhytec\SRC\DRIVERS\FTDI\".
    BUILD: [04:0000000901:ERRORE] NMAKE : fatal error U1073: don't know how to make 'FTDI_VCP_ARM_CE700.def'
    BUILD: [04:0000000902:INFO  ] Stop.

    I have only these files

    .bib
    .dat
    .db
    .pbpxml
    .reg
    makefile
    sources
    .dll

    As, I don't have any .def file

    How to over come these issue?????

    Friday, November 21, 2014 5:56 AM
  • Find / create that def file

    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Friday, November 21, 2014 6:04 AM
  • Hello Keshava,

    Thanks for quick reply but I know if not available then I have to create.. But I was asking that is there any way that we can build it without .def file???

    Friday, November 21, 2014 6:07 AM
  • AFAIK, No.

    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Friday, November 21, 2014 6:29 AM
  • Hello Friends,

    @Keshava, I have created the .def file but after full build I got one error related to MakeImage as shown below -

    MAKEIMG: ERROR: An error occurred while making the image. Please inspect the image log.

    I knw why its coming, actually the entries what I have added in .reg and .bib file that entries and out of this corresponding .bib file is unable to find ftdi.dll

    But the corresponding Ftd.dll is not generated after building ????

    Here is the default soruces code -

    WINCEREL=1
    RELEASETYPE=LOCAL
    _ISVINCPATH=$(_WINCEROOT)\public\common\sdk\inc;
    _OEMINCPATH=$(_WINCEROOT)\public\common\oak\inc;$(_WINCEROOT)\public\common\sdk\inc;
    
    TARGETNAME=FTDI_VCP_ARM_CE700
    
    FILE_VIEW_ROOT_FOLDER= \
      ReadMe.txt \
      prelink.bat \
      postlink.bat \
    
    FILE_VIEW_RESOURCE_FOLDER= \
        .\Resources\ftdi_ser.dll \
    
    
    FILE_VIEW_INCLUDES_FOLDER= \
    
    SOURCES= \
    
    TARGETTYPE=NOTARGET
    PRECOMPILED_CXX=1
    TARGETLIBS= \
    
    
    POSTLINK_PASS_CMD=postlink.bat
    PRELINK_PASS_CMD=prelink.bat
    
    FILE_VIEW_PARAMETER_FOLDER= \
      FTDI_VCP_ARM_CE700.bib \
      FTDI_VCP_ARM_CE700.reg \
      FTDI_VCP_ARM_CE700.dat \
      FTDI_VCP_ARM_CE700.db \
      ProjSysgen.bat 
    RESOURCEONLYDLL=1
    

    Its generating .lib only...????

    Friday, November 21, 2014 9:10 AM
  • Hello Friends,

    After adding certain things in the sources file as -

    TARGETTYPE=DYNLINK
    DLLENTRY=_DllMainCRTStartup

    I am having the linking error as shown below -

    Error(s) in directory "C:\WINCE700\platform\AM335xPhytec\SRC\DRIVERS\FTDI\".
    BUILD: [04:0000002211:ERRORE] corelib0.lib(dllmain.obj) : error LNK2019: unresolved external symbol DisableThreadLibraryCalls referenced in function DllMain
    BUILD: [04:0000002212:ERRORE] corelib0.lib(exitproc_proxy.obj) : error LNK2019: unresolved external symbol TerminateProcess referenced in function __crt_ExitProcess
    BUILD: [04:0000002213:ERRORE] obj\ARMV7\debug\FTDI_VCP_ARM_CE700.dll : fatal error LNK1120: 2 unresolved externals
    BUILD: [04:0000002214:ERRORE] NMAKE : fatal error U1077: 'C:\WINCE700\sdk\bin\i386\ARM\link.EXE' : return code '0x460'
    BUILD: [04:0000002215:INFO  ] Stop.

    First time I have seen this error in my life and I am also trying to solve the issue. If some one already knew then please help to solve the issue ???

    Friday, November 21, 2014 9:52 AM
  • Hi,

    You already has a .dll file. Then why you are using below two in your sources file?

    TARGETTYPE=DYNLINK
    DLLENTRY
    =_DllMainCRTStartup

     It looks this is binary only source from FTDI. May be you can remove RELEASETYPE=LOCAL and try once.

    You may also read the PDF Build Porting Guide for Windows Embedded Compact 7.pdf, it is available at the following path c:\programfiles\windows embedded compact7\documentation.

    Regards,

    GSR

    Friday, November 21, 2014 10:47 AM
  • Hello Keshava,

    I have done the changes as mentioned above. 

    Now, the FTDI folder is compiling without any error but when I build the full OSDesign, I found the below error as hsonw below -

    Error: Could not find file 'C:\WINCE700\OSDesigns\Enventure\Enventure\RelDir\PHYTEC_AM335x_BSP_ARMV7_Debug\ftdi_ser.dll' on disk
      ftdi_ser.dll C:\WINCE700\OSDesigns\Enventure\Enventure\RelDir\PHYTEC_AM335x_BSP_ARMV7_Debug\ftdi_ser.dll NK SHK 

    The error is related to ftdi_ser.dll; its unable to find the corresponding .dll in the corresponding location. As, I am using the below location.

    ; FTDI Driver
    #if (defined SYSGEN_FTDI_VCP_ARM_CE700)
    ftdi_ser.dll	$(_FLATRELEASEDIR)\ftdi_ser.dll NK SHK
    #endif

    But, manually I have also checked that in release directory, there is no ftdi_ser.dll ????

    Friday, November 21, 2014 12:04 PM
  • Can you show the list of changes and file contents?

    Looks the file is not getting copied.

    Regards,

    GSR

    Friday, November 21, 2014 1:17 PM
  • Hello Keshava,

    The sources file contents are as -

    WINCEREL=1
    RELEASETYPE=OAK
    _ISVINCPATH=$(_WINCEROOT)\public\common\sdk\inc;
    _OEMINCPATH=$(_WINCEROOT)\public\common\oak\inc;$(_WINCEROOT)\public\common\sdk\inc;
    
    TARGETNAME=FTDI_VCP_ARM_CE700
    
    FILE_VIEW_ROOT_FOLDER= \
      ReadMe.txt \
      prelink.bat \
      postlink.bat \
    
    FILE_VIEW_RESOURCE_FOLDER= \
        .\Resources\ftdi_ser.dll \
    
    
    FILE_VIEW_INCLUDES_FOLDER= \
    
    SOURCES= \
    
    TARGETTYPE=NOTARGET
    PRECOMPILED_CXX=1
    TARGETLIBS= \
    
    
    POSTLINK_PASS_CMD=postlink.bat
    PRELINK_PASS_CMD=prelink.bat
    
    FILE_VIEW_PARAMETER_FOLDER= \
      FTDI_VCP_ARM_CE700.bib \
      FTDI_VCP_ARM_CE700.reg \
      FTDI_VCP_ARM_CE700.dat \
      FTDI_VCP_ARM_CE700.db \
      ProjSysgen.bat 
    


    The FTDI_VCP_ARM_Ce700.reg contents are as - 

    ;#
    ;#CEContentWiz
    ;#(c)2010-13 David Jones 
    ;#
    ;#FTDI_VCP_ARM_CE700
    ;#
    
    ;MinShell Menu Registry Entries;==============================
    
    ;Content Registry Entries
    ;========================
    ;# FTDI.reg
    [HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FTDI_DEVICE]
    "Version"="1.1.0.20"
    "Prefix"="COM"
    "Dll"="ftdi_ser.dll"
    "ConfigData"=hex:\
          01,00,3f,3f,10,27,88,13,c4,09,e2,04,71,02,38,41,9c,80,4e,c0,34,00,1a,00,0d,\
          00,06,40,03,80,00,00,d0,80
    "InitialIndex"=dword:00000006
    "DeviceArrayIndex"=dword:00000004
    "LatencyTimer"=dword:00000010
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24577\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24592\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24593\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24596\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24597\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    


    The directory structure are as -

    Drivers\FTDI-

    *Resources\ftdi_ser.dll

    *.bib,.reg,.dat, makefile, sources...

    and the corresponding entries in platform.reg are as -

    IF SYSGEN_FTDI_VCP_ARM_CE700
    #include "$(_TARGETPLATROOT)\SRC\DRIVERS\FTDI\FTDI_VCP_ARM_CE700.reg"
    ENDIF

    and platform.bib are as -

    #if (defined SYSGEN_FTDI_VCP_ARM_CE700)
    ftdi_ser.dll	$(_TARGETPLATROOT)\src\DRIVERS\FTDI\Resources\ftdi_ser.dll NK SHK
    #endif
    

    Monday, November 24, 2014 4:45 AM
  • Hi,

    Are you planning to integrate FTDI drivers as part of BSP?

    If that is not the primary requirement, I had followed below steps and the build was success

    Refer the following PDF how to integrate them: http://www.ftdichip.com/Support/Documents/InstallGuides/AN_319_Windows_CE_Driver_Catalog_Item_Usage.pdf

    • Copy the downloaded content from following path:http://www.ftdichip.com/Drivers/VCP.htm to Wince700\3rdParty
    • Refresh the catalog items
    • Under FTDI Chip select FTDI_VCP_ARM_CE700
    • The FTDI Driver appears under subprojects
    • Rebuild it
    • Do Buildrel and makeimg, then the driver dll and registry are integrated with nk.bin

    Regards,

    GSR

    Monday, November 24, 2014 5:43 AM
  • Sources file contents are:


    TARGETNAME=dummy
    TARGETTYPE=NOTARGET
    RELEASETYPE=PLATFORM

    SOURCES=

    WINCETARGETFILES=copy_files

    FILE_VIEW_PARAMETER_FOLDER= \
      FTDI_VCP_ARM_CE700.bib \
      FTDI_VCP_ARM_CE700.reg \

    create file with the name makefile.inc in your driver folder

    contents for makefile.inc are:

    _SRC=$(_PLATFORMROOT)\$(_TGTPLAT)\src\drivers\FTDI_VCP_ARM_CE700\Resources

    copy_files:
     xcopy /D /Q /I $(_SRC)\*.dll $(_FLATRELEASEDIR)

    FTDI driver entry in Platform.bib entry shall point to FLATRELEASEDIR

    Ftdi registry entry in platform.reg shall point to /reg  file present in driver folder.

    Use the above code at your own risk.

    Regards,

    GSR


    • Edited by GSRid Monday, November 24, 2014 7:28 AM
    Monday, November 24, 2014 7:27 AM
  • Hello Friends,

    I have done the mentioned changes and I have found that the corresponding  ftdi_ser.dll is the part of my release directory and as well as it is also the part of ce.bib.

    I have build my image in debug mode and after building the image and flash into the target board and during the time of booting I saw debug messages on PB Console... But I search for the corresponding ftdi_ser.dll driver; I did not find any option related to ftdi_ser.dll...???????????????

    One Important information I have got during the time of building image as shown below- 

     MAKEIMG: BUILDMSG: Creating Rom Image
    C:\WINCE700\build.log(86471) :   Warning: Found duplicate entry 'ftdi_ser.dll   NK               C:\WINCE700\OSDesigns\Enventure\Enventure\RelDir\PHYTEC_AM335x_BSP_ARMV7_Debug\ftdi_ser.dll 00000005' ... skipping {log="C:\WINCE700\build.log(86471)"}

    I think this may be cause of not inclusion and one more thing I have seen in remote tools which drivers are loaded and still ftdi_ser.dll is missing ??????

    Tuesday, November 25, 2014 4:14 AM
  • That duplicate entry warning is because the ftdi_ser.dll is already included in image. Search for ftdi_ser.dll in ce.bib. If that entry is fine for you, no need to add the same in platform.bib. If you add again, it will skip.


    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Tuesday, November 25, 2014 6:20 AM
  • Hello Friends,

    Yes, you are right Keshava.. I have found the corresponding duplicate entry in the .bib file under subproject and Another I have included in platform.bib file....

    Now, I have removed one by one from both side's but still the ftdi_ser.dll is not loaded by kernel..

    I have seen this thing in kernel debug logs and Drivers in System Information using Remote Tools

    ?????

    • Proposed as answer by Keshava GN Tuesday, November 25, 2014 7:22 AM
    • Unproposed as answer by Keshava GN Tuesday, November 25, 2014 7:22 AM
    Tuesday, November 25, 2014 6:35 AM
  • Yes. It is not the reason for the issue.

    There may be some problem with .reg entries, or .def file...

    Check it...


    Keshava G N, Member - Technical (Software), iWave Systems Technologies Pvt. Ltd., Bangalore

    Tuesday, November 25, 2014 7:24 AM
  • Hello Friends,

    It does not have any .def file and the corresponding entries related to registry are as-

    [HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\FTDI_DEVICE]
    "Version"="1.1.0.20"
    "Prefix"="COM"
    "Dll"="ftdi_ser.dll"
    "ConfigData"=hex:\
          01,00,3f,3f,10,27,88,13,c4,09,e2,04,71,02,38,41,9c,80,4e,c0,34,00,1a,00,0d,\
          00,06,40,03,80,00,00,d0,80
    "InitialIndex"=dword:00000006
    "DeviceArrayIndex"=dword:00000004
    "LatencyTimer"=dword:00000010
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24577\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24592\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24593\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24596\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"
    
    [HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1027_24597\Default\255\FTDI_DEVICE]
    "DLL"="ftdi_ser.dll"

    Okay suppose that If i create the .def file then how could I know that which functionality I have to add as  I have only .dll ......

    ???

    Thursday, November 27, 2014 4:16 AM
  • Hello,

    I am facing the same issue for loading FTDI dll.

    I have downloaded the dll and supporting file from the provided path, copied the "3rdParty" directory under

    C:/WINCE700 folder, selected the "FTDI_VCP_ARM_CE700" catalog item and builded the whole image.

    Then after downloading and booting the OS image, I tried to check whether the driver is loaded with the Remote Tools -> System Information -> Drivers, but I did'nt find FTDI driver loaded there.

    The last point that you have suggested "

    • Do Buildrel and makeimg, then the driver dll and registry are integrated with nk.bin

    "

    I have never tried building with this procedure can you please elaborate the commands that I need to use.

    Thanks,

    Bhavesh.


    Bhavesh

    Wednesday, December 3, 2014 5:20 AM
  • Make sure you have added entry in .bib ..

    Re-build the required folder on Solution explorer (ie: Thirdparty/FTDI or under subprojects...).

    Then you can "Build BSP" (or "Copy to rel directory" and "Make runtime image")...



    • Edited by Keshava GN Wednesday, December 3, 2014 6:26 AM
    Wednesday, December 3, 2014 6:24 AM