how to create .exe from CEF source code on windows (without using Visual studio) - windows

i have downloaded CEF binaries from the link http://opensource.spotify.com/cefbuilds/index.html as successfully created a .sln file using VS 2017.
But now our requirement is to compile the cef binaries on windows through MinGW or through command line(Do not want to use Microsoft visual studio).
can someone helpme out with this thing?

Only Visual Studio is officially supported to build CEF on Windows. You'll unlikely be successful to make a different compiler work in a reasonable time.
There is also ways to compile a VS project via the command line. Example: msbuild project.sln /Flags... For more details have a look at this stackoverflow link
If you ever want to compile libcef (Chromium) for Windows, the whole build is entirely command-line only despite using the Visual Studio compiler.
There is a free edition of Visual Studio called Visual Studio Community (used to be Visual Studio Express):
https://www.visualstudio.com/vs/community/
Also, if you are a small company, you might want to check out Microsoft's Action Pack for 400 EUR/year which includes 3 Visual Studio Prof. subscriptions.
Have a look at the CEF wiki:
https://bitbucket.org/chromiumembedded/cef/wiki/MasterBuildQuickStart.md

I do not have enough points to comment on Eugen. Maybe someone can edit.
I think Eugen is right, and VS is a must. I suggest flowing also this link to learn how to build CEF programmatically and on different OS.

Related

What do I need to do to program an MFC/STL program in Visual Studio?

I've installed Visual Studio on my private PC, the version is "Microsoft Visual Studio Community 2019", version 16.1.6.
In order to prepare a job interview, I'd like to do some basic MFC/AFX programming, starting by the basic CMapStringToString example from the Microsoft website.
This, however, seems not to work, as I don't have access to the mentioned file afxcoll.h. Indeed: there is no file, called afx*.h on my PC.
Is this a limitation of my free downloaded Visual Studio installation, or is there any add-in, add-on, extension or whatever I can install in order to work with CMapStringToString objects?
Thanks in advance
You need to explicitly install MFC support in Visual Studio - which you can do on Community editions:
Open Visual Studio Installer from your Start Menu
Click the Modify button
Select the Individual Components tab
Scroll down to SDKs, Libraries and frameworks
Check the various MFC/ATL options for various platforms

Does MSbuild require Visual Studio to be installed on the build server?

