在Qt for symbian开发时:有时需要将一些dll库文件拷贝到手机中,如果单纯是symbian编程则之需要修改下mmp文件和pkg文件,但如果是qt程序的话,我们只能通过修改Qt的pro文件来实现,下边是实现方式:
对于添加库,无论是静态还是动态库,都需做两步:先是声名一下,其后是拷贝。二者仅仅是声名的方式不一样。
(以下代码都是要加到pro工程文件中的)
1:声名:
(1)动态库
symbian:LIBS +=
MMP_RULES += "LIBRARY fbscli.lib"
(这里我加的是名为fbscli的动态库)
(2)静态库
symbian {
LIBS += -lIsolated.lib /
}
(这里我加的是名为Isolated的静态库)
//-------------------------------------------------------------------------------------------------------------------------
2:拷贝
分两步:编译的拷贝和真机的拷贝。
编译的拷贝方式如下:
symbian {
BLD_INF_RULES.prj_exports += /
"./bin/HWR/Winscw/NRC.dll /epoc32/release/winscw/udeb/NRC.dll" /
"./bin/HWR/Winscw/NRC.lib /epoc32/release/winscw/udeb/NRC.lib" /
"./bin/HWR/Armv5/NRC.dll /epoc32/release/Armv5/urel/NRC.dll" /
"./bin/HWR/Armv5/NRC.lib /epoc32/release/Armv5/lib/NRC.lib" /
}
winscw文件夹对应emulator , ArmV5对应真机。
//-------------------------------------------------------------------------------------------------------------------------
真机的拷贝方式如下:
symbian: {
OCRDll.sources =./bin/HWR/Armv5/MMI_BluetoothEngine.dll
OCRDll.path = /sys/bin
DEPLOYMENT += OCRDll
}
Notice:
1:OCRDll 可以被任何你自己定义的字符串取代,只要最后把它加到: DEPLOYMENT中即可,正如上边最后一句所做的那样。
建议大家再参考下最新我写的一篇博文:http://blog.csdn.net/NRC_DouNingBo/archive/2010/12/13/6074018.aspx