社区
Symbian
帖子详情
carbide下编译的奇怪问题
top_spitfire
2009-04-22 10:55:20
我在vs下的写的一个代码,导入到carbide下编译,出现了一个错误,提示某一个dll(自己写的)中的一个函数没有找到,如果在主程序中不调用该函数编译没有问题,在该dll中我新添加函数,然后在主程序中调用,也会出现上述错误。
原以为是mmp中“冻结”了dll,但我修改了还是不行,
也不知道是改的不对,还是有其他原因,有谁遇到过这样的情况么?
...全文
66
8
打赏
收藏
carbide下编译的奇怪问题
我在vs下的写的一个代码,导入到carbide下编译,出现了一个错误,提示某一个dll(自己写的)中的一个函数没有找到,如果在主程序中不调用该函数编译没有问题,在该dll中我新添加函数,然后在主程序中调用,也会出现上述错误。 原以为是mmp中“冻结”了dll,但我修改了还是不行, 也不知道是改的不对,还是有其他原因,有谁遇到过这样的情况么?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alex_hua
2009-04-22
打赏
举报
回复
补:
在dll开发测试阶段,在mmp中加上“exportunfrozen”关键字,不用冻结~
alex_hua
2009-04-22
打赏
举报
回复
[Quote=引用楼主 top_spitfire 的帖子:]
我在vs下的写的一个代码,导入到carbide下编译,出现了一个错误,提示某一个dll(自己写的)中的一个函数没有找到,如果在主程序中不调用该函数编译没有问题,在该dll中我新添加函数,然后在主程序中调用,也会出现上述错误。
[/Quote]
一个比较好的解决方法:
定义抽象接口,在dll中用类实现全部或者部分接口,然后导出一个类对象的全局创建方法,该方法返回抽象接口父类。
在需使用该dll的程序中,使用动态装载dll,生成抽象类句柄,然后就可以通过抽象接口,利用虚函数机制调用实现类中的方法。
(这种方法可以避免当dll/lib更新时,使用该dll的其他程序在编译阶段也需更新链接库)
victory_zq
2009-04-22
打赏
举报
回复
出现什么错误了啊?link错误?
btsy2000
2009-04-22
打赏
举报
回复
[Quote=引用 4 楼 dyw 的回复:]
检查该函数的声明/实现前是否定义有IMPORT_C/EXPORT_C,没有的话加上。然后删除.def文件,再次冻结、编译。
[/Quote]
这是最常规做法,没理由这样用了还不行
hylove9494
2009-04-22
打赏
举报
回复
sf
漁_夫
2009-04-22
打赏
举报
回复
[Quote=引用 2 楼 alex_hua 的回复:]
引用楼主 top_spitfire 的帖子:
我在vs下的写的一个代码,导入到carbide下编译,出现了一个错误,提示某一个dll(自己写的)中的一个函数没有找到,如果在主程序中不调用该函数编译没有问题,在该dll中我新添加函数,然后在主程序中调用,也会出现上述错误。
一个比较好的解决方法:
定义抽象接口,在dll中用类实现全部或者部分接口,然后导出一个类对象的全局创建方法,该方法返回抽象接口父类。
在需使用该dll的程序中,…
[/Quote]
支持。。。
下面的链接有关于动态加载的用法
http://blog.csdn.net/arthersophy/archive/2009/04/16/4085267.aspx
不过考虑到可能改动会很大,所以建议利用四楼DYW大哥的方法:
检查该函数的声明/实现前是否定义有IMPORT_C/EXPORT_C,没有的话加上。然后删除.def文件,再次冻结、编译。
zhj8727
2009-04-22
打赏
举报
回复
uping
dyw
2009-04-22
打赏
举报
回复
检查该函数的声明/实现前是否定义有IMPORT_C/EXPORT_C,没有的话加上。然后删除.def文件,再次冻结、编译。
Symbian开发——
Ca
rb
ide
.c++ debug on device
在做iPhone开发时,只要配置好了开发证书,很容易在设备上进行调试。下面介绍一下Symbian开发,
Ca
rb
ide
.C++开发工具中在设备上调试的方法: 我使用的版本是
Ca
rb
ide
C++ v2.0,下文中的红色标记是我在实践中的经验。 下面是转自《开发视界》的文章。 第一种方法:
Ca
rb
ide
C++ v1.2 的 Debug On Device
Ca
rb
ide
C++
symbian 搭建
ca
rb
ide
c++环境
http://www.cppblog.com/kesalin/archive/2009/07/09/89615.html目录:一, 环境配置二, 项目设置三, 开发流程四, 参考书籍一,环境配置1,开发工具下载开发环境选用Jdk1.5 + ActivePerl-5.6 + S60_3rd +
Ca
rb
ide
.C++.V2.0,请依次文件下载一下文件放到D:/Sy
symbian openc 使用
编译
问题
1.select返回-1分享解决方法:mmp中把estlib.lib放到libc.lib和libstdcpp.lib后面原因:estlib.lib估计和标准C的Socket有冲突,会导致ioctl和Select都以-1返回。做OpenC网络编程的留意一下 1,安装: 从Nokia网站下载OpenC插件,然后解压,根据其releasenotes.txt文进行安装,配置,网站上还可以下载入门演示录相。在运行时,要按要求,在运行手机上提前安装相关的插件sis文件,也可以在开发的发布 si
S60手机开发平台构建-塞班9.2+
Ca
rb
ide
.c++
在这里我们讨论的是为诺基亚的智能手机平台之一S60开发其软件的平台搭建。S60平台的基础是symbian操作系统,symbian操作系统是当前主流的手机操作系统,有着强大的功能和稳定性,支持C++和java语言的手机软件开发。建于是symbian的特性,似乎选择用C++开发出更多的功能。其软件后缀名为sis或sisx。其实在手机开发方面我自己也是个菜鸟,但是发现在开发平台搭建方面有很多困难,相关资
OpenC的
问题
,对安装,
编译
,动态库,链接顺序,运行环境,有界面程序的影响...
1,安装: 从Nokia网站下载OpenC插件,然后解压,根据其releasenotes.txt文进行安装,配置,网站上还可以下载入门演示录相。在运行时,要按要求,在运行手机上提前安装相关的插件sis文件,也可以在开发的发布 sis中一并加入运行插件。相关方法可按插件的release Notes来进行打包。 2,
编译
影响: ...
Symbian
3,120
社区成员
9,186
社区内容
发帖
与我相关
我的任务
Symbian
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
复制链接
扫一扫
分享
社区描述
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章