Can we use MSBuild without Visual Studio 2012?
Currently, we have a build server where we are compiling and creating deployment copy of one of our projects, it has Visual Studio Professional Edition installed. We are setting up a new build server now. Do we really need Visual Studio 2012 on the new build server?
If yes, then how? I googled it but I couldn't find an answer.
We have spent a lot of time trying to get our Build Servers to work without Visual Studio.
We do not use TFS for builds and therefore I am not sure the license exemption above applies to us. Also not having Visual Studio installed helps you really understand how your software is building and get references correct.
We have seen many examples of solutions with projects that contains references for the same piece of software with some in nuget packages shipped with the solution and others that are pointing to locations in the "program files" path which are not present on machines without Visual Studio installed. Once you attempt to build software without VS installed you can really see how "self-contained" your applications are.
Before I start listing the things you typically need to install, let me just point out that MS Build is now no longer considered part of the .NET framework but is shipped with Visual Studio but can also be installed separately. See this blog post for more: http://blogs.msdn.com/b/visualstudio/archive/2013/07/24/msbuild-is-now-part-of-visual-studio.aspx
The following software needs to be installed for most builds, there may be others for example if you are creating portable class libraries.
Microsoft Build Tools 2013
Web Deploy 3.5 (for packaging applications)
Microsoft .NET Framework 4.5.1 Developer Pack
Microsoft .NET Framework 4.5.2 Developer Pack
Windows Software Development Kit (SDK) for Windows 8 (You can use the SDK to build applications that target these operating systems: Windows 8, Windows 7, Windows Vista, Windows Server 2012, Windows Server 2008 R2, Windows Server 2008)
The following directories need to be copied:
Reference Assemblies (need to be copied from a machine running Visual Studio from/to directory C:\Program Files (x86)\Reference Assemblies)
Public Assemblies (need to be copied from a machine running Visual Studio from/to directory C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\PublicAssemblies
We also use Wix and therefore we install the following:
WIX Toolset 3.8
I have a similar set for testing however that was not part of the question so I will leave that off!
Hope this helps someone.
Update: 3rd March 2017
Microsoft recently responded to a long standing user voice request "Support .NET Builds without requiring Visual Studio on the server" for the requirement for Visual Studio to be installed on a build server to be removed.
From the description on the download page "These Build Tools allow you to build native and managed MSBuild-based applications without requiring the Visual Studio IDE." Not tested yet but after RTM I will look at this and provide a further update here.
There is a blog post that promises these build tools install all pre-requisites and can be used to build MS Build based applications.
No, you don't need Visual Studio on your build box. If I recall correctly, msbuild is installed as part of the .NET framework - it certainly used to be.
Depending on what you're building, you may find that there are some things which are easier to get working if you do install Visual Studio though - things like portable class library profiles. While there are usually non-VS installers available, I've found it simpler to install an Express edition of Visual Studio just to get the bundled build targets.
Remember: The easiest way to build your visual studio solutions is to install Visual Studio on the build server. Even Visual Studio Express is often enough.
That said, you can make it work without it. But it it sometimes a lot of work to figure out. You'll need to install the right Windows / .NET Platform SDK. You can install multiple of these SDKs side by side. Now, when you depend, for example, on ASP.NET MVC 5 or Entity Framework 6, you might need to install further SDKs to get your application to compile. The downloads for these all assume that you also have Visual Studio installed, but many of their payloads can also be installed separately. It can become quite a hassle.
Personally I've grown tired of trying to figure out which parts of which installers enable what. But that is also driven by the fact that Microsoft allows you to install Visual Studio on a build server (TFS) with the same license as your development machine as long as you are an MSDN subscriber. Check the Visual Studio License Whitepaper for more details.
Using Visual Studio on the Build Server
If you have one or more licensed users of Visual Studio Ultimate with MSDN, Visual Studio Premium with MSDN, or Visual
Studio Professional with MSDN, then you may also install the Visual Studio software as part of Team Foundation Server
2013 Build Services. This way, you do not need to purchase a Visual Studio license to cover the running of Visual Studio on
the build server for each person whose actions initiate a build.
If you, like me, would prefer this to change in the future, I suggest you make sure you're heard by submitting your request or voting for an existing one over at the Visual Studio User Voice.
Here's just a quick take on this.
Your build machine should decouple development tools as much as is possible. With that said, and as already stated by others here, MSBuild can be run independently of Visual Studio, and it should!
If your build requires Visual Studio to run then there is a very good chance that you have a solution or project architecture problem that ought to be resolved.
Visual Studio doesn't need to be installed. MSBuild is part of the .net SDK.
Other .net dependencies will need to be installed though, if you are using them. MSTest, or anything that is part of Team foundation will require Visual Studio installed.
I believe you only need MSBuild ( that is part of the .NET framework you're targeting ) .
Make sure you install the proper .NET distribution
the following is a good place for build servers it have the developer tooling.
The .NET Framework 4.5.1 Developer Pack installs the multi-targeting pack for .NET Framework 4.5.1. Developers can build applications targeting the .NET Framework 4.5.1 using either Visual Studio 2012 or third party IDEs. You need to download the web installer instead of this package if you intend to redistribute .NET Framework 4.5.1.
http://www.microsoft.com/en-us/download/details.aspx?id=40772
Best of luck.
C++ :
There is a "Build Tools" that contains MSBuild, Visual studio is not required.
From the official doc :
These tools allow you to build C++ libraries and applications
targeting Windows desktop. They are the same tools that you find in
Visual Studio 2015 in a scriptable standalone installer. Now you only
need to download the tools you need to build C++ projects.
Managed :
The same applied : Build Tool Managed

Build C++/C# created with Visual Studio 2012 without VS 2012 being installed?

If I have a Visual Studio Solution file of VS2012 with few C++ native projects and a few C# projects, can I build this solution without installing Visual Studio 2012 itself?
This would ease (among other things) the maintenance on our Build-Server nodes.
You will need to install VS2012 Express.
Based on Microsoft documentation:
The Windows SDK no longer ships with a complete command-line build environment. You must install a compiler and build environment separately. If you require a complete development environment that includes compilers and a build environment, you can download Visual Studio 2012 Express, which includes the appropriate components of the Windows SDK.
There's also SharpDevelop... That should be able to build whatever you need. You may need to install the SDK, too- not sure. But it's quite a bit more lightweight than VS (express or not). And there's always Mono (and MonoDevelop/Xamarin Studio) for the C# and LLVM, MinGW and LCC for the C/C++ compilation, should you feel Microsoft's compilers have cooties. LLVM just released their first version for Windows not long ago, but it seems pretty solid... MinGW has been working on Windows for ages (and cross-compiling to Windows from various POSIX OSes, to boot). LCC can be slightly flaky at times, but it's tiny. I think the licensing is a bit restrictive, too, but you'll want to check yourself if that's the route you intend to go.
Also... just found this: Walkthrough: Using MSBuild to Create a Visual C++ Project.

Visual Studio 11 and handling msvcr110.dll

I decided to try out Visual Studio 11, concluded that I don't like it and uninstalled it promptly. It seems quite a few of my old projects now crash with the following error.
The program can't start because MSVCR110D.dll is missing from your computer. Try reinstalling the program to fix this problem.
Unfortunately my understanding of the problem ends here, the solutions I've come across seem to suggest to change the runtime library to Multi-Threaded which results in even more errors that I don't have the knowledge or patience to deal with.
In short the question would be, how can I undo the changes Visual Studio 11 made, whatever they are.
As the comment by Hans Passant says, Microsoft does not permit the debug dll to be redistributable; they are only available when Visual Studio is installed.
Even if you are able to rebuild your projects as release builds, you may get a new problem on machines when you try to run the projects, namely, missing mvcr110.dll.
In this case, and Visual Studio need not be installed, you can get the missing dll from Microsoft.
Microsoft provides downloadable installers for these redistributable dll at:
http://www.microsoft.com/en-us/download/details.aspx?id=30679
Run the appropriate installers.
VSU3\vcredist_arm.exe , VSU3\vcredist_x64.exe , VSU3\vcredist_x86.exe
You need to downgrade the "Platfrom Toolset" property for each of your projects from v110 to v100(or v90).
To change the project toolset
In Visual Studio, in Solution Explorer, open the shortcut menu for your project and then choose Properties.
In the Property Pages dialog box, open the Configuration drop-down list and then select All Configurations.
In the left pane of the dialog box, expand Configuration Properties and then select General.
In the right pane, select Platform Toolset and then select the toolset you want from the drop-down list. For example, if you want to compile with the Visual Studio 2010 toolset, select Visual Studio 2010 (v100).
Choose the OK button.
That one is a DLL from Microsoft VS 2011/2
qutoing from http://www.rhyous.com (it talks about msvcrt100.dll but it's the same principle):
"This msvcr100.dll is the Microsoft Visual C++ Redistributable dll
that is needed for projects built with Visual Studio 2010. The dll
letters spell this out. MS = Microsoft, V = Visual, C = C program
language, R = Run-time, 100 = Version "
If you create a C++ project in Visual Studio 2010, this file is probably needed.
you need to install the MS redistributable, but seems it's not yet available
see this thread - http://social.msdn.microsoft.com/Forums/en-US/parallelcppnative/thread/8963c3d9-26ec-4748-af95-7c696a27c431
I would guess that your compiler is still the VS2011 one, that's why your program depends on vs2011 DLLs..
Just hat the same problem after updating my Visual Studio. The problem is that the new project is using the v110 plattform and the old one was using the v110 platform. That means I required now the Microsoft Visual C++ 2012 Redistributable as mentioned here:
http://www.admin-enclave.com/en/solutions/windows/82-how-to-fix-the-program-cant-start-because-msvcr110-dll-is-missing-from-your-computer-error-on-windows.html

Using Visual Studio (Isolated Shell?) to program ARM device

I want to use Visual Studio (maybe Isolated Shell) to create a custom IDE for programming a custom ARM-based device in C. The device has no OS and is being used like a microcontroller.
Atmel's AVR Studio 5 uses the Visual Studio 2010 Isolated Shell and I would like to do something similar. I am currently using a gcc-based ARM compiler.
I've already been through MSDN's documentation for extending Visual Studio, but I can't find anything specific to this task. Can someone give me an idea of how to approach this? For example, is there some way for me to leverage the Visual C++ editor without having to use Babel to re-teach Visual Studio about C?
MSDN documentation is not enough if you want to create a new IDE in fact. My personal suggestion is that you learn from existing large samples, such as this Python IDE,
http://pytools.codeplex.com/
It is designed by Microsoft, so it provides much useful information that does not appear in MSDN.
However, reusing Visual C++ editor means you cannot use only Visual Studio 2010 Isolated Shell (I think), as that may require some assemblies that only full Visual Studio has.

Resources