I have to use Qt Creator on many computers, and I would want to copy all my settings to them. If all are on linux, it's quite easy because I generally copy my home... but I didn't find any way to do it to windows...
Thanks !
Related
I have a quite complicated build process involving different directories (for plugins) ; currently using NSIS on Windows and PackageMaker on OSX but have issues improving them as my install / uninstall process is getting more complex with time.
The more I look into it, the more I feel like I should code my own cross platform installer with a cross platform GUI like wxWidgets (I've used it before) and copy myself the right files in the right directories because I cannot find any good cross platform software installer OR even programmatically customizable software installers for both platforms.
Has anyone gone down that path ? Does anyone know what are the hardest things to achieve, blocking everyone to produce good softwares installers and why doesn't this exists right now ?
Thanks in advance!
Does anyone know what are the hardest things to achieve
The hard part about installers is not wizard GUI, it’s OS integration. That integration is dramatically different across OSes.
On Windows, you need to use MSI. NSIS doesn’t do particularly good job, MSI enables repair/modify functionality, by default MSI can upgrade stuff even when old version is still running (and it continues running while being replaced), some MS libraries ship as *.MSM merge modules… BTW, I usually use WIX for that.
Similarly, on Debian and Ubuntu Linux you need to create .deb packages. Even if you’re making a GUI installer. They also support repair & upgrades, versioning, dependencies, but they do it in completely different way than MSI.
I don’t have much experience with OSX but I think it has some other installer infrastructure implemented by the OS.
I'm starting to work on my master thesis at the moment and I have a (maybe) specific question...
I want to stay on windows OS and run a Linux VM via VirtualBox combined with Vagrant. No Problem. I like the feature to reset the VM via vagrant easily.
The next target is using features like auto-completing or similar while developing in C++. This would help me to work with unknown includes/libraries.
Is it possible to access the filesystem/compiler of the VM while using an IDE (like clion) installed on windows? Without explicit loading of the gui und running the IDE on it? Kinda like working with cygwin? I don't want to use cygwin because it doesn't support c++11 standard (or is there a way???)
Maybe you know an alternative way. I would be glad for all hints solving my problem.
I don't know much about cygwin, though I would be surprised if they cannot get recent versions of gcc. But for certain, you can use MSYS2 to get very recent versions of gcc and many other linux packages, which will support C++11.
It's a matter of opinion how best to do cross-platform development, but an alternative worth mentioning is to use cmake for your project. When you want to code in windows, it can make MSVC 2015 project files for you -- when you want to compile in linux, it can find the dependencies and generate a makefile for you to use. IIUC, cmake is the most widely used cross-platform build system right now, besides gnu make itself. (I'm pretty sure it's more popular than "autotools" nowadays, and its definitely more popular than scons.) The advantage is that you avoid the need to maintain multiple platform-specific project files that essentially say the same thing with different formatting.
On Qt Creator, is there a way separate projects can be made to open in separate windows?
The visual separation of the source code files would make comparison / copying much easier.
EDIT: From sjwarner's answer it seems it's possible to open projects in separate windows under Linux and Windows. However, I am using Mac OS X
Looking at open's man page,
-n Open a new instance of the application(s) even if one is already running.
I figured we can use it like this
open -n /path/to/Qt\ Creator.app
to open and work on multiple Qt Creator projects in parallel.
The visual separation of the source code files would make comparison /
copying much easier.
If you can't open multiple windows, you split the code window to show multiple documents side-by-side (the option is in the Window menu). How effective this is for you depends on your screen size/resolution of course.
I just open Qt Creator twice and then go from there...! You might find it easier to manage multiple projects using the session system though (File->Session Manager)...
Is it possible to create a DVD-Video Menu with ff-mpeg only ?
I may be misunderstanding but I don't think that ff-mpeg alone is capable of creating a dvd menu.
I've found some examples using ff-mpeg and various other tools but nothing solely ff-mpeg. The other tools are all linux and I'm stuck in windows.
If someone would clear that up for me that would be great. Also if you know of a library for creating dvd menus or a command line utility would also help.
Thanks In Advance
FFmpeg cannot do that. Try DVDAuthor instead. Here are (quite old) precompiled binaries for windows.
I'm certain this has been asked before, with with nearly 900k questions, it's hard to find things :)
We are starting a project where we want our C++ and Python to run both under a Unix environment but also under Windows. We want to make our project easy to contribute to as developers, and so we wish to have what each side feels is "natural."
In this case, under Unix, it's automake/autoconf/etc. Under Windows, anything but visual studio project files seems like a mistake. This is mostly because we want windows-native hackers to have a way to easily develop in their natural environment.
How are people doing this sort of thing today? Are Windows coders comfortable in a non-GUI world, so we are trying too hard?
Another goal is that we need automated testing of our project, ideally using the same test code (google-test) on all platforms, etc. This may be matter for another question, though.
Multi-platform development can be a tricky situation. Here are some things we do to ease the process:
Source Control (this one is obvious, a solid code-base that works with both Windows and Linux, we use SubVersion)
Create standards (All of our Makefiles look identical and are easy to implement as are our .sln files for Visual Studio)
Build the application on all platforms, frequently
Be aware of cross library use like QT and any quirks that might contain between Windows and Linux
Sometimes you can't avoid it: #ifndef's to execute some code specific to a platform
We develop in Windows, Sun and Linux (RedHat) with multiple applications both visual and command line based. I hope that helps!