问题描述
在我resently开始实习(我正在学习计算机科学),我有口的莫名其妙的大现有的项目到Android。这是一个Visual C / C ++项目,该项目到底应该用五言的NDK在Android上运行。但我不知道如何移植软件的事情,因为这不是我的研究coverd ...我过了几天,以了解该项目中,我将与一点点。对复杂的几句话:这是一个Visual Studio解决方案其中包括28项目,该项目的大部分都是那种混乱的大...而且知道我应该制定一个概念它移植到Android,这就是为什么我写这本。我是绝对不知道从哪里开始,而我也并不知道如何让一个概念的proting它。我尝试了一些东西,或者一些书涉及这一网上搜索,但我什么也没发现。
in my resently started internship (i'm studying computer science) i have to port a somehow big existing Project to Android. It is a Visual C/C++ Project which in the end should run on Android using of cource the ndk. But i dont know a thing about porting Software, since this is not coverd in my studies...I had a few Days to get to know the Project i will work with a little. A few words about the complexity: It is an Visual Studio Solution which consists of 28 Project of which the most are kind of confusing big...And know i should develop a Concept for Porting it to Android, and this is why i'm writing this. I do absolutly not know where to start, and i do also not know how to get to an Concept for proting it. I tried searching online for some stuff or for some books covering this, but i found nothing.
五言我知道,那基本上我不得不删除一切都很是视觉/ Windows的具体和它有适当的Android / Linux的功能更换或实施一些新的东西,如果没有什么相应的Android系统。
Of cource i know, that basically i have to remove everythin that is Visual/Windows specific and replace it with appropriate Android/Linux Functions or implement something new if there is nothing corresponding on Android.
不过,由于该项目是某种巨大的,我不能只是尝试用正确的编译器编译它,并通过错误信息的工作,这将导致行不通的,我猜...
But since this Project is somehow huge, i cant just try to compile it with the correct Compiler and work through the error messages, this will lead to nowhere, i guess...
所以知道我实际的问题:有没有人exeriences这样或熟悉的东西,可以给一些提示如何下手呢?至于说,我首先需要一个概念。有关如何启动和处理移植这种规模的软件项目更多的东西generell也非常欢迎的,因为我不知道任何关于它...
So know my actual question:Has anybody exeriences about this or something familiar and can give some Tips how to start with it? As said, i first need a Concept. Something more generell about how to start and deal with porting a Software Project of this size is also very welcome, since i dont know nothing about it...
推荐答案
您没有告诉有关项目的源$ C $ C尺寸(多少成千上万行源$ C $ C的)。
You didn't tell about the source code size of the project (how many thousands of lines of source code).
如果在code尺寸够大(例如,至少100 KLOC 一>),你可以考虑定制GCC编译器(假定最近的4.6或4.7版本),可能使用熔体 (高级别领域特定语言扩展GCC),或痛苦编码的 C 的一个GCC插件。这GCC定制的做法是值得仅适用于大型code碱基(你需要几天的时间才能掌握GCC内部)。
If the code size is big enough (e.g. at least 100 KLOC), you could consider customizing the GCC compiler (assuming a recent 4.6 or 4.7 version), perhaps using MELT (a high level domain specific language to extend GCC), or painfully coding in C a GCC plugin. This GCC customizing approach is worthwhile only for large code bases (you'll need several days to master GCC internals).
在另一方面,许多精心设计的应用程序可能已经打包其操作系统功能良好定义的接口和库内。你可能会考虑你的应用程序的Qt或其他一些跨平台的库移植。
On the other hand, many well designed applications may have packaged their operating system functions inside a well defined interface and library. You might consider porting your application to Qt or some other cross-platform library.
我们需要更多的细节有关的项目,以帮助你。
We need more details about your project to help you more.
这篇关于移植的Visual C / C ++到Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!