当前位置: 技术问答>linux和unix
我现在有个MFC的程序需要在Linux上运行,要学点什么知识?
来源: 互联网 发布时间:2017-01-08
本文导语: 我的程序是在 XP----VS2003 MFC里面开发的。现在需要在Linux里面被别人的一个程序调用.毫无思路啊,要怎么弄? 1.我的程序要被别人的程序调用是不是只有封装成dll,让别人调用了。如果封装成了dll,那能直接在linux...
我的程序是在 XP----VS2003 MFC里面开发的。现在需要在Linux里面被别人的一个程序调用.毫无思路啊,要怎么弄?
1.我的程序要被别人的程序调用是不是只有封装成dll,让别人调用了。如果封装成了dll,那能直接在linux上被别人调用不?
2.我的程序需要在哪些方面做改动后能在linux上运行的。提供资料也行。
1.我的程序要被别人的程序调用是不是只有封装成dll,让别人调用了。如果封装成了dll,那能直接在linux上被别人调用不?
2.我的程序需要在哪些方面做改动后能在linux上运行的。提供资料也行。
|
编译方面:
需要自己编译好.so,提供的就是.so文件和头文件。
C编译器:gcc
C++编译器:g++
修改方面:
SOCKET 用的是MFC封装的类、 串口控件、还有其它常规控件
这些在Linux里面是没有的,如果修改,难度很大的。因为这两个系统使用的东西完全不一样,当然,标准库里面的东西还是通用的。
你的程序使用到了界面,就要考虑使用Linux下的界面,可以用QT、gtk这些(我没搞过界面),QT跟MFC有些相通的东西,做界面还是不难的。
我懂的就是上面这些,更深入的就不知道了。
|
那完了,你基本上要重写代码
|
1、不必要,别的程序使用popen函数或者别的函数,都可以调用你的程序
2、你的程序需要在linux下,重新编译。这时你需要准备一个合适的makefile文件就可以了。
2、你的程序需要在linux下,重新编译。这时你需要准备一个合适的makefile文件就可以了。
|
dll好像不能被linux识别,在我印象中,在Linux下还没遇到过dll。当然,使用模拟机这些除外。另外,你的MFC程序如果使用了MFC,那需要改动的东西比较多,因为Linux中没有MFC那一套。
而且,由于Linux系统多样性,很难保证各种库的版本一致,所以最好提供Makefile、源码,让那边在Linux编译。如果不想提供源码,就自己编译成.so,提供头文件。
个人意见。
而且,由于Linux系统多样性,很难保证各种库的版本一致,所以最好提供Makefile、源码,让那边在Linux编译。如果不想提供源码,就自己编译成.so,提供头文件。
个人意见。
|
用WINCE。
|
MFC程序到linux上基本上的重写了
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。