zoukankan      html  css  js  c++  java
  • module机制

    pa_module_load

      打开动态库 dl = lt_dlopenext(name)

            获取入口函数 init = lt_dlsym(m->dl, "pa_module_init")

            获取结束函数  done = lt_dlsym(m->dl, "pa_module_done")

            调用入口函数 m->init(c, m) 

            将module存入到core的modules中pa_idxset_put(c->modules, m, &m->index)

    pa_module_unload

           pa_idxset_remove_by_data(c->modules, m, NULL)  将module从core中modules中去掉

           pa_module_free()

         done(m->core, m) 执行结束函数

                      lt_dlclose(m->dl)  关闭动态库

    module是动态库,每个module对应的源文件(找几个经典的),从Makefile.am中查找

             • module-alsa-sink 

    module_alsa_sink_la_SOURCES = module-alsa-sink.c
    module_alsa_sink_la_LDFLAGS = -module -avoid-version
    module_alsa_sink_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la
    module_alsa_sink_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)

             • module-alsa-source

    module_alsa_source_la_SOURCES = module-alsa-source.c
    module_alsa_source_la_LDFLAGS = -module -avoid-version
    module_alsa_source_la_LIBADD = $(AM_LIBADD) $(ASOUNDLIB_LIBS) libalsa-util.la
    module_alsa_source_la_CFLAGS = $(AM_CFLAGS) $(ASOUNDLIB_CFLAGS)

             • module-native-protocol-unix

    module_native_protocol_unix_la_SOURCES = module-protocol-stub.c
    module_native_protocol_unix_la_CFLAGS = -DUSE_UNIX_SOCKETS -DUSE_PROTOCOL_NATIVE $(AM_CFLAGS)
    module_native_protocol_unix_la_LDFLAGS = -module -avoid-version
    module_native_protocol_unix_la_LIBADD = $(AM_LIBADD) libprotocol-native.la libsocket-server.la libsocket-util.la

     

    备注:

    库名字是中画线,makefile中target是下划线

    例如: 

                库名        module-native-protocol-unix 

                target名   module_native_protocol_unix

     

          

  • 相关阅读:
    IPython notebook(Jupyter notebook)指定IP和端口运行
    spark-2.2.0安装和部署——Spark集群学习日记
    安装Scala-2.11.7——集群学习日记
    hadoop2.7.3在centos7上部署安装(单机版)
    Centos7下面配置静态IP
    css 3列
    css 日历组件(浮雕效果)
    if(!document.getElementById) return false; JS里这句是什么意思?
    网页中图片路径错误时显示默认图片方法
    css3 图片放大缩小闪烁效果
  • 原文地址:https://www.cnblogs.com/renhl/p/14021970.html
Copyright © 2011-2022 走看看