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

arm linux 把c++类打包成.so的问题

    来源: 互联网  发布时间:2016-06-19

    本文导语:  linux 怎样可以把c++类封装成dll http://topic.csdn.net/u/20090716/16/6a9a7ec8-d2af-44d3-9ace-f5e816e9c9df.html 我有做pc机上的 .so, 成功! 我象转到arm linux下 #CXX=g++ CXX = arm-hismall-linux-g++ CXXFLAGS= -Wall -W -O2 -g objects= NTPSocket.o SNTPC...

linux 怎样可以把c++类封装成dll
http://topic.csdn.net/u/20090716/16/6a9a7ec8-d2af-44d3-9ace-f5e816e9c9df.html
我有做pc机上的 .so, 成功!

我象转到arm linux下
#CXX=g++
CXX = arm-hismall-linux-g++
CXXFLAGS= -Wall -W -O2 -g
objects= NTPSocket.o SNTPClient.o NTPDemo.o
NTPDemo:$(objects)
$(CXX) $(CXXFLAGS) -o $@ $^
NTPSocket.o:NTPSocket.cpp NTPSocket.h types.h
$(CXX) $(CXXFLAGS) -c $^
SNTPClient.o:SNTPClient.cpp SNTPClient.h types.h
$(CXX) $(CXXFLAGS) -c $^
NTPDemo.o:NTPDemo.cpp
$(CXX) $(CXXFLAGS) -c $^

clean:
rm -fr *.o NTPDemo
这个编译成.o文件没问题,但
arm-hismall-linux-g++ -o NTPClient.so  NTPSocket.o SNTPClient.o
出现crtl.o:In function '_start':
ctrl.S:(.text+0x4c):underfined reference to 'main'
错误, 为什么?

|
你是不是没有加某些参数?
-shared参数加了吗?
arm-hismall-linux-g++ -o NTPClient.so  NTPSocket.o SNTPClient.o 
你的这个编译方式可能有问题。
编译器会认为你要编译成独立的可执行文件,
从main函数开始执行。而不是库文件。
所以它会提示underfined reference to 'main' 

|
arm-hismall-linux-g++ -shared -o NTPClient.so  NTPSocket.o SNTPClient.o 

|
g++ -o 是直接生成执行文件的,里面没有main函数当然会报错.
加上-shared才表示生成动态链接库,-static则是静态库,

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












  • 相关文章推荐
  • 关于买ARM9或ARM11的开发板的问题~~~
  • 疑惑softfloat的问题,并求arm-linux-gcc和arm-linux-softfloat-gcc4.1.1
  • 关于arm 2440 选择arm-linux-gcc编译器版本的问题
  • 一个很菜的问题,关ARM与linux内核裁剪的问题!
  • arm linux 2.6.29 下载初级问题,大家指教
  • arm-elf-gcc问题
  • 基于ARM的linux问题------------------
  • ARM linux学习的问题
  • arm debian5交叉编译 环境问题(急)
  • arm-linux vi的问题
  • 编程语言 iis7站长之家
  • arm-linux-gcc编译JM的问题求教
  • 求教 arm chip这三个不同颜色的型号问题
  • make: arm-linux-: Command not found的奇怪问题
  • 关于ARM平台移植的问题
  • 请教linux 2.6内核移植到arm上最大线程数量的问题。
  • 100分请教高手一个Linux内核ARM汇编的问题
  • 关于ARM寻址的问题
  • 关于linux-arm内核编译的问题
  • arm-linux-gcc交叉编译问题
  • java命名空间javax.swing类defaultbuttonmodel的类成员方法: armed定义及介绍
  • arm-elf-gcc 和 arm-linux-gcc有什么区别?arm-elf-gcc里的elf代表什么?
  • java命名空间javax.accessibility类accessiblestate的类成员方法: armed定义及介绍
  • arm-unknown-linux-gnu-gcc與arm-linux 的compiler有不同嗎
  • make ARCH=arm CROSS_COMPILE=arm-linu-错误
  • 请问哪有 arm-linux-nm, arm-linux-addr2line等等这些工具的使用说明~~~
  • 使用eclipse 加入arm-elf-gcc 或arm-linux-gcc 编译器为什么不好使
  • 现在是ARM9还是ARM11比较流行啊?我想买开发板什么牌子的比较好啊,我是大学生。
  • ARM ping不通虚拟机,虚拟机可以ping通ARM
  • 新手请教 移植2.6内核到arm9,芯片:arm926ejs,Flash: NOR
  • 请教:make ARCH=arm CROSS_COMPILE=arm-linu- menuconfig出错


  • 站内导航:


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

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

    浙ICP备11055608号-3