NXP NCF29A1 官方 Software ChessDE 初次编译链接失败解决办法

一、简介
        客户在初次接触 NCF29A1 系列钥匙的时候,通常可以通过官方渠道获取到 “PKE/RKE Token family”开发包,里面包含了硬件参考设计“Token Demo Hardware - 版本”以及软件 Demo“Token Demo Software - 版本”。



        用户在初次使用软件 Demo 导入 .prx 工程的时候,进行编译,但是发现单一文件编译都是正常的,但是进入到链接阶段,会提示“文件类型未定义,文件读取出错”,如果如果用户在使用过程中有遇到这样的问题,请不要惊慌,因为这是初次使用的时候多多少少都会经历的阶段,不得不品尝。


        其实这里用户只需要进行简单的操作,即可解决上述问题。请君为我倾耳听。

二、解决方式
        如果用户仔细留意,会发现在“Software_20xx-xx-xx\Software\DemoSoftware_MRK3\lib”路径下存在的“Readme.txt”(建议大家在使用不熟悉的工程的时候都可以留意一下,相关 “Readme”文件,其中包含有原厂的提示)。其中有对该情况进行解释:

       “Libraries in this folder have been compiled with the MRK-IIIe IP Programmer release as stated in the release notes. If you are using a different release, linking errors might occur. ” 

        这也就是说,虽然原厂能够控制你目前编译的软件版本,但是对于用户使用的开发环境 ChessDE 的版本是不可控的,而不同 ChessDE 版本之间存在些许差异,而这也是导致链接出错的原因。解决的办法,原厂也有提供:

        “In this case, the librariesIn this case, the librarie smust be re-built using the supplied project (.prx) files.
           This applies to
           1. Device support library for type <type>:    \external\<TYPE>\lib<TYPE>.prx   
               For instance the TOKEN case:    \external\ncf29A1\libncf29A1.prx

           2. System calls interface library:    comps\SysFuncLib\toolsupport\chessde\<TYPE>\<ROMMASK>\SystemLib_<TYPE>_<ROMMASK>.prx   
               Examples:    comps\SysFuncLib\toolsupport\chessde\ncf29A1\RC005\SystemLib_ncf29A1_RC005.prx     
                                    comps\SysFuncLib\toolsupport\chessde\ncf2957\RC001\SystemLib_ncf2957_RC001.prx”

        客户需要明确使用的钥匙型号,然后进入到对应的钥匙目录下,进行 .prx 工程重编译。以 NCF29A1 为例,此时我们需要找到 NCF29A1 的库文件:


        通过将该文件导入 ChessDE(保证同一时间 ChessDE 只打开了一个工程,不然可能会报错),然后对其进行编译:


        紧接着需要找到 NCF29A1 的系统函数库文件:


        同样将其导入 ChessDE,然后进行编译:


        在对上述 2 个库文件完成重编译之后,即可编译 Demo 工程,此时即可发现工程编译、链接均正常:


三、总结
        最后还是建议用户,在使用的软件的过程中,如果遇到问题优先查阅工程内部自带的文档资料,很多前面的人踩过的坑其实在这里面都有总结的。

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论