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

c程序调dlopen C++的动态库的问题,急!

    来源: 互联网  发布时间:2015-04-10

    本文导语:  c程序调dlopen C++的动态库时,报符号__1c2n6FI_pv_: 参照的符号没有找到 查到原因是c++中使用了new,但又不能不用new ,这该如何解决? new 是在c++中那个库中实现的? | in cpp file extern "C" void ...

c程序调dlopen C++的动态库时,报符号__1c2n6FI_pv_: 参照的符号没有找到

查到原因是c++中使用了new,但又不能不用new ,这该如何解决?
new 是在c++中那个库中实现的?

|
in cpp file
extern "C" void * create();
void * create (){
       return new MyClass();
}

in c file :
dlopen(fp,"create");
void * myclass=create();

|
create 函数应该说明为c函数,并在函数表中输出
cpp文件最好生成so文件

gnu c++ :libstdc++.a

|
new用malloc,delete用free
头文件为stdlib.h

|
你的动态库动态连接的C++标准库在你的C主程序里没有连接,所以有这个问题。

|
叫什么名字也不能连接到C程序里。最好把你的主程序用C++编写,这样就可以解决问题。

|
现在楼主的应用不是dlopen符号找不到,是dlopen在装载动态库时就出问题,这个和extern "C"没有关系。即使用extern "C"声明和定义了,一样会出现在的问题。

|
该用动态连接库吧,应该可以解决问题的
to fierygnu:
__1c2n6FI_pv_这个函数的名字不像哪个库输出的函数
如果用so格式的话应该会自动加载库的
我只是猜测而已

|
__1c2n6FI_pv_是被g++ mangle后的符号名。

|
malloc

    
 
 

您可能感兴趣的文章:

  • 在Python中使用SWIG调用C和C++程序
  • 为什么linux下的C++程序这么少见? 请问那里有linux下的C++程序?什么类型的程序都可以.
  • C++程序的内存不同的数据段及堆栈布局
  • unix下的C++程序转换为可以在windows下的C++
  • 请问如何在一个java程序中加载 C或c++程序??
  • 我把JAVA和C++都搞混了,希望JAVA、C++爱好者给我讲讲里面的程序注释问题在JAVA和C++中都有哪些不同。
  • Linux下怎样编译C++程序?
  • Unix下的CC能编译C++的程序吗?不是GCC
  • linux下C++程序开发该从何开始?
  • 请教: linux下用c++写最简单的socket程序如何写?
  • Unix环境下如何执行c++程序
  • 请问c++程序怎么编?
  • 请问在C++中能编写SDL游戏程序吗
  • 最进想学习LINUX程序设计,想了解一下在LINUX下的C++程序开发工具有哪些?有快速做界面的那种吗?
  • 在C++程序中编写Lisp代码 InteLib
  • 怎样在linux下编译c++程序?(有分,但不多)
  • 在UNIX下如何编译C++程序
  • c++ 程序问题
  • 在Linux下怎么编译C++程序?
  • [求助]C++程序中怎么从URL取数据?
  • gcc与g++对于编译c++程序的区别
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 可执行程序加载动态库 和 动态库加载动态库 的动态库初始化的问题
  • 程序发布的问题(动态连接库的问题)
  • Linux下写服务程序,程序可以使用配置文件动态链接库吗?
  • linux下链接一个动态库后原有程序不能正常运行
  • 请教关于dlopen,动态库连接程序的输出函数
  • 用GTK开发的程序如何在没有GTK动态连接库的Linux里运行?
  • 如何在程序中动态的加载并且调用另一个编译好的函数?
  • 如何在AIX系统下编写动态库的调用程序
  • 请教:linux的驱动程序如何调用动态连接库?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 重装服务器后IIS网站错误(应用程序中的服务器错误)
  • 为什么我在java程序里启动的一个程序在java程序关闭后,该程序的所有进程都关掉了
  • windows server2008上PowerBuilder程序系统错误解决方法
  • Linux 编程怎么样在程序开启一个程序,和关闭一个程序?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 请问从一个java程序中如何调用另一java程序,并控制可以其状态(最小化、最大化、结束程序),还有怎样知道那个被调用的程序结束。
  • 程序员的八种级别,你属于哪一级?
  • Linux下的程序是在内存中运行的吗?为什么在程序运行的时候可以删除程序文件?
  • 在docker容器中通过apt-get安装新的程序
  • 我的程序是用c写的gtk+程序,有个函数的参数要传给它图片的文件名,但是图片和原程序不在同一目录下怎么办?怎么在程序里指定文件的路径
  • linux下通过crond实现自动执行程序
  • 我写了个linux下的网络程序,程序在多个电脑间通信,但是我没有多个电脑,怎么调试这样的程序啊?
  • http协议介绍,文件上传分析及程序举例
  • 在java控制台程序中,可以用System.exit(0);使用一个程序终止,那么在servlet中如何使一个servlet程序终止呢?
  • 程序员赚钱致富的6种方法
  • 程序调用脚本,脚本启动另一个程序,如何让原始程序彻底释放资源?
  • HASH查找的程序实现及性能分析
  • python计算程序开始到程序结束的运行时间和程序运行的CPU时间
  • 程序员为了健康必看!早晨空腹喝水,是对还是错?
  • linux下,一个程序如何向另一个程序发送消息,另一个程序如何接收
  • 如何使用linux下gdb来调试python程序
  • jsp程序运行一次后,再修改原jsp程序,为什么运行还是的还是原来的程序??


  • 站内导航:


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

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

    浙ICP备11055608号-3