在Vxwords中, 如何禁止导出函数?

zhonghuashen 2008-05-18 06:40:55
在vxworks中, 如何禁止导出函数?
比如在windows中用__declspec(dllexport) 导出函数,如果没有的话就不能导出函数.

注意,导出的库,用命令不能查询到.
...全文
88 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
szh_phy 2008-05-23
  • 打赏
  • 举报
回复
这个问题用visibility("hidden"), 不过需要编译器支持

顺便问问, 高版本gcc编译的程序,用低版本的ld连接低版本的库, 这样可行否?
请指教
zhonghuashen 2008-05-20
  • 打赏
  • 举报
回复
TO:HikerLive
用nm -D 不能导出symbols
HikerLive 2008-05-20
  • 打赏
  • 举报
回复
1.在函数的前面加static,标识该函数不能被其他源文件(模块)所用。
2.在文件作用域下声明的inline函数默认为static存储类型。
不知道楼主说得禁止导出函数是不是不让其他源文件使用函数,将函数局限于模块内部使用。
maplewasp 2008-05-19
  • 打赏
  • 举报
回复
不在.h文件中申明,只在模块内(即.c或.cpp文件,)申明和定义的类应该就不能被导出了,因为它是模块内部类,对于其它的模块是不可见的。
zhonghuashen 2008-05-19
  • 打赏
  • 举报
回复
我试试看,不能导出类呢?
zhonghuashen 2008-05-19
  • 打赏
  • 举报
回复
To: maplewasp
用内联的类封装函数到是可以的,不过如果不是内联还是可以导出的
您试过没有?
zhonghuashen 2008-05-19
  • 打赏
  • 举报
回复
To: maplewasp
这个不错,还有其他答案否?
maplewasp 2008-05-18
  • 打赏
  • 举报
回复
在模块内(即.c文件),在函数的前面加static关键字就可以隐藏该函数了,即其他模块不能调用该函数,可以达到不可导出的目的。
其它的方法我就不知道了,望达人们指点!

2,179

社区成员

发帖
与我相关
我的任务
社区描述
xworks是美国 Wind River System 公司( 以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。
社区管理员
  • VxWorks开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