Programming on an ARM tablet - c++

Not sure whether to ask this here or on SuperUser... so please migrate it if required.
I was recently gifted an Asus Vivo WinRT tablet by my boss and I was looking forward to having a little portable testing environment.
Unfortunately, it contains an ARM processor and, as far as I can see, there are no development tools that will run on it. Everything is x86/x64.
Is there anything I can use to develop on the actual tablet itself? If not .NET, then perhaps a C and/or C++ compiler? SQL even? Anything? I'm having heaps of trouble finding anything myself.

No, there is not. You'll need to use visual studio 2012 and create a windows store application. From there you can build your app and side load it to the tablet. There is a component you can install on rt that will enable you to debug the app as it runs on the tablet however, this comes with vs.
Most apps for any tablet are developed this way, as tablets usually less than ideal development machines.

The only way at the moment is to use remote desktop. use the RDP client on the RT slate to connect to a PC with visual studio installed.

Related

Programming for Windows Phone 8 (and beyond) on GNU/ Linux

Since the VideoLAN programmers do write Windows 8/RT/Phone apps using Linux based operating systems and GCC I was wondering, whether there is some progress in regard to how to program for Windows in a Linux environment, where Windows is used only for testing. How easy/ hard is it, to program a Windows RT (modern UI whatever)/ Windows Phone 8 application on Linux?
I imagine a situation, where you use tools such as Git, Emacs/ VIM, GCC, Mono etc. to do the job. How about submitting the app without Visual Studio?
I ask, because Microsoft open-sourced so much stuff now, using Linux based OS for development could (should?) become feasible while developing apps for their systems. Does anybody have some behind the scenes information on this? It is very hard to find some relevant info.
Note I edited this question to be more "straight to the point"
Links:
This is the VLC Kickstarter page: https://www.kickstarter.com/projects/1061646928/vlc-for-the-new-windows-8-user-experience-metro
I'm a software engineer at Microsoft so I think I could give you some insights on this.
From a testing perspective, you should definitely have a Windows machine to test against. You can install Windows 8 as a VM using Virtual Box or something similar. You could also remote into a Windows machine if you have access to one.
Visual Studio can't be installed in Linux, as you know, but there are other C#/ASP.NET/etc. IDE's that you can use natively on Linux. Look into Wine for Linux: http://www.winehq.org/about/. It may help you somewhat.
As an aside, developing applications for Windows will be getting easier in the coming months. As was announce at MS Build, Microsoft is moving towards a universal app store that will make your app run on all Windows devices: PC, tablet, phone, and Xbox. This doesn't help with developing apps on Linux, but if you're a Windows developer, you might want to keep your eyes open about the new universal-style apps.

Run software from USB device

I am developing a desktop based application using VC++.
I have stuck on one problem that the application should run through USB too.
I have searched for the answer I get to know that I can do it by changing installation path to USB device from this Link.
But my application needs some supporting platform like .Net Framework 4.0 Client Profile, and some redistributables for running application.
So, Can anyone tell me how can I make my application running through USB?
Thanks in advance.
regarding .Net Framework 4.0 Client Profile
As far as i know the .Net runtime can not be included in an Application.
The PC you want to execute your Application on needs to have the proper Runtime Version installed, it doesn't matter if its running from USB or not.
Here is a good article about the topic:
http://johnhaller.com/useful-stuff/dot-net-portable-apps
it basically concludes that you have to chose the .Net version depending on your target OS.
for Windows Vista and Windows 7 it would be .Net 2.0,
for Windows 8 it would be .Net 4.0
There might be a solution using Portable.Net or Mono but thats a bit above my developer skills :)
regarding redistributables
it really depends on what kind of redists you mean, if its the visual c++ redist you only need to include the right DLL, for other redists im not sure.
Btw Apps running from USB Sticks are usually called 'portable app', if you search for dotnet portable apps you can find quite some information.

What are some ways that I can develop C++ apps in Linux from a Windows workstation?

