Unable to build Chromium 57 onwards in VS 2005

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

Unable to build Chromium 57 onwards in VS 2005

Postby atp15 » Wed Aug 02, 2017 8:51 am

I have successfully build libcef_dll_wrapper 57 in Visual Studio 2005, however when I try to include CEF in a project in fails to build.

I didn't have any problems with Chromium 56 or below.

Below are some of the errors I get. It's not the complete error list (there are 3266 errors), but gives the main idea of what the errors are. All the errors are in cef_template_util.h or cef_scoped_ptr.h

Thanks

Code: Select all
error C2143: syntax error : missing ',' before 'constant'                    include\base\cef_template_util.h   79
error C2645: no qualified name for pointer to member (found ':: *')            include\base\cef_template_util.h   80
error C2143: syntax error : missing ')' before '`global namespace''            include\base\cef_template_util.h   80
error C2143: syntax error : missing ';' before '{'                            include\base\cef_template_util.h   80
error C2065: 'C' : undeclared identifier                                    include\base\cef_template_util.h   95
error C2065: 'D' : undeclared identifier                                    include\base\cef_template_util.h   105
error C2143: syntax error : missing ',' before ')'                            include\base\cef_template_util.h   105
error C2947: expecting '>' to terminate template-argument-list, found '>'    include\base\cef_template_util.h   114
error C2236: unexpected 'struct' 'is_same'. Did you forget a ';'?            include\base\cef_template_util.h   115
error C3381: 'is_same' : assembly access specifiers are only available in code compiled with a /clr option   c:\development\cef\include\base\cef_template_util.h   115
error C2011: '<unnamed-tag>' : 'enum' type redefinition                      include\base\cef_template_util.h   119
error C2653: 'cef_internal' : is not a class or namespace name                include\base\cef_template_util.h   192
error C2039: 'is_convertible' : is not a member of 'base'                    include\base\cef_scoped_ptr.h   174



atp15
Techie
 
Posts: 22
Joined: Thu Nov 17, 2016 5:25 am

Re: Unable to build Chromium 57 onwards in VS 2005

Postby magreenblatt » Wed Aug 02, 2017 11:07 am

Update to a newer Visual Studio version. There are reports that VS2008 still works, but I haven't tested that myself.
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm

Re: Unable to build Chromium 57 onwards in VS 2005

Postby Czarek » Thu Aug 03, 2017 12:15 am

There were fixes for VS2008 in v58, see: https://bitbucket.org/chromiumembedded/cef/issues/2155
Maintainer of the CEF Python, PHP Desktop and CEF C API projects. My LinkedIn.
User avatar
Czarek
Virtuoso
 
Posts: 1927
Joined: Sun Nov 06, 2011 2:12 am

Re: Unable to build Chromium 57 onwards in VS 2005

Postby atp15 » Thu Aug 03, 2017 9:32 am

Unfortunately, moving to another Visual Studio version currently isn't an option as this if for a large existing project. However I tried it in VS 2017 with the same setup and still got all the same errors.

I'm using CEF inside a DLL project used by a DLL project. I'm currently trying it with Chromium 60, however this has all the same problems.
atp15
Techie
 
Posts: 22
Joined: Thu Nov 17, 2016 5:25 am

Re: Unable to build Chromium 57 onwards in VS 2005

Postby magreenblatt » Thu Aug 03, 2017 10:45 am

The compiler toolchain is what matters, not the IDE specifically. Are you still compiling with the VS2005-era toolchain (e.g. a really old Windows or Platform SDK installation?)
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm

Re: Unable to build Chromium 57 onwards in VS 2005

Postby atp15 » Thu Aug 03, 2017 11:02 am

We're compiling with VS 2005, with Windows 8.1 Kit. Don't know if that answers your question.
atp15
Techie
 
Posts: 22
Joined: Thu Nov 17, 2016 5:25 am

Re: Unable to build Chromium 57 onwards in VS 2005

Postby magreenblatt » Thu Aug 03, 2017 11:12 am

If you're using the compiler that ships with the Windows 8.1 SDK then you should be OK. How do your compiler flags differ from cefclient? For example, error C2143 can be caused by using "/clr": https://msdn.microsoft.com/en-us/library/0afb82ta.aspx
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm

Re: Unable to build Chromium 57 onwards in VS 2005

Postby atp15 » Thu Aug 10, 2017 3:56 am

I couldn't find any sign of us making use of the /clr flag. I think I've identified the changes that cause CEF to stop working with our application. I built CEF branch 2987 changeset 744e998 and tested this and managed to successfully use this with our application. When I built branch 2987 changeset 21680d7, which is only 3 changesets later I started getting all the build errors previously mentioned when I try to use it with our application.

I believe my problems are due to ticket #2090, "Add support for non-ref-counted interface classes". Are there changes I need to make to our application to support the changes related to this ticket?
atp15
Techie
 
Posts: 22
Joined: Thu Nov 17, 2016 5:25 am

Re: Unable to build Chromium 57 onwards in VS 2005

Postby atp15 » Mon Aug 21, 2017 3:32 am

Can you give any insight into why the three commits linked below will have lead me to no longer be able to use CEF in my application, generating the errors mentioned in my first post. Builds based on older commits work, but these commits on wards fail.

Thanks

371eca0 https://bitbucket.org/chromiumembedded/ ... 48?at=2987
17827d6 https://bitbucket.org/chromiumembedded/ ... d8?at=2987
21680d7 https://bitbucket.org/chromiumembedded/ ... 26?at=2987
atp15
Techie
 
Posts: 22
Joined: Thu Nov 17, 2016 5:25 am

Re: Unable to build Chromium 57 onwards in VS 2005

Postby Czarek » Mon Aug 21, 2017 9:31 am

Have you tried with latest CEF?
Maintainer of the CEF Python, PHP Desktop and CEF C API projects. My LinkedIn.
User avatar
Czarek
Virtuoso
 
Posts: 1927
Joined: Sun Nov 06, 2011 2:12 am

Next

Return to Support Forum

Who is online

Users browsing this forum: Google [Bot] and 94 guests