移植OSBench.exe源码到BSP遇到的问题

本文记录了作者在将OSBench源码移植到BSP过程中遇到的问题及解决方法。主要问题是由于TestPSL未实现相关函数导致的链接错误,通过调整函数实现列表解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    昨天,OSBench不能顺利测试,后来我就打算把OSBench源码移植到BSP调试的想法。今天开始实施,没有想到遇到了非常棘手的问题。

    我按照我的以前的做法

    加入

#TARGETTYPE=LIBRARY

TARGETTYPE=DYNLINK——lib 变 DLL
RELEASTYPE=PLATFORM——表示是BSP生成的lib/dll

不知道怎么回事,刚开始一堆错误。后来我发现是少了CORE相关的库链接,

加入

TARGETLIBS=$(_SYSGENSDKROOT)/lib/$(_CPUINDPATH)/coredll.lib /
                     $(_SYSGENOAKROOT)/lib/$(_CPUINDPATH)/ceddk.lib /

 

但是还是有一个错误。

BUILD: [01:0000000101:ERRORE] osbench.obj : error LNK2001: unresolved external symbol TestPSL

 

后来发现这个不是库的问题,但是不明白微软是如何编译的通过的。

 

折腾了一番,原来是TestPSL没有实现相关的函数,

const PFNTEST TestTable[] = {
    (PFNTEST) TestCriticalSections,
    (PFNTEST) TestEvents,
    (PFNTEST) TestSemaphores,
    (PFNTEST) TestMutexes,
    (PFNTEST) TestYield,
    //(PFNTEST) TestPSL,
    (PFNTEST) TestInterlock,
};

我就屏蔽掉 它就可以编译通过了。现在加入打印信息。调试吧。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值