The Following 5 Users Say Thank You to Nathan For This Useful Post: | ||
|
2009-09-20
, 09:38
|
|
Posts: 3,105 |
Thanked: 11,088 times |
Joined on Jul 2007
@ Mountain View (CA, USA)
|
#2
|
The Following User Says Thank You to qgil For This Useful Post: | ||
|
2009-09-20
, 11:07
|
|
Posts: 2,853 |
Thanked: 968 times |
Joined on Nov 2005
|
#3
|
|
2009-09-20
, 11:45
|
Posts: 452 |
Thanked: 522 times |
Joined on Nov 2007
|
#4
|
|
2009-09-21
, 02:38
|
Posts: 91 |
Thanked: 65 times |
Joined on Feb 2009
|
#5
|
|
2009-10-08
, 21:02
|
Posts: 202 |
Thanked: 60 times |
Joined on Sep 2009
|
#6
|
|
2009-10-08
, 21:22
|
Posts: 452 |
Thanked: 522 times |
Joined on Nov 2007
|
#7
|
|
2009-10-08
, 22:49
|
Posts: 202 |
Thanked: 60 times |
Joined on Sep 2009
|
#8
|
You need to start the interface inside the scratchbox. If you are using my VM, you can type "./start.sh" otherwise you need to run "af-sb-init start" inside the scratchbox.
Nathan
Tags |
qtcreator, vmware, vpc, windows |
|
I have created a VPC/VMWare (http://vpc-sdk.garage.maemo.org) image that has simple install scripts that install the sdk, nokia binaries, sets up networking, scratchbox, xephyr, ssh, etc. It also sets up the ability for you to install QT, Python (GTK or QT) and Geany (GTK) editor in the Linux Image for your development purposes -- basically everything you need to get started. At this moment I'm only at the stage of letting you use it; it has the ability for you to follow any of the wiki.maemo.org tutorial stuff to learn how to do development in Maemo 5 with both GTK and QT. My end goal is a simple to use system for end to end QT development on Windows machines targeting Maemo.
There is already another VMWare project that is targeting GTK, and from what I can see they have a nice product for doing GTK development. I am not really interested in duplicating the work they have done -- they are doing a great job with GTK integration. And if you want to do GTK development, you should check them out.
I will be pretty much only working on QT integration stuff to make it as simple as possible for developers to do the full development life as much as possible as simply as possible.
Now that I've outlined where I am and where I intend to go; I need advice from all the windows developers (feel free linux/mac devs to comment too)...
Current Thoughts and questions for Developers.
I _had_ been attempting to work on creating a plugin for QT that would basically do the one stop compile/run in the Scratchbox 1 environment from inside the VM machine. You do your development in the Linux QT environment then you would compile run it both locally (Linux), and as a SB1 (Maemo) target. This would allow you to debug (Linux) and see it as both a desktop app and a Maemo 5 app. Probably wouldn't be able to debug on the SB1. But you would be able to debug the non-maemo compiled version. I have already compiled from scratch and started looking over the QT/Creator source code to "try" and figure out how to add my changes to the project as a plugin.
However, while doing "more" research on it, I read on a blog on the QT site that the newest version of QT has built in support for Scratchbox 2 targets. SB2 is not "officially" supported for Maemo development (which is why I didn't bother with SB2 initially in my VM image). So since that point I have dug a bit into SB2 and found out it actually has a _lot_ going for it over SB1. So now my "direction" has changed a bit; if I can get SB2 working properly w/ the fremantle sdk. I will have eliminated a lot of SB1 issues that I was looking at trying to figure out how to work around. Most of the work appears to be done as some enterprising people have created the Maemo SDK+ project which is basically the SDK on SB2. The only issue I am unaware of is how easily it will be to get the Fremantle SDK on it; as the MSDK+ team has only released Fremantle SDK w/ Alpha 1 on it. So I need to play with this to figure out how easily I can install the SDK B2 (which will give me an idea how easily I can install Fremantle SDK final) ---- so this work/investigation is still pending...
Well, today in the dev forum on the thread that I seemed to have hijacked :-D -- SubCore posted a post (http://talk.maemo.org/showthread.php?t=31141&page=13) -- that really made me step back and really think hard about the direction I was goin.
[Go read the first post on Page 13.... I'll wait patiently!]
Did anyone else catch what SubCore did? I am so very impressed and it "makes" complete sense and I feel really (really) stupid that I didn't bother thinking a bit more out of the box. (And thank you SubCore!)
If I'm already sorta shooting for the sky, so why not shoot past it for the moon instead.
---
I want input from Windows Developer on their thoughts on a couple different directions.
1. I can continue on the SB2 route and building a plugin for QT (Linux) and everything will be all integrated in the VM. (This would be continuing to shoot for the Sky!)
- OR -
2. I can continue on the SB2 route, and build a plugin for QT (Windows) that will: (Shoot for the Moon)
- sync your source code from your local directory project into the VM source directory. (Rsync, would do this easily)
- Cause QMAKE to fire inside the Linux Host (SSH would allow this easily)
- On Successful build, "Run" application but set its desktop to your Xephyr desktop. (Again SSH can do this easily)
So basically in all reality your VM is minimized in the background, and you are doing all your work in windows environment and not having to worry about "linux" for the majority of your work.
- OR -
3. <Something else>
Since I am actually primarily a Windows developer anyways; I'm actually thinking shooting for the moon will be just a "tad" harder than shooting for the sky. But all in all; I think it will offer a much better ability to do the development I want to do; since the only time the "vm" will be hindering me will be during the compile stage.
The Pros vs Cons:
Idea #1
Pros: Keeps everything self contained in a VM.
Cons: Everything including QTCreator has to be run inside the VM.
Cons: Non-Windows, larger additional linux learning curve since everything is done inside a linux vm.
Cons: Stupid "Right-Alt" key required to exit VPC VM
Idea #2
Pros: Faster, Native Development, Native Debugging
Pros: VM is just a background program that you don't have to worry about pretty much ever.
Cons: Stuff is installed in the Native OS and VM. (Could be a Pro, depending on how you look at it -- some people might prefer a one piece solution rather than a multi-piece solution)
Anyone have additional idea; thoughts, issues (i.e. burning the non-linux heretic at the stake ) or any other concerns. I would like all of your input, concerns, and comments from all the Linux, Mac and Windows developers! (Please note; the plugin will be O/S on the Garage so that we can modify it for those on Linux/Mac to allow more seamless use from QT -> SB2.)
Nathan
PS. I'm aware of the "brainstorm" system, but this I think would do much better as a discussion first. If you guys/gals would rather this be a brainstorm item; I can do that also.