首页 > 系统相关 >windows10编译scrcpy

windows10编译scrcpy

时间:2023-11-03 13:44:41浏览次数:34  
标签:scrcpy prebuilt windows10 w64 server 编译 mingw

一、概述

  简介:Scrcpy是一款小巧的Android投屏软件,能够跨平台其支持Windows、Mac、Linux系统。右PC充当客户端,Android板子作为服务端。

  原理:Android将录屏发送给PC,PC接收到数据后进行展示。PC上鼠标点击录屏上对应的坐标,把坐标通过Socket通信传递给Android端,实现对Android的控制

  Scrcpy源码

二、准备工作

  1.下载Scrcpy源代码【下载】

  2.下载msys64

   3.在开始菜单运行msys2

  4.打开后先安装客户端所需要的类库

#运行环境需要的库
pacman -S mingw-w64-x86_64-SDL2 \
          mingw-w64-x86_64-ffmpeg \
          mingw-w64-x86_64-libusb

  5.安装编译环境

#客户端编译需要用到的库
pacman -S mingw-w64-x86_64-make \
          mingw-w64-x86_64-gcc \
          mingw-w64-x86_64-pkg-config \
          mingw-w64-x86_64-meson

  6.打开minigw64.exe运行命令执行编译

meson setup x --buildtype=release --strip -Db_lto=true \
    -Dprebuilt_server=server/scrcpy-server
ninja -Cx

  其中-Dprebuilt_server不为空,则执行预编译文件,如果为空则不适用预编译文件,转而使用本地代码编译出一个apk。这个-Dprebuilt_server在scrcpy-2.2/server/meson.build中有说明

# It may be useful to use a prebuilt server, so that no Android SDK is required
# to build. If the 'prebuilt_server' option is set, just copy the file as is.
prebuilt_server = get_option('prebuilt_server')
if prebuilt_server == '' //如果预编译路径为空则执行客户端自定义编译,即用本地环境编译
    custom_target('scrcpy-server',
                  # gradle is responsible for tracking source changes
                  build_by_default: true,
                  build_always_stale: true,
                  output: 'scrcpy-server',
                  command: [find_program('./scripts/build-wrapper.sh'), meson.current_source_dir(), '@OUTPUT@', get_option('buildtype')],
                  console: true,
                  install: true,
                  install_dir: 'share/scrcpy')
else
    if not prebuilt_server.startswith('/')
        # prebuilt server path is relative to the root scrcpy directory
        prebuilt_server = '../' + prebuilt_server
    endif
    custom_target('scrcpy-server-prebuilt',
                  input: prebuilt_server,
                  output: 'scrcpy-server',
                  command: ['cp', '@INPUT@', '@OUTPUT@'],
                  install: true,
                  install_dir: 'share/scrcpy')
endif

  如果以上命令执行成功则会出现如下图所示:代表已经编译完成

  执行成功后会在scrcpy-2.2/x/server目录下生成scrcpy-server文件

 

   7.执行如下命令运行程序

./run x

  其中run为scrcpy-2.2目录下的run文件 ,x代表scrcpy-2.2目录下的x目录

  8.运行效果如下图

  此时手机已经能投屏到PC上了

 

三、遇到的问题

  1.我编译使用的源码版本为scrcpy-2.2,运行所需的java jdk的版本必须是java11+不然会build不成功

  2.要想要连接成功,则必须手机端打开usb调试。不然会提示“”“没有任何设备连接adb”

  3.配置java环境变量的时候需配置%JAVA_HOME%,不然会提示找不到JAVA_HOME

 

四、总结

  以上就是windows10编译scrcpy2.2的步骤,先记录到这里,后面遇到问题再补充。

标签:scrcpy,prebuilt,windows10,w64,server,编译,mingw
From: https://www.cnblogs.com/tony-yang-flutter/p/17807430.html

