当前位置:  技术问答>linux和unix

关于加载模块时出现“unresolved symbol”的问题

    来源: 互联网  发布时间:2016-03-12

    本文导语:  大家好!     我在使用insmod装置一个Linux模块时出现了“unresolved symbol XXXXXX”这样的提示,XXXX都是我引用的Linux源代码里的头文件所提供的函数,其中一个是这样的(定义在linuxzlib.h中):     ZEXTERN int ZEXPORT z...

大家好!
    我在使用insmod装置一个Linux模块时出现了“unresolved symbol XXXXXX”这样的提示,XXXX都是我引用的Linux源代码里的头文件所提供的函数,其中一个是这样的(定义在linuxzlib.h中):
    ZEXTERN int ZEXPORT zlib_deflate OF((z_streamp strm, int flush));
  它的实现在linux/ lib/ zlib_deflate/ deflate.c中。
   
 我使用这个函数的代码如下:
int ZEXPORT gzwrite (file, buf, len)
    gzFile file;
    voidpc buf;
    unsigned len;
{
    gz_stream *s = (gz_stream*)file;

        mm_segment_t   old_fs;
        ssize_t count;

    if (s == NULL || s->mode != 'w') return Z_STREAM_ERROR;

    s->stream.next_in = (Bytef*)buf;
    s->stream.avail_in = len;

    while (s->stream.avail_in != 0) {

        if (s->stream.avail_out == 0) {

            s->stream.next_out = s->outbuf;
                      
            old_fs = get_fs();
set_fs(get_ds());
            count =write(s->gzfd, s->outbuf, Z_BUFSIZE);
            old_fs = get_fs();
            if (count != Z_BUFSIZE) {
                s->z_err = Z_ERRNO;
                break;
            }

            s->stream.avail_out = Z_BUFSIZE;
        }
        s->in += s->stream.avail_in;
        s->out += s->stream.avail_out;
        s->z_err = zlib_deflate(&(s->stream), Z_NO_FLUSH);
        s->in -= s->stream.avail_in;
        s->out -= s->stream.avail_out;
        if (s->z_err != Z_OK) break;
    }
    s->crc = crc32(s->crc, (const Bytef *)buf, len);

    return (int)(len - s->stream.avail_in);
}
请问各位高手,我这是什么地方出错了?


|
应该是没导入相应的lib

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 使用非root用户加载模块出错
  • 为何每次重启都要重新加载驱动模块?
  • 驱动模块断电重加载问题
  • 升级内核之后,模块加载问题
  • 怎样让模块加载之后自动执行里面的函数
  • 模块加载框架 SeaJS
  • insmod 加载驱动模块后,重启后驱动为什么没有了
  • linux2.6内核 如何自动加载当前所需要的模块
  • 在linux操作系统中,如何实现可加载的模块是否被卸载的检测
  • 服务端的模块加载器 StyleCombine
  • JavaScript模块加载器 GoJS
  • 怎么给内核加载自己编写的模块
  • 请教linux中如何自动加载自己的模块
  • 模块加载错误: -1 Unknown symbol in module
  • 加载模块出错,系统死机
  • JavaScript 模块加载器 DefineJS
  • 加载模块的问题!
  • 为什么模块不能加载
  • 有没有什么办法能够查询到某个内核模块程序加载之后的运行情况?
  • 请教,如何知道内存中某个驱动模块是否已经被加载??
  • Linux下c函数dlopen实现加载动态库so文件代码举例
  • 请教一下Linux的动态库加载方式(是启动加载还是运行加载?)
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 在线等待!请文中怎么使用WebLogc的类加载器加载一个类?
  • struts+spring+hibernate+jquery实现分页功能的几个基本类介绍(异步加载)
  • driver的静态加载和动态加载占用内存问题
  • 可执行程序加载动态库 和 动态库加载动态库 的动态库初始化的问题
  • vmware下加载了一个虚拟软驱镜像,如果设置第一启动项为软驱的话,软驱能正常加载运行。但如果我第一启动项不设为软驱,正常启动fedora12的话。
  • usbhid妨碍了系统自动加载我的usb驱动程序,求教解决 (主要是加载后设备的驱动被认作usbhid)
  • 问问lib加载的问题
  • linux生成(加载)动态库静态库和加载示例方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3