wjywbs / javacef

Embed Chromium browser in Java SWT. (Previously code.google.com/p/javacef)
107 stars 39 forks source link

Unable to build for windows x64 configuration #27

Open abhisheksaatal opened 8 years ago

abhisheksaatal commented 8 years ago

Hi ,

I would be pretty delighted if you can help me with this. When running the configure.bat I gave the build environment as msvs 2013. When building the JavaCef library for x64 architecture using visual studio

These errors occur when compiling the chromium_loader project , during the chromium loader compilation when the cc file chromium_loader_win.cc is compiled and linked these errors are shown by the visual studio compiler.

The dependent project libcef_dll_wrapper gets build successfully though

I am getting following linker errors. Severity Code Description Project File Line Suppression State Error LNK2019 unresolved external symbol imp_cef_get_extensions_for_mime_type referenced in function "void cdecl CefGetExtensionsForMimeType(class CefStringBase const &,class std::vector<class CefStringBase,class std::allocator<class CefStringBase > > &)" (?CefGetExtensionsForMimeType@@YAXAEBV?$CefStringBase@UCefStringTraitsUTF16@@@@AEAV?$vector@V?$CefStringBase@UCefStringTraitsUTF16@@@@V?$allocator@V?$CefStringBase@UCefStringTraitsUTF16@@@@@std@@@std@@@Z) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) 1
Error LNK2019 unresolved external symbol imp_cef_get_current_platform_thread_id referenced in function "unsigned long cdecl base::PlatformThread::CurrentId(void)" (?CurrentId@PlatformThread@base@@YAKXZ) chromium_loader cef3\chromium_loader\main_message_loop_multithreaded_win.obj 1
Error LNK2019 unresolved external symbol imp_cef_get_current_platform_thread_handle referenced in function "class base::PlatformThreadRef cdecl base::PlatformThread::CurrentRef(void)" (?CurrentRef@PlatformThread@base@@YA?AVPlatformThreadRef@2@XZ) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(cef_lock.obj) 1
Error LNK2019 unresolved external symbol imp_cef_end_tracing referenced in function "bool __cdecl CefEndTracing(class CefStringBase const &,class CefRefPtr)" (?CefEndTracing@@YA_NAEBV?$CefStringBase@UCefStringTraitsUTF16@@@@V?$CefRefPtr@VCefEndTracingCallback@@@@@Z) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) 1
Error LNK2019 unresolved external symbol
imp_cef_drag_data_create referenced in function "public: static class CefRefPtr cdecl CefDragData::Create(void)" (?Create@CefDragData@@SA?AV?$CefRefPtr@VCefDragData@@@@XZ) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(drag_data_ctocpp.obj) 1
Error LNK2019 unresolved external symbol
imp_cef_base64encode referenced in function "class CefStringBase cdecl CefBase64Encode(void const *,unsigned int64)" (?CefBase64Encode@@YA?AV?$CefStringBase@UCefStringTraitsUTF16@@@@PEBX_K@Z) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) 1
Error LNK2019 unresolved external symbol imp_cef_base64decode referenced in function "class CefRefPtr cdecl CefBase64Decode(class CefStringBase const &)" (?CefBase64Decode@@YA?AV?$CefRefPtr@VCefBinaryValue@@@@AEBV?$CefStringBase@UCefStringTraitsUTF16@@@@@Z) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) 1
Error LNK2019 unresolved external symbol imp_cef_print_settings_create referenced in function "public: static class CefRefPtr cdecl CefPrintSettings::Create(void)" (?Create@CefPrintSettings@@SA?AV?$CefRefPtr@VCefPrintSettings@@@@XZ) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(print_settings_ctocpp.obj) 1
Error LNK2019 unresolved external symbol imp_cef_uridecode referenced in function "class CefStringBase cdecl CefURIDecode(class CefStringBase const &,bool,enum cef_uri_unescape_rule_t)" (?CefURIDecode@@YA?AV?$CefStringBase@UCefStringTraitsUTF16@@@@AEBV1@_NW4cef_uri_unescape_rule_t@@@Z) chromium_loader cef3\chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) 1
Error LNK2019 unresolved external symbol imp_cef_uriencode referenced in function "class CefStringBase cdecl CefURIEncode(class CefStringBase const &,bool)" (?CefURIEncode@@YA?AV?$CefStringBase@UCefStringTraitsUTF16@@@@AEBV1@_N@Z) chromium_loader \chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) 1

abhisheksaatal commented 8 years ago

I forgot to mention that I checked out code from branch 2272 of the forked git repository https://github.com/sidneibjunior/javacef.git and in this branch these errors are encountered.

sidneibjunior commented 8 years ago

I forked the repository from Faeriol's fork. According to #24 the upgrade was made for win32 for now.

I'm pretty busy lately. When I have some time I will try to fix win64 / Linux builds.

suneel-tokuri commented 8 years ago

Hi,

Try using fork 2272

I got some link errors but not the same as yours. Try this and see if works:

win x64:

Include libcef.lib in the libs

In the generated file: D:\kony\javacef\cef3\out\Debug_x64\obj\chromium_loader\chromium_loader.ninja

libs = /LIBPATH:....\chromium_loader\lib comctl32.lib shlwapi.lib $ rpcrt4.lib opengl32.lib glu32.lib $ ../../chromium_loader/lib/libcef-x64-Release.lib $ ../../cef_runtime/win64/Debug/libcef.lib

wjywbs commented 8 years ago

You can try to replace chromium_loader/lib/libcef-x64-Release.lib with cef_binary_3.2272/Release/libcef.lib and replace chromium_loader/lib/libcef-x64-Debug.lib with Debug/libcef.lib

minteliuwm commented 8 years ago

I have replaced chromium_loader/lib/libcef-x64-Release.lib with cef_binary_3.2272/Release/libcef.lib and replace chromium_loader/lib/libcef-x64-Debug.lib with Debug/libcef.lib,but these errors are encountered.错误 1 error LNK2019: 无法解析的外部符号 __imp_cef_add_web_plugin_path,该符号在函数 "void __cdecl CefAddWebPluginPath(class CefStringBase<struct CefStringTraitsUTF16> const &)" (?CefAddWebPluginPath@@YAXAEBV?$CefStringBase@UCefStringTraitsUTF16@@@@@Z) 中被引用 E:\CEF\javacef-2272\javacef-2272\cef3\chromium_loader\libcef_dll_wrapper.lib(libcef_dll_wrapper.obj) chromium_loader