相关文章

  • zabbix安装完成后查看编译参数
    最近学习zabbix分布式监控系统,突然想如何查看自己编译时的参数,最终找到自己想要的结果。 1.首先进入zabbix源码目录2.用ls-l命令查看是否有一个叫config.log文件3.这个文件里面有当时编译安装的所选择的参数,但是。。。这个日志里面有上万行,怎么办呢4.这时就可以用到我......
  • nginx coturn socat privoxy opencv 静态编译
    文档说明:只记录关键的地方;发文时间:2023-11-02意义:linux环境,免安装下载后即可使用环境:alpine:3.18dockerclang状态:完善中体验编译结果nginx静态编译关键点nginxusePCRE2libraryonnginx1.21.5hg脚本全称是mercurialopensslzlibpcpre2等静态库......
  • Windows10下用Anaconda3安装TensorFlow教程
    安装好了Anaconda3—后,运行开始菜单—>Anaconda3—>AnacondaPrompt##CPUpip3installtensorflow-ihttps://pypi.tuna.tsinghua.edu.cn/simple/##GPUpip3installtensorflow-gpu-ihttps://pypi.tuna.tsinghua.edu.cn/simple/##TESTimporttensorflowastfhello=......
  • yum安装nginx-源码编译安装nginx
    #nginx官网http://nginx.org/#nginx主要代理七层协议,也就是应用层;nginx是一个高性能HTTP和反向代理,负载均衡服务器.............#nginx默认端口是80#https默认端口是443#官网查看安装步骤http://nginx.org/——>documentation——>Installingnginx——>InstallationonLinux,pac......
  • DiscuzQ官方最新v3.0.220211源码编译搭建教程和官方部署教程,适合二开(已本地编译通过,无
    经过长达半个月的研究!完成这篇DiscuzQ官方最新版本v3.0.220211的源码编译和官方部署教程。适合喜欢二次开发的小伙伴们,已经通过本地编译测试,保证没有任何错误。具体教程在我搭建的dzq(使用二开方法搭建)发布的文章:https://www.abyssdawn.com/thread/4......
  • vscode编译多文件后运行的配置
    在.vscode文件夹下创建launch.json并添加以下内容后,再把编译器地址修改成自己本地的即可{//使用IntelliSense了解相关属性。//悬停以查看现有属性的描述。//欲了解更多信息,请访问:https://go.microsoft.com/fwlink/?linkid=830387"version":"0.2.0","co......
  • Idea编译/运行Java程序慢
    修改前:修改后:参考:https://www.jjput.com/archives/macbookpro14m1mavenslowcompilation问题JDK尽量不要换版本classlombok.javac.apt.LombokProcessor(inunnamedmodule@0x267d00eb)cannotaccessclasscom.sun.tools.javac.processing.JavacProcessingEnvi......
  • 将.View.dll文件反编译出来的*Views*.cs文件转换成.cshtml
    先使用反编译工具将.View.dll文件反编译放入文件夹,然后将文件夹整体复制进\src\viewcs2cshtml\viewcs2cshtml\bin\Debug\net6.0\viewcs复制完成之后运行程序,即可在复制进去的文件夹中看到Views/Areas文件夹暂不支持有asp-开头属性的控件例子还原前usingSystem;usingSystem......
  • 【Azure App Service】为部署在App Service上的PHP应用开启JIT编译器
    问题描述在AppServiceforlinux上创建一个PHP应用,通过phpinfo()查看PHP的扩展设置,发现JIT没有被开启, jit_buffer_size大小为0.那么,在AppService的环境中,如何开启JIT呢? 问题解答PHP8在PHP的内核中添加了JIT编译器,可以极大地提高性能。首先,仅在启用opcache的情况下,JIT才有效......
  • Kamailio 源码编译
    Kamailio源码编译一、环境1、OS:Debianbullseye2、版本:Kamailio-5.7.23、MySQL5.7 二、编译1、在Kamailio-5.7.2目录下执行如下指令,生产modules.lst文件makeFLAVOUR=kamailiocfg2、打开modules.lst文件,找到exclude_modules,将等号后面的db_mysql删除。然后执行编译......