collect2: ld returned 1 exit status

developer 2014-05-07 03:48:37
E:/android-ndk-r9d/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld.exe: jni/libStreamMediaLib.a(UdxClient.o): in function CUdxClient::BindAddListen(char*, long):E:/FUdx_Android//jni/../jni/FastUdx/StreamMediaLib/build/android/../..//UdxClient.cpp:39: error: undefined reference to 'CreateFastUdx()'
E:/android-ndk-r9d/toolchains/arm-linux-androideabi-4.6/prebuilt/windows/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld.exe: jni/libStreamMediaLib.a(UdxClient.o): in function typeinfo for CUdxClient:UdxClient.cpp(.data.rel.ro+0x0): error: undefined reference to 'vtable for __cxxabiv1::__si_class_type_info'
collect2: ld returned 1 exit status
make.exe: *** [obj/local/armeabi/libtest.so] Error 1
...全文
367 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
developer 2014-05-21
  • 打赏
  • 举报
回复
E:/FUdx_Android 我这里根本就没有这个文件夹
A_nail 2014-05-21
  • 打赏
  • 举报
回复
ios里成功调用了??? 理论上.a文件没问题
developer 2014-05-21
  • 打赏
  • 举报
回复
引用 2 楼 zhao4zhong1 的回复:
undefined reference to 'CreateFastUdx()' 使用objdump或nm查看.a或.so中是否导出了名字CreateFastUdx 搜“Name Mangling in C++”
导出了 因为ios里就成功调用了
developer 2014-05-21
  • 打赏
  • 举报
回复
编译器 Cygwin
developer 2014-05-21
  • 打赏
  • 举报
回复
引用 3 楼 linux_hsylar 的回复:
这个很可能是你的生成第三方静态库.a的编译器和你写的代码的编译器编译方式不同所导致,你可以把你的代码和是用的编译器发上来。

void IUdxMediaClientSink2::OnConnect(int erro)//与流媒体服务器联接成功或失败
{
	LOGE("OnConnect");
}

void IUdxMediaClientSink2::OnRecvData(BYTE* pData,int len)//回调接收数据
{
	LOGE("OnRecvData");
}

void IUdxMediaClientSink2::OnOperatorErro(int erro)//操作出错返回码
{
	LOGE("OnOperatorErro");
}

extern "C" jboolean Java_com_example_test_IUdxMediaClient_Bind
(JNIEnv * env, jclass, jstring ip, jlong port)
{
LOGE("Bind");

	IUdxMediaClientSink2 iudS;
	IUdxMediaClient *iudc= CreateUdxMediaClient();
	iudc->SetCB(&iudS);
	BOOL b = iudc->Bind(0, 0);
	return b;
}

A_nail 2014-05-21
  • 打赏
  • 举报
回复
应该是编译选项
linux_hsylar 2014-05-07
  • 打赏
  • 举报
回复
这个很可能是你的生成第三方静态库.a的编译器和你写的代码的编译器编译方式不同所导致,你可以把你的代码和是用的编译器发上来。
赵4老师 2014-05-07
  • 打赏
  • 举报
回复
undefined reference to 'CreateFastUdx()' 使用objdump或nm查看.a或.so中是否导出了名字CreateFastUdx 搜“Name Mangling in C++”
developer 2014-05-07
  • 打赏
  • 举报
回复
我编译时需要连接 使用第三方.a静态库文件 在编译的时候过不去

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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