zoukankan      html  css  js  c++  java
  • window下编译jcef

    自行编译jcef过程中遇到了一些问题,现在记录如下。

    参考的主要文章是jcef的官方介绍:

    https://bitbucket.org/chromiumembedded/java-cef/wiki/BranchesAndBuilding

    需要准备好以下环境:

    1、python 2.6

    2、git

    3、visual studio 2015

    4、cmake 2.8以上

    5、java 1.7以上

    主要流程:

    1、git clone源码

    # The JCEF source code will exist at `/path/to/java-cef/src`
    cd /path/to/java-cef
    git clone https://bitbucket.org/chromiumembedded/java-cef.git src

    注意,/path/to/指的是你的制定目录,不要有中文

    2、执行cmake生成vs的sln项目文件

    cd /path/to/java-cef/src
    
    mkdir jcef_build && cd jcef_build
    
    cmake -G "Visual Studio 14 Win64" ..
    "Visual Studio 14 Win64"这个是CMAKE需要执行的生成器参数,如果不对,自己根据提示更改
    比如改成 Visual Studio 2015,之类。

    注意,cmake执行过程中会从google storage下载clang-format,这玩意儿其实是不需要的。
    解决方式有两个:
    1、挂VPN
    2、打开src下的CMakeLists.txt文件,找到以下代码,像我一样,用#注释掉
    #message(STATUS "Downloading clang-format from Google Storage...")
    #execute_process(
    #  COMMAND "${PYTHON_EXECUTABLE}"
    #          "tools/buildtools/download_from_google_storage.py"
    #          "--no_resume"
    #          "--platform=${GS_PLATFORM}"
    #          "--no_auth"
    #          "--bucket" "chromium-clang-format"
    #          "-s" "tools/buildtools/${GS_HASHPATH}"
    #  WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
    #  RESULT_VARIABLE EXECUTE_RV
    #  )
    #if(NOT EXECUTE_RV STREQUAL "0")
    #  message(FATAL_ERROR "Execution failed with unexpected result: ${EXECUTE_RV}")
    #endif()
    3、用VS打开生成的jcef.sln文件
    选择build -> Configuration Manager,把“active solution configuration”改成"Release
    然后选择编译解决方案

    需要注意的问题:
    1、 编译报错,warning LNK4272: 库计算机类型“x64”与目标计算机类型“X86”冲突,64位操作系统打算编译x64的jcef时,目标计算机指定了x86。
    这个问题目测是jcef部分版本的bug,未来应该会修复
    右键jcef项目
    属性->链接器->高级,修改目标计算机为x64

    属性->链接器->所有选项,修改服下选项为x64

     右键libcef_dll_wrapper项目

    属性->c/c++->所有选项->附加包含目录 改成windows64,需要注意,必须有cef64位包

  • 相关阅读:
    Writing and deploying a custom report in Visual Studio for Dynamics 365 /PowerApps
    Integrating Dynamics 365 CE with PowerApps
    Creating a console application to import data to Dynamics 365 / Power Apps
    DNS仍然是整个互联网中最脆弱的一环
    域名解析TTL值设置为多少合适?
    DNS TTL 字段就是骗你的
    DNS域名轮询业务监控
    域名到站点的负载均衡技术一览
    nginx+iis实现负载均衡
    用Node.js基于Express框架重写博客程序,从此告别ASP.NET。
  • 原文地址:https://www.cnblogs.com/anrainie/p/9661950.html
Copyright © 2011-2022 走看看