Visual C++ 2010 Different configurations for multiple projects - c++

I've got a solution with multiple projects.
Now every project has its own configuration and nearly all projects do even have multiple configurations.
When building the projects I want that all configurations that do exist are built. Is there a way to do this automatically without picking every configurations by hand and start the building process over and over again?

To do it by hand in MSVC GUI you can do the following:
1. Right-click on the solution, in the popup menu go to the menu item "Batch build..."
2. In the dialog that will appear, do "Select all" or just select the projects/configurations you need.
3. Click button "Build" (or "Rebuild" if you prefer a clean build).

You could write an MSBuild or NAnt script (or even a plain old batch file) to compile all the configurations so you don't have to do it all by hand.

Related

How do I run multiple program in codelite

I had to do my homework with c programming in codelite. Just like codeBlock and Dev-C++ which give user to run multiple console program in the same folder, however, when I run it on codelite it fail.
I have create different workspace folder or even different project.But when I try to build it, only the first c file get to build but not later created c file.
May anyone please help me on this issues?I just want to rum multiple program in codelite just like code block.
Hitting F7, builds the active project (the project with a bold text in the workspace tree view).
To change the active project:
Double click a project, or:
Right click a project and select Make active
To build all the projects in a single click (Default key: F7):
Add new project to the workspace
Right click it and select Build Order
In the dialog that pops up, click on the checkbox near each project
Build the dummy project (make it active as described above) and hit F7
OR, build the entire workspace (Ctrl-Shift-B):
From the menu bar select Build -> Build Workspace (default key bindings: Ctrl-Shift-B)
To execute a project (default key binding: Ctrl-F5):
Make the project active by double clicking it
Hit Ctrl-F5
NOTE:
All keybindings can be changed from Settings -> Keyboard shortcuts
HTH,
Eran

Eclipse C++ Setup, Path to executable not set

I try to program some stuff in c++ with eclipse, but I have slight difficulties.
When I create a new Project compiling and making works fine but when I try to run the Application I get the following error message:
"Launch failed. Binary not found"
So what I found out by using google is this workaround:
-right-click on the projekt in the projekt explorer
-select "run as" and then "run configurations"
-expand "c/c++ application" in the navbar on the left
-and in the main tab of the project select "browse"
-navigate to folder "debug" and select the .exe
after I do that, running works fine but I have to do it again every time I create a new Project, is there a way to automate this process?
And what I also noticed: I don't have a "binaries" folder in my projects in the project explorer, maybe its related to that, but I really don't know.
Any help is appreciated
Thanks
Tim
Edit: added a video: http://youtu.be/RKnTOkoHFRU
There will only be a Binaries folder if the build was successful. You will have to manually build to get a binary in order for the Binaries folder to appear. Likewise, if you clean (remove) your build folder then Binaries will disappear.
I would guess that Eclipse cannot find your binary "out-of-the-box" because you are using external tools to manage the build process; that is, if you have a custom makefile project (or another type of project that uses another tool to handle the building) then Eclipse will not be able to provide a default run configuration because it does not "know" where the binary is or even which binary to run if there are multiple. Thus, you have to set up the Run Configuration as you are doing now.
If you create a project and let Eclipse do the building, then Eclipse can find the binaries automatically. For example, simply create an "Empty C++ Project" under "Executable". Write some hello world code. Click build. Then click run. Eclipse launches the binary because it is managing the build process and thus "knows about" where the binary ends up.
Open project properties (Right click on your project, choose Properties on the menu)
C/C++ Build -> Settings
Click on Binary Parsers tab and check PE Windows Parser
as seen here stackoverflow.com/questions/9407430, answer number 3 or 4
In my case
I just save the programme. Press CTRL+B to build it.
Refresh it.
Then run the programme.
Now you can see this will work fine.
I have already answered this for other question see the link Launch Failed Binary not found Eclipse for C in Windows at 10th number.

Porting several dependent C++ makefile projects into MSVC

I have several projects which depend on each other. For example, when I install them I do this:
Project1:
/configure & make & make install
Project2:
/configure & make & make install
Such that "Project2" depends on some libraries of "Project1". I want to create an MSVC project for Project2, and start working with it, and changing it (and compiling it inside). How can I do this?
Also, how different is this to be done in linux with Eclips (when you don't have admin permission and can't do 'make install')?
You can create project dependence in Visual Studio.
To assign dependencies to projects
In Solution Explorer, select a project.
On the Project menu, choose Project Dependencies.
The Project Dependencies dialog box opens.
On the Dependencies tab, select a project from the Project drop-down
menu.
In the Depends on field, select the check box of any other project
that must build before this project does.
You can read more about it here
Visual Studio is your usual clickfest, but you can define project dependencies.
Define one project per module, then go to the solution properties tab and, for each project, select the checkboxes that inform the IDE that this project depends on a set of other projects.
The IDE will then sort and build them in the appropriate order.

Multiple build targets in visual studio C/C++

Is it possible to compile in one fell swoop multiple build targets? For example, I would like to compile an .exe and a static library which includes everything but the .c file that includes main()
If that's not possible, how to manage multiple build targets like this?
You actually can build multiple configurations of the same project. So you need make sure each individual configuration builds okay and in separate path. Then you can use Batch Build dialog to do build all in one time. I hope it should be even possible to build exe and dll using the same project, but different configurations.
Build multiple configurations simulataneously:
On the menu bar, choose Build, Batch Build.
In the Build column, select the check boxes for the configurations in which you want to build a project.
Choose the Build or Rebuild buttons to build the project with the configurations that you specified.
For more reference, see the batch build dialog box.

How to build the project which contains the active file in visual studio?

I am using visual studio 2010. My code is in C++ and my solution contains many projects and each project again contains multiple folders under it. Whenever I change a file it gets automatically selected in solution explorer as I have enabled the option "Track Active Item in Solution Explorer" in Tools->Options->Projects and Solutions->General. But after changing the file I have to manually select the project (this could be cumbersome as I have to scroll up and down due to many files present) and then right click on it and select "build". Is there any other simple way to do this?
You could assign a shortcut to Build.BuildSelection or Build.BuildOnlyProject
Go to Tools menu, then Options=>Environment=>Keyboard and enter Build.BuildSelection or Build.BuildOnlyProject in the Show commands containing search text area. Then assign two free shortcuts. Build.BuildSelection is for building the current file; Build.BuildOnlyProject will build its project.
I use ctrl-shift+b to build all the solution. I hate to use the mouse for those repetitive tasks.