branch 3071: Windows: Fix ATL-related build errors with cefclient

Issue #2200 resolved
Satoshi Kojima
created an issue

What steps will reproduce the problem?

Build distribution package

python automate-git.py --download-dir=cef-build --branch=3071 --x64-build

In the extracted package, build cefclient and cefsimple

"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat" & cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release .. & ninja cefsimple cefclient

What is the expected output? What do you see instead?

expected: cefclient and cefsimple are built successfully
actual : this error occurs

osr_accessibility_node_win.cc.obj : error LNK2019: unresolved external symbol _AccessibleObjectFromWindow@16 referenced in function "public: virtual long __stdcall client::CefIAccessible::get_accParent(struct IDispatch * *)" (?get_accParent@CefIAccessible@client@@UAGJPAPAUIDispatch@@@Z)
osr_window_win.cc.obj : error LNK2019: unresolved external symbol _LresultFromObject@12 referenced in function "private: static long __stdcall client::OsrWindowWin::OsrWndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?OsrWndProc@OsrWindowWin@client@@CGJPAUHWND__@@IIJ@Z)
tests\cefclient\Release\cefclient.exe : fatal error LNK1120: 2 unresolved externals

What version of the product are you using? On what operating system?

  • CEF branch 3071 @ commit 1ebbf3c
  • Windows 10 Professional

How to fix

You should add "Oleacc.lib" to CEF_STANDARD_LIBS incef_variables.cmake.in.

Comments (8)

  1. Chris

    Result after applying your fix:

    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(681): error C2653: 'OsrAXNode': is not a class or namespace name
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(681): error C2039: 'string': is not a member of 'std'
    3>predefined C++ types (compiler internal)(209): note: see declaration of 'std'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(681): error C2065: 'string': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(681): error C2146: syntax error: missing ')' before identifier 'event_type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(681): error C2143: syntax error: missing ';' before '{'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(681): error C2447: '{': missing function header (old-style formal list?)
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(684): error C2653: 'OsrAXNode': is not a class or namespace name
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(686): error C2143: syntax error: missing ';' before '*'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(686): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(686): error C2653: 'OsrAXNode': is not a class or namespace name
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(686): error C2065: 'OsrAXNode': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(686): error C2065: 'parent': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node_win.cc(686): error C2448: 'client::GetNativeAccessibleObject': function-style initializer appears to be a function definition
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(14): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(16): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(19): error C2550: 'client::{ctor}': constructor initializer lists are only allowed on constructor definitions
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(20): error C3861: 'UpdateValue': identifier not found
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(21): warning C4508: 'client::{ctor}': function should return a value; 'void' return type assumed
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(23): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(25): error C2065: 'node_id_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(28): error C2065: 'role_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(33): error C2065: 'child_ids_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(33): error C2228: left of '.clear' must have class/struct/union
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(33): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(35): error C2065: 'child_ids_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(35): error C2228: left of '.push_back' must have class/struct/union
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(35): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(41): error C2065: 'location_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(47): error C2065: 'offset_container_id_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(51): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(53): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(53): error C2227: left of '->HasKey' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(53): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(54): error C2065: 'name_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(54): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(54): error C2227: left of '->GetString' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(54): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(55): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(55): error C2227: left of '->HasKey' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(55): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(56): error C2065: 'value_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(56): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(56): error C2227: left of '->GetString' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(56): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(57): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(57): error C2227: left of '->HasKey' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(57): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(58): error C2065: 'description_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(58): error C2065: 'attributes_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(58): error C2227: left of '->GetString' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(58): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(63): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(63): error C2270: 'GetWindowHandle': modifiers not allowed on nonmember functions
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(64): error C2065: 'accessibility_helper_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(65): error C2065: 'accessibility_helper_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(65): error C2227: left of '->GetWindowHandle' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(65): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(69): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(69): error C2270: 'GetBrowser': modifiers not allowed on nonmember functions
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(70): error C2065: 'accessibility_helper_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(71): error C2065: 'accessibility_helper_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(71): error C2227: left of '->GetBrowser' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(71): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(75): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(76): error C2065: 'parent_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(79): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(79): error C2270: 'AxLocation': modifiers not allowed on nonmember functions
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(80): error C2065: 'location_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(81): error C2065: 'accessibility_helper_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(81): error C2227: left of '->GetNode' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(81): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(81): error C2065: 'offset_container_id_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(84): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(84): error C2227: left of '->AxLocation' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(91): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(91): error C2270: 'ChildAtIndex': modifiers not allowed on nonmember functions
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(92): error C3861: 'GetChildCount': identifier not found
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(93): error C2065: 'accessibility_helper_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(93): error C2227: left of '->GetNode' must point to class/struct/union/generic type
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(93): note: type is 'unknown-type'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(93): error C2065: 'child_ids_': undeclared identifier
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(99): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests\cefclient\browser\osr_accessibility_node.cc(101): error C2027: use of undefined type 'client::OsrAXNode'
    3>cef_binary_3.3071.1634.g9cc59c8_windows64\tests/cefclient/browser/osr_accessibility_helper.h(14): note: see declaration of 'client::OsrAXNode'
    
  2. Log in to comment