I'm developing C++ apps for Linux, but my workstation is Windows 7. I've read that Visual Studio is the strongest C++ IDE for Windows, but I actually want to execute the code on Ubuntu and be able to use a more graphically pleasing debugger than gdb, although the functionality of gdb is pretty good. I'm really happy with valgrind as well, but again, I'd like to be able to leverage that in an IDE in windows.
I currently use QtCreator as my C++ IDE and I edit the files over a samba mount to the linux box. I use Putty to run the Linux commands. I use git as my source control system, gcc as my compiler and cmake as my build system. I like QtCreator, but as I have it configured, I'm not taking advantage of code-completion or debugging.
The closest thing I've seen is CodeWarrior. It allows for executing code on remote embedded systems and a full debugger. Has anyone ever used this for general app development on Ubuntu?
Is QtCreator the right IDE for me? Is there something else that I can do to configure it so that it'll give me those rich IDE features that I'm looking for? Or should I look to another IDE? Also, are there some tools that I've neglected to mention that would make C++ development easier on a Linux box from a Windows workstation?
Thanks in advance...
It is not clear, you run QtCreator on windows?
If so, you can run QtCreator in Linux,
plus install nxserver on Linux,
and nxclient on windows (http://www.nomachine.com/).
So you run nxclient on windows, login to linux,
and work on linux, in compare with virtual machines,
you get more prefomance.
Use VirtualBox and linux virtual machines?
X Windows.
You could install Cygwin to run an X11 server on your Windows 7 desktop, then run an X11 graphical IDE like QtCreator on your Linux server that renders directly to your Cygwin Windows 7 desktop. I actually tried setting this up with Code::Blocks on openSUSE and Cygwin on Windows 7 just a few weeks ago because I'm in the same situation you're in. It works... kind of. There are weird intermittent errors.
Your scenario is exactly the scenario that the X Windows system was designed for, and it is awesome in concept, but the actual X11 protocol design and implementation is, I gather, old and pretty hairy. I have very little experience with X, but the people who do have lots of experience with it seem to complain about it a lot, and I suppose there are good reasons for that. Too bad, because it would be wonderful if there were a technology like X Windows that worked. AJAX is basically a cheap hack for solving the same kind of problem that X Windows tried to solve... running a remote application with local rendering of a rich GUI.
I gave up on X and I still do the same thing you do: I have putty and Samba-mounted files that I edit with Visual Studio. Visual Studio is the best text editor I've ever used. All the other Visual Studio IDE features are gravy.
There's some solutions :
VmWare : not free but really good
Virtualbox : free but less powerfull than VmWare
KVM/Qemu : Free but less powerfull than VmWare

Is it possible to program for Windows Phone 7 in standard C++ only?

I know that the recommended language for Windows Phone 7 development is C#.
However, for various reasons, I very much prefer continuing to program in standard C++, if possible.
Is it possible to program for Windows Phone 7 in standard C++ only?
If the answer is yes, what tools and resources do I need to accomplish that?
EDIT, finally: for WP7 it won't ever be, but for Windows Phone 8 - yes you can. Native apps, C/C++, iOS/Android portability and code sharing, DirectX. You'll need Visual Studio 2012 and Windows 8 for WP8 development, though. VS2010 is not getting the requisite SDK. To run the emulator, you'll need a 64-bit physical Windows 8 box with a SLAT-enabled CPU. You can still develop on a virtual machine, but you'd need a device to run apps, the emulator won't start.
The nongame UI, however, will still be XAML-based and managed. The entirety of Win32 API will not be supported. They're pushing a model with managed UI layer and a native middleware beneath it. Purely native development is still not an option; although one might try with WinMD classes as code-behind for XAML. The visual XAML designer will probably choke, and you'll need a dummy managed DLL anyway.
EDIT: even assembly, as long as it's targeting Thumb-2 and the mnemonics are UAL-style. For running on the simulator, you'd have to produce an alternative set of assembly files (or other sources) targeting Intel.
For the sake of posterity, here's the pre-06/20/2012 answer:
If you work for Microsoft or an OEM, then yes. Otherwise, no (for now).
There's hope though. Google did relent and issued their NDK after a while; Microsoft might, too. The native code capability is already there. Once they come up with a sensible sandboxing solution, why not.
Also, there's already some pressure from big-name software vendors to open up native development. Mozilla people stated outright that there will be no Firefox on WP7 unless it's native. Similar rumors about Flash.
EDIT: if you want a native SDK on WP7, like I do, please go sign the petition here and/or the one over there. Thank you!
EDIT2: see this. It's a leak and therefore not official, but still, I say there's some hope.
EDIT3: also this. Still not official, but this rumor moves the timeframe for native app support even closer - to the upcoming Tango release.
EDIT4: Microsoft seems to be pretty keen to promote WinRT, their new tablet-oriented XAML-based app platform, which allows for (among other things) unmanaged C++. Now, on every other major mobile OS the tablet and the phone app stacks are one and the same. Just sayin'.
EDIT5: there's been some proof-of-concept work along the lines of C++ => LLVM => MSIL and C++ => LLVM => C#, but nothing production-quality so far.
Phone manufacturers such as Samsung can deploy applications written in unmanaged code, but all other developers can not.
No that is not possible. Microsoft has made a decision to only allow application developers to use managed code on the Windows Phone 7 devices.
According to Wikipedia Windows Phone 7.0 runs Windows CE 6.0 R3/7.0 hybrid as operating system.
In theory one could use C++ to build standard* C++ programs targeting Windows CE 6.0 R3 and 7.0 (supposed to come out on Q1 2011). I mean all the standard* dlls should be there (gdi32.dll, user32.dll) Internet Explorer and other C++ programs are still running on Windows Phone 7.
The how to get the application on the phone? and how to run the application on the phone? are the next questions which at the moment I don't know how to answer.
This interview tells something about it: Writing the WP7 App Platform in C# and C++ I haven't watched it yet, so you might add respective comments :)
Windows Phone 7 supports Silverlight and XNA.
All programs for Windows Phone 7 are written in .NET managed code. It is also possible to write Windows Phone 7 applications in Visual Basic .NET.
Visual Studio 2010 Express for Windows Phone includes XNA Game Studio 4.0 and an on-screen phone emulator, and also integrates with Visual Studio 2010. You can develop visuals and animations for Silverlight applications using Microsoft Expression Blend.
The Silverlight and XNA platforms for Windows Phone 7 share some libraries, and you can use some XNA libraries in a Silverlight program and vice versa.
But you can’t create a program that mixes visuals from both platforms. Maybe that will be possible in the future, but not now.
EDIT:
to be more clear..there is no native C++ support you'll have to use either Silverlight or XNA,both are based on .net framework.

Windows 7 Development Platform

As some of you may have noticed, a few hours ago Microsoft released Windows 7 RTM to those of us with a Technet or MSDN subscription.
I unfortunately didn't have the opportunity time-wise to test the new OS. I'm asking of anyone who used it with Visual Studio 2008 during RC what was your experience? Did you feel the RC offered a stable environment for it? Did it behave well under Windows 7? In short, can I rely on Windows 7 as my soon-to-be development platform?
On another note, did anyone did any tests the new crt? What were the results?
EDIT: As an afterthought, I'm interested indeed in both 32bit and 64bit experiences, since the OS will go to just one of these machines.
x58 chipset and i7 processing unit, Windows 7 RC x64, I had a lot of issues with programs locking up and crashing (not responding, invoking windows "Ill find out whats wrong! .. not) when you try to close the form. It kills development time.
Especially visual studio 2008, countless crashes and lock ups or delays. It does run good most of the time, but it has its moments.
My experience is that its not 100% solid.
I thought that it was weird, because its built in the Vista SP1 core, and my hardware runs Vista very solid, no hitches -ever-.
And yes, it was a fresh install of Win7, not an upgrade. I'm installing Server R2 though, so I'll see how that works out! :D
edit
I couldn't put my finger on it. Under Vista SP1/SP2 it runs rock solid. The video drivers worked great however for my GTX295, motherboard BIOS is up to date.
I don't think that the problem was driver related per-se, but I can't say. The symptoms purely came across as a software related issue with the OS and how it handles the Windows.
The Event logs are not a help, because a generic form crashing doesn't produce any real detail for me to burn through and say "Ah ha!".
I must say though, it was mostly Visual Studio and forms run under the debugging host process. Anything else was pretty okay, so it could be more or less just a compatibility issue
edit
After a fresh install of Windows Server R2 RC, after the initial installation and a driver install for a wireless adapter, the system fails to boot up properly (or atleast "detects" an problem), so you have to manually tell it to boot Windows up normally, which works.
After doing some Windows updates, same thing, but this time the OS fails even when trying to boot up normally and just does a reboot (probably a blue screen, but surpressed by my BIOS)
My experience with R2 was blazingly fast, both in performance and a drop in satisfaction and warm fuzzies about it working good
It seems that either way you go, on the newest of new hardware, it has its issues. Bummer.
The best way to write Win7 compatible programs is to use Win7 as a development platform. I use Win7 x64 with Visual Studio 2008 almost half a year and it looks pretty stable and has some helpful features (e.g. snap). At this moment all my programs are ready for certification and compliant with all Win7 requirements. I use VirtualBox to test my programs in Windows XP/Vista environment and VirtualBox works without any problems on Win7 too.
My hardware is Intel Q6600 processor on ASUS P5KC motherboard. ATI video card was unstable until some build of drivers, now it works fine. NVidia video card has no problems all the way.
I've been using Visual Studio 2008 under the RC for a while now. No issues at all. For that matter, I don't remember having any under the Beta either.
Windows 7 is good to go for development, as far as I'm concerned.
We've been piloting Windows 7 internally for some time now and have had very few if any troubles with it. I've personally been using it with Visual Studio 2008 (Full and Express) and have been very pleased with the OS overall. I recommend it. (It is fair to note, however, that we use beefy hardware, generally dual or quad core, 4GB RAM and good video cards for our pilot).
I been using windows 7 (x86) for few month now, never had a single problem with that.
Visual Studio 2008, Adobe products, Netbeans and everything else running just fine.
Win7 RC1, VS 2008 SP1 here. The only issue so far is graphical glitches in drawing VisualSVN icons in the Solution Explorer if I scroll the projects tree using mouse wheel.
Also sometimes Tortoise SVN cache crushes. But it might not be related to Windows 7.