不信人间有白头

分类: 极客

曲淡歌
曲淡歌@qudange

2023 年 7 月 5 日

新服务器的建设笔记 

多平台文件传输/剪贴板共享

kde connect

macos下报错KDE Connect won’t launch, with the error message

解决办法

brew install dbus

brew services start dbus

[[v. ps 主机购买与配置]]

mac 生成 ssh 密钥

cd ~/.ssh

ssh-keygen -t rsa -C "email@xxx.com"

安装 1panel 面板

在线安装 – 1Panel 文档

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh

安装后将新服务器的 ssh 端口设置为了 30022,提高安全性

迁移 ngnix proxy maneger 反向代理配置

迁移 bitwarden 密码管理器

记得开端口 16666

迁移 nps 内网穿透服务

尝试改善 nps,这次要使用 host 网络模式

需要修改 conf 文件夹中的 nps.conf 文件(即避开80和443端口):

http_proxy_port=30080

https_proxy_port=30443

记得去防火墙中开放端口8080,8024,30080,30443等,如果有p2p等需求,参考使用示例 (ehang-io.github.io)

完成 server 端配置后,还需要手动去每个客户端重新配置,另外因为从 端口映射 变为 host 网络模式了,以前多映射的一层端口就用不上了,所以需要调整域名代理。

迁移 Minio 块存储服务

因为要让 Minio 与 Alist 共同组成我的存储服务,因此要提前做好存储分配,后续均采用映射/软链接的形式来使用同一个目录。

注意我把老密码开头的一位删掉了(因为新服务器安装 Minio 时无法用特殊字符做第一位)

注意,9001 是控制面板,9000 是 api,这个和其他文章中的不同

配置 Virtual Hosted Style (就是 obsidian. minio. xxxx. com 这种让桶在域名最前面的东西)

参考这篇文章Docker安装新版MinIO(含反代、DNS Bucket、权限设置) (upx8.com)

需要在docker-compose.yml中增加环境变量

      - MINIO_DOMAIN=minio.example.com
      - MINIO_SERVER_URL=https://minio.example.com
      - MINIO_BROWSER_REDIRECT_URL=https://console.minio.example.com

另外要使用Virtual Hosted Style ,还需要把桶对应的地址解析到9001端口(api端口)

配置 Alist 存储挂载服务

在服务器上用 dokcer 跑了一个 alist 服务,但是发现 ip+端口能访问的前提下,用 npm 反代后就会报 504 错误>>>>>><font color=#FF0212>原来是我没开防火墙端口!!</font>

配置Alist+qbittorent (意义不大,因为alist不能直接调用链接下载pt种子,还需要手动上传种子再下载。不如直接用qbit-web来设置)

迁移 obcsapi obsidian 后端服务

去作者主页发现项目又更新了不少内容,决定把原来的 3.0 更新到 4. x 版本,需要仔细读一下文档:Obsidian 云存储后端 API Go 版本: 基于 Obsidian S3 存储, CouchDb ,本地存储和 WebDAV 的后端 API (gitee.com)运行与部署 (gitee.io)

需要注意的点:

  • 配置文件的格式发生了变化,已经支持 webdav 作为存储了(要不要考虑把 Minio 干掉了) 文件名也变了!
  • web端直接打开网址提示错误的话,需要手动点一次注销再点登录
配合 fv 悬浮球

功能使用 (gitee.io)

注意要用token2才行

web 端的配置

参考[Obcsapi v4] Obcsapi Golang 版本 – 超光速 (ftls. xyz)

注意要修改config.yaml

如果进入网页发现没有提醒登录,需要手动去设置里注销,再登录,否则加载的只是前端网页,没有和后端连接。

配置 webdav

不要在配置文件中找!直接启动 web 服务后去设置中找到 webdav 服务器选项

配置微信定时提醒

功能使用 (gitee.io)

  • 获得 wx 公众平台的测试模板 id
  • 提醒的刷新时间是1min1次

部署halo博客并与同步至github(难)

考虑用 obsidian+hexo+github pages 做博客

考虑用 obsidian+wordpress+wp 静态页面生成插件+github pages 做博客

重建 wordpress 博客

博客迁移采用插件迁移,迁移后发现 internal error,去 wp-config 中打开 degub 模式,发现是因为时光捕手主题老版本不支持 php8,所以在老博客中下载了主题更新,然后把新主题移过来就好了。(迁移后可以直接把 wp-config. php 删掉,然后刷新网页,wordpress 会直接启动安装程序,这样比手动填数据库信息更不容易出错)

用插件迁移出错可以参考这篇文章 将WordPress从PHP 5迁移到PHP 7 – ServMask Helpdesk

配置 obsidian to wordpress

[Obs#93] 用 Obsidian 当 WordPress 的编辑器,加速 Blog 发佈步骤_哔哩哔哩_bilibili

配置 wordpress to github pages

黑曜石 WordPress 插件 |黑曜石-文字出版社 (devbean.github.io)

WordPress 静态化部署到Github Page_github wordpress_飞翔的时光机的博客-CSDN博客

2023 年 7 月 5 日 90

回复

曲淡歌
曲淡歌@qudange

2021 年 4 月 5 日

动画生成工具manim的安装笔记 

参考资料

3分钟安装好Manim教学动画制作包|Windows

官方github

国人修改版-中文友好但是更新落后

安装思路

使用新版windows提供的linux系统安装

之前都是想直接安装,发现总是配置出错,现在win10也兼容了linux了,何不如在win10下安装Linux之后再使用命令行安装呢?

在win商店搜索ubuntu并下载

image.png

ps:在大陆使用win商店不能挂梯子,否则会直接无法连接。如果下载慢的话,搜索一下如何开启p2p下载的功能

报错 WslRegisterDistribution failed with error: 0x8007019e

解决办法:
1.win+x,选择Windows PowerShell(管理员)
2.输入:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
3.回车,输入Y,重启!
4.重新打开已经安装的子系统,等几分钟,输入账户和密码
————————————————
版权声明:本文为CSDN博主「Vintage TANG」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_33033367/article/details/82820983

设置ubuntu账户

id:quqi

密码:qaq

开始安装(失败)

检查python环境

输入python3检查有无py,然后输入quit ()退出

安装pip

sudo apt-get install python3-pip

提示:

quqi@DESKTOP-TE57I1A:~$ sudo apt-get install python3-pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package python3-pip is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'python3-pip' has no installation candidate

应该是apt没有更新,输入sudo apt-get update

然后输入pip3,如果提示正常则说明可用

让linux可以使用win的代理

Windows 10里的WSL Ubuntu 怎么使用Windows系统的 SS 代理?

pip3 install genpac

sudo nano /etc/profile在文件末尾加入

export http_proxy=http://127.0.0.1:7890 
export https_proxy=http://127.0.0.1:7890 
export ftp_proxy=http://127.0.0.1:7890

使配置生效source /etc/profile

安装相关支持

sudo apt-get install libcairo2-dev

sudo apt install ffmpeg

sudo apt-get install sox

sudo apt install texlive-latex-extra或者(前者为简单版)sudo apt install texlive texlive-latex-extra texlive-fonts-extra texlive-latex-recommended texlive-science

pip3 install manimlib

到此为止安装后总是各种毛病,于是卸载重装ubuntu

把ubuntu安装到其他盘

下载安装包

解压到自定义位置,重命名为.zip文件,点击Ubuntu.exe开始安装

报错

WslRegisterDistribution failed with error: 0x80070057
Error: 0x80070057 ?????

更新系统后还是无法解决,放弃

第二种安装方式:git

使用git clone

git clone https://github.com/3b1b/manim

在win下安装

参考资料

Manim安装教程

Scoop官网:https://scoop.sh/
Conda清华源:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
Scoop软件源目录:https://rasa.github.io/scoop-directory/by-score
manim官网:https://github.com/3b1b/manim

直接安装

打开powershell

安装scope

Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iwr -useb get.scoop.sh | iex

安装aria2

scoop install aria2

安装git

scoop install git

拓展源

scoop bucket add extras

安装ffmpeg

scoop search ffmpeg

查询到多个,选择一个安装

scoop install ffmpeg-nightly

安装LaTeX

scoop install LaTeX

使用anaconda安装(成功)#使用anaconda安装manim

成功安装但是无法支持中文

步骤概述:安装anaconda-按照github说明安装依赖-git clone/下载源码并放到本地-激活conda环境-安装requriments.txt-使用manimgl命令生成动画

  • 中间有一个报错

     No module named manim.__main__; 'manim' is a package and cannot be directly executed
    • 解决参考
    • python -m pip install --upgrade manim

      • 2021-04-02备注:pip的版本可能落后了,这样操作可能会导致奇怪的错误
  • 易错点:之前的教程很多都还是python -m manim example_scenes.py SquareToCircle -pl
    而现在最新版本已经是manimgl example_scenes.py OpeningManimExample

所以也要学会因地制宜、与时俱进,不要总是套过去的教程

再次尝试安装 2021-04-02 #2021-04-02-Manim

要求:这次不要使用pip,全程使用git

  • 创建新的conda环境

    1. conda create -n manim-kg python=3.8.5对应着manim-kindergarten
    2. 激活环境 conda activate manim-kg
    3. 发现可能之前安装的miktex不全,所以先卸载再重装

      1. 卸载:用管理员打开powershell,输入scoop uninstall latex
      2. 安装:

        1. 官网下载地址,选择all download,然后选择net install,根据电脑选择32或者64bit
        2. 选择download miktex,另外也可以在connetion settings里面设置代理开启代理的ip端口7890选择download miktex
        3. 下一步选择complete miktex,一路下载安装
    4. 然后下载修改版的manim,解压到manim-kg中并重命名为manim
    5. 然后pip install -r requirements.txt
    6. 使用pip list检查

      Package Version
      ————- ——————-
      certifi 2020.12.5
      colour 0.1.5
      numpy 1.20.2
      opencv-python 4.5.1.48
      Pillow 8.2.0
      pip 21.0.1
      progressbar 2.5
      pycairo 1.20.0
      pydub 0.25.1
      Pygments 2.8.1
      pyreadline 2.1
      scipy 1.6.2
      setuptools 52.0.0.post20210125
      tqdm 4.59.0
      wheel 0.36.2
      wincertstore 0.2

    7. 安装完成,尝试生成范例

      使用docker安装(成功)

      jasonkwan/manim

      b站相关视频

      相关的博客

      安装命令:docker run -it --rm -v /host/scene/dir:/scenes jasonkwan/manim:latest

      具体为:docker run -it --rm -v e:\docker:/scenes jasonkwan/manim:latest

      然后切换到py脚本目录cd /scenes/manim

      然后运行示例

  1. example.py SquareToCircle -p -ql

最后在目录:`E:\docker\manim\videos\example\480p15\partial_movie_files\Demo`下可以找到生成的视频文件!

对命令的解释:

![manim-illustration](https://raw.githubusercontent.com/ManimCommunity/manim/master/docs/source/_static/command.png)

安装完成后确实可以输出我之前做的那个例子,但是在官网找的其他例子又有问题。(manim这配置真的是麻烦到家了)

## 在树莓派里安装

Using username “pi”.
pi@192.168.1.61’s password:
Linux raspberrypi 5.10.17-v7l+ #1403 SMP Mon Feb 22 11:33:35 GMT 2021 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Fri Mar 12 23:49:10 2021

SSH is enabled and the default password for the ‘pi’ user has not been changed.
This is a security risk – please login as the ‘pi’ user and type ‘passwd’ to set a new password.

pi@raspberrypi:~ $ ping
Usage: ping [-aAbBdDfhLnOqrRUvV64] [-c count] [-i interval] [-I interface]

        [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
        [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
        [-w deadline] [-W timeout] [hop1 ...] destination

Usage: ping -6 [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]

         [-l preload] [-m mark] [-M pmtudisc_option]
         [-N nodeinfo_option] [-p pattern] [-Q tclass] [-s packetsize]
         [-S sndbuf] [-t ttl] [-T timestamp_option] [-w deadline]
         [-W timeout] destination

pi@raspberrypi:~ $ ping baidu.com
PING baidu.com (220.181.38.148) 56(84) bytes of data.
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=1 ttl=49 time=3.47 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=2 ttl=49 time=3.28 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=3 ttl=49 time=3.43 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=4 ttl=49 time=5.24 ms
64 bytes from 220.181.38.148 (220.181.38.148): icmp_seq=5 ttl=49 time=3.32 ms
^C
— baidu.com ping statistics —
5 packets transmitted, 5 received, 0% packet loss, time 11ms
rtt min/avg/max/mdev = 3.275/3.747/5.241/0.752 ms
pi@raspberrypi:~ $ ping github.com
PING github.com (52.74.223.119) 56(84) bytes of data.
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223. 119): icmp_seq=1 ttl=35 time=181 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223. 119): icmp_seq=2 ttl=35 time=201 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223. 119): icmp_seq=3 ttl=35 time=183 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223. 119): icmp_seq=4 ttl=35 time=189 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223. 119): icmp_seq=5 ttl=35 time=206 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223. 119): icmp_seq=6 ttl=35 time=203 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223.119): icmp_seq=7 ttl=35 time=182 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223.119): icmp_seq=8 ttl=35 time=200 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223.119): icmp_seq=9 ttl=35 time=180 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223.119): icmp_seq=10 ttl=35 time=16 7 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223.119): icmp_seq=11 ttl=35 time=13 2 ms
64 bytes from ec2-52-74-223-119.ap-southeast-1.compute.amazonaws.com (52.74.223.119): icmp_seq=12 ttl=35 time=18 8 ms
^C
— github.com ping statistics —
12 packets transmitted, 12 received, 0% packet loss, time 27ms
rtt min/avg/max/mdev = 131.733/184.452/205.817/19.311 ms
pi@raspberrypi:~ $ pip

Usage:
pip [options]

Commands:
install Install packages.
download Download packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
list List installed packages.
show Show information about installed packages.
check Verify installed packages have compatible dependencies.
config Manage local and global configuration.
search Search PyPI for packages.
wheel Build wheels from your requirements.
hash Compute hashes of package archives.
completion A helper command used for command completion.
help Show help for commands.

General Options:
-h, –help Show help.
–isolated Run pip in an isolated mode, ignoring environment variables and user

                          configuration.

-v, –verbose Give more output. Option is additive, and can be used up to 3 times.
-V, –version Show version and exit.
-q, –quiet Give less output. Option is additive, and can be used up to 3 times

                          (corresponding to WARNING, ERROR, and CRITICAL logging levels).

–log Path to a verbose appending log.
–proxy Specify a proxy in the form [user:passwd@]proxy.server:port.
–retries Maximum number of retries each connection should attempt (default 5 times).
–timeout Set the socket timeout (default 15 seconds).
–exists-action Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup,

                          (a)bort).

–trusted-host Mark this host as trusted, even though it does not have valid or any HTTPS.
–cert Path to alternate CA bundle.
–client-cert Path to SSL client certificate, a single file containing the private key and the

                          certificate in PEM format.

–cache-dir Store the cache data in .
–no-cache-dir Disable the cache.
–disable-pip-version-check

                          Don't periodically check PyPI to determine whether a new version of pip is
                          available for download. Implied with --no-index.

–no-color Suppress colored output
pi@raspberrypi:~ $ sudo apt-get update
命中:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
命中:2 http://archive.raspberrypi.org/debian buster InRelease
正在读取软件包列表… 完成
pi@raspberrypi:~ $ pip3

Usage:
pip3 [options]

Commands:
install Install packages.
download Download packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
list List installed packages.
show Show information about installed packages.
check Verify installed packages have compatible dependencies.
config Manage local and global configuration.
search Search PyPI for packages.
wheel Build wheels from your requirements.
hash Compute hashes of package archives.
completion A helper command used for command completion.
help Show help for commands.

General Options:
-h, –help Show help.
–isolated Run pip in an isolated mode, ignoring environment variables and user

                          configuration.

-v, –verbose Give more output. Option is additive, and can be used up to 3 times.
-V, –version Show version and exit.
-q, –quiet Give less output. Option is additive, and can be used up to 3 times

                          (corresponding to WARNING, ERROR, and CRITICAL logging levels).

–log Path to a verbose appending log.
–proxy Specify a proxy in the form [user:passwd@]proxy.server:port.
–retries Maximum number of retries each connection should attempt (default 5 times).
–timeout Set the socket timeout (default 15 seconds).
–exists-action Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup,

                          (a)bort).

–trusted-host Mark this host as trusted, even though it does not have valid or any HTTPS.
–cert Path to alternate CA bundle.
–client-cert Path to SSL client certificate, a single file containing the private key and the

                          certificate in PEM format.

–cache-dir Store the cache data in .
–no-cache-dir Disable the cache.
–disable-pip-version-check

                          Don't periodically check PyPI to determine whether a new version of pip is
                          available for download. Implied with --no-index.

–no-color Suppress colored output
pi@raspberrypi:~ $ sudo apt-get install libcairo2-dev
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
将会同时安装下列软件:
libblkid-dev libcairo-script-interpreter2 libffi-dev libfontconfig1-dev libglib2.0-dev libglib2.0-dev-bin
liblzo2-2 libmount-dev libpcre16-3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libpixman-1-dev libselinux1-dev
libsepol1-dev libxcb-render0-dev libxcb-shm0-dev libxext-dev libxrender-dev uuid-dev x11proto-xext-dev
建议安装:
libcairo2-doc libglib2.0-doc libgdk-pixbuf2.0-bin | libgdk-pixbuf2.0-dev libxml2-utils libxext-doc
下列【新】软件包将被安装:
libblkid-dev libcairo-script-interpreter2 libcairo2-dev libffi-dev libfontconfig1-dev libglib2.0-dev
libglib2.0-dev-bin liblzo2-2 libmount-dev libpcre16-3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libpixman-1-dev
libselinux1-dev libsepol1-dev libxcb-render0-dev libxcb-shm0-dev libxext-dev libxrender-dev uuid-dev
x11proto-xext-dev
升级了 0 个软件包,新安装了 22 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 6,451 kB 的归档。
解压缩后会消耗 21.5 MB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://archive.raspberrypi.org/debian buster/main armhf libcairo-script-interpreter2 armhf 1.16.0-4+rpt1 [150 kB]
获取:2 http://mirrors.nju.edu.cn/raspbian/raspbian buster/main armhf uuid-dev armhf 2.33.1-0.1 [92.4 kB]
获取:4 http://archive.raspberrypi.org/debian buster/main armhf libpixman-1-dev armhf 0.36.0-1+rpt1 [498 kB]
获取:6 http://archive.raspberrypi.org/debian buster/main armhf libcairo2-dev armhf 1.16.0-4+rpt1 [618 kB]
获取:5 http://mirrors.bfsu.edu.cn/raspbian/raspbian buster/main armhf liblzo2-2 armhf 2.10-0.1 [48.4 kB]
获取:7 http://mirrors.nju.edu.cn/raspbian/raspbian buster/main armhf libfontconfig1-dev armhf 2.13.1-2 [943 kB]
获取:9 http://mirrors.nju.edu.cn/raspbian/raspbian buster/main armhf x11proto-xext-dev all 2018.4-4 [3,128 B]
获取:3 http://mirrors.neusoft.edu.cn/raspbian/raspbian buster/main armhf libblkid-dev armhf 2.33.1-0.1 [210 kB]
获取:10 http://mirrors.bfsu.edu.cn/raspbian/raspbian buster/main armhf libxext-dev armhf 2:1.3.3-1+b2 [102 kB]
获取:8 http://mirrors.zju.edu.cn/raspbian/raspbian buster/main armhf libxrender-dev armhf 1:0.9.10-1 [37.7 kB]
获取:11 http://mirrors.zju.edu.cn/raspbian/raspbian buster/main armhf libxcb-render0-dev armhf 1.13.1-2 [111 kB]
获取:12 http://mirrors.zju.edu.cn/raspbian/raspbian buster/main armhf libxcb-shm0-dev armhf 1.13.1-2 [100 kB]
获取:14 http://mirrors.neusoft.edu.cn/raspbian/raspbian buster/main armhf libglib2.0-dev-bin armhf 2.58.3-2+deb1 0u2 [155 kB]
获取:15 http://mirrors.nju.edu.cn/raspbian/raspbian buster/main armhf libmount-dev armhf 2.33.1-0.1 [209 kB]
获取:17 http://mirrors.bfsu.edu.cn/raspbian/raspbian buster/main armhf libpcre32-3 armhf 2:8.39-12 [227 kB]
获取:13 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libffi-dev armhf 3.2.1-9 [159 kB]
获取:16 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libpcre16-3 armhf 2:8.39-12 [234 kB ]
获取:19 http://mirrors.neusoft.edu.cn/raspbian/raspbian buster/main armhf libpcre3-dev armhf 2:8.39-12 [564 kB]
获取:18 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libpcrecpp0v5 armhf 2:8.39-12 [150 kB]
获取:20 http://mirrors.zju.edu.cn/raspbian/raspbian buster/main armhf libsepol1-dev armhf 2.8-1 [309 kB]
获取:21 http://mirrors.bfsu.edu.cn/raspbian/raspbian buster/main armhf libselinux1-dev armhf 2.8-1+b1 [156 kB]
获取:22 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libglib2.0-dev armhf 2.58.3-2+deb10 u2 [1,372 kB]
已下载 6,451 kB,耗时 18秒 (350 kB/s)
正在选中未选择的软件包 uuid-dev:armhf。
(正在读取数据库 … 系统当前共安装有 163693 个文件和目录。)
准备解压 …/00-uuid-dev_2.33.1-0.1_armhf.deb …
正在解压 uuid-dev:armhf (2.33.1-0.1) …
正在选中未选择的软件包 libblkid-dev:armhf。
准备解压 …/01-libblkid-dev_2.33.1-0.1_armhf.deb …
正在解压 libblkid-dev:armhf (2.33.1-0.1) …
正在选中未选择的软件包 liblzo2-2:armhf。
准备解压 …/02-liblzo2-2_2.10-0.1_armhf.deb …
正在解压 liblzo2-2:armhf (2.10-0.1) …
正在选中未选择的软件包 libcairo-script-interpreter2:armhf。
准备解压 …/03-libcairo-script-interpreter2_1.16.0-4+rpt1_armhf.deb …
正在解压 libcairo-script-interpreter2:armhf (1.16.0-4+rpt1) …
正在选中未选择的软件包 libfontconfig1-dev:armhf。
准备解压 …/04-libfontconfig1-dev_2.13.1-2_armhf.deb …
正在解压 libfontconfig1-dev:armhf (2.13.1-2) …
正在选中未选择的软件包 libxrender-dev:armhf。
准备解压 …/05-libxrender-dev_1%3a0.9.10-1_armhf.deb …
正在解压 libxrender-dev:armhf (1:0.9.10-1) …
正在选中未选择的软件包 x11proto-xext-dev。
准备解压 …/06-x11proto-xext-dev_2018.4-4_all.deb …
正在解压 x11proto-xext-dev (2018.4-4) …
正在选中未选择的软件包 libxext-dev:armhf。
准备解压 …/07-libxext-dev_2%3a1.3.3-1+b2_armhf.deb …
正在解压 libxext-dev:armhf (2:1.3.3-1+b2) …
正在选中未选择的软件包 libpixman-1-dev:armhf。
准备解压 …/08-libpixman-1-dev_0.36.0-1+rpt1_armhf.deb …
正在解压 libpixman-1-dev:armhf (0.36.0-1+rpt1) …
正在选中未选择的软件包 libxcb-render0-dev:armhf。
准备解压 …/09-libxcb-render0-dev_1.13.1-2_armhf.deb …
正在解压 libxcb-render0-dev:armhf (1.13.1-2) …
正在选中未选择的软件包 libxcb-shm0-dev:armhf。
准备解压 …/10-libxcb-shm0-dev_1.13.1-2_armhf.deb …
正在解压 libxcb-shm0-dev:armhf (1.13.1-2) …
正在选中未选择的软件包 libffi-dev:armhf。
准备解压 …/11-libffi-dev_3.2.1-9_armhf.deb …
正在解压 libffi-dev:armhf (3.2.1-9) …
正在选中未选择的软件包 libglib2.0-dev-bin。
准备解压 …/12-libglib2.0-dev-bin_2.58.3-2+deb10u2_armhf.deb …
正在解压 libglib2.0-dev-bin (2.58.3-2+deb10u2) …
正在选中未选择的软件包 libmount-dev:armhf。
准备解压 …/13-libmount-dev_2.33.1-0.1_armhf.deb …
正在解压 libmount-dev:armhf (2.33.1-0.1) …
正在选中未选择的软件包 libpcre16-3:armhf。
准备解压 …/14-libpcre16-3_2%3a8.39-12_armhf.deb …
正在解压 libpcre16-3:armhf (2:8.39-12) …
正在选中未选择的软件包 libpcre32-3:armhf。
准备解压 …/15-libpcre32-3_2%3a8.39-12_armhf.deb …
正在解压 libpcre32-3:armhf (2:8.39-12) …
正在选中未选择的软件包 libpcrecpp0v5:armhf。
准备解压 …/16-libpcrecpp0v5_2%3a8.39-12_armhf.deb …
正在解压 libpcrecpp0v5:armhf (2:8.39-12) …
正在选中未选择的软件包 libpcre3-dev:armhf。
准备解压 …/17-libpcre3-dev_2%3a8.39-12_armhf.deb …
正在解压 libpcre3-dev:armhf (2:8.39-12) …
正在选中未选择的软件包 libsepol1-dev:armhf。
准备解压 …/18-libsepol1-dev_2.8-1_armhf.deb …
正在解压 libsepol1-dev:armhf (2.8-1) …
正在选中未选择的软件包 libselinux1-dev:armhf。
准备解压 …/19-libselinux1-dev_2.8-1+b1_armhf.deb …
正在解压 libselinux1-dev:armhf (2.8-1+b1) …
正在选中未选择的软件包 libglib2.0-dev:armhf。
准备解压 …/20-libglib2.0-dev_2.58.3-2+deb10u2_armhf.deb …
正在解压 libglib2.0-dev:armhf (2.58.3-2+deb10u2) …
正在选中未选择的软件包 libcairo2-dev:armhf。
准备解压 …/21-libcairo2-dev_1.16.0-4+rpt1_armhf.deb …
正在解压 libcairo2-dev:armhf (1.16.0-4+rpt1) …
正在设置 libpcrecpp0v5:armhf (2:8.39-12) …
正在设置 libglib2.0-dev-bin (2.58.3-2+deb10u2) …
正在设置 libpixman-1-dev:armhf (0.36.0-1+rpt1) …
正在设置 libpcre16-3:armhf (2:8.39-12) …
正在设置 libsepol1-dev:armhf (2.8-1) …
正在设置 liblzo2-2:armhf (2.10-0.1) …
正在设置 libffi-dev:armhf (3.2.1-9) …
正在设置 libxcb-shm0-dev:armhf (1.13.1-2) …
正在设置 uuid-dev:armhf (2.33.1-0.1) …
正在设置 libpcre32-3:armhf (2:8.39-12) …
正在设置 libxcb-render0-dev:armhf (1.13.1-2) …
正在设置 x11proto-xext-dev (2018.4-4) …
正在设置 libxrender-dev:armhf (1:0.9.10-1) …
正在设置 libcairo-script-interpreter2:armhf (1.16.0-4+rpt1) …
正在设置 libblkid-dev:armhf (2.33.1-0.1) …
正在设置 libfontconfig1-dev:armhf (2.13.1-2) …
正在设置 libpcre3-dev:armhf (2:8.39-12) …
正在设置 libxext-dev:armhf (2:1.3.3-1+b2) …
正在设置 libmount-dev:armhf (2.33.1-0.1) …
正在设置 libselinux1-dev:armhf (2.8-1+b1) …
正在设置 libglib2.0-dev:armhf (2.58.3-2+deb10u2) …
正在处理用于 install-info (6.5.0.dfsg.1-4+b1) 的触发器 …
正在处理用于 libglib2.0-0:armhf (2.58.3-2+deb10u2) 的触发器 …
正在处理用于 libc-bin (2.28-10+rpi1) 的触发器 …
正在处理用于 man-db (2.8.5-2) 的触发器 …
正在设置 libcairo2-dev:armhf (1.16.0-4+rpt1) …
pi@raspberrypi:~ $ sudo apt install ffmpeg
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
ffmpeg 已经是最新版 (7:4.1.6-1~deb10u1+rpt1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
pi@raspberrypi:~ $ sudo apt-get install sox
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
将会同时安装下列软件:
libopencore-amrnb0 libopencore-amrwb0 libsox-fmt-alsa libsox-fmt-base libsox3
建议安装:
libsox-fmt-all
下列【新】软件包将被安装:
libopencore-amrnb0 libopencore-amrwb0 libsox-fmt-alsa libsox-fmt-base libsox3 sox
升级了 0 个软件包,新安装了 6 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 607 kB 的归档。
解压缩后会消耗 1,309 kB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:2 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libopencore-amrwb0 armhf 0.1.3-2.1 [42.0 kB]
获取:1 http://mirrors.nju.edu.cn/raspbian/raspbian buster/main armhf libopencore-amrnb0 armhf 0.1.3-2.1 [80.4 kB]
获取:3 http://mirrors.bfsu.edu.cn/raspbian/raspbian buster/main armhf libsox3 armhf 14.4.2+git20190427-1 [226 kB]
获取:4 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libsox-fmt-alsa armhf 14.4.2+git20190427-1 [51.2 kB]
获取:5 http://mirrors.neusoft.edu.cn/raspbian/raspbian buster/main armhf libsox-fmt-base armhf 14.4.2+git20190427-1 [68.4 kB]
获取:6 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian buster/main armhf sox armhf 14.4.2+git20190427-1 [139 kB]
已下载 607 kB,耗时 4秒 (145 kB/s)
正在选中未选择的软件包 libopencore-amrnb0:armhf。
(正在读取数据库 … 系统当前共安装有 165166 个文件和目录。)
准备解压 …/0-libopencore-amrnb0_0.1.3-2.1_armhf.deb …
正在解压 libopencore-amrnb0:armhf (0.1.3-2.1) …
正在选中未选择的软件包 libopencore-amrwb0:armhf。
准备解压 …/1-libopencore-amrwb0_0.1.3-2.1_armhf.deb …
正在解压 libopencore-amrwb0:armhf (0.1.3-2.1) …
正在选中未选择的软件包 libsox3:armhf。
准备解压 …/2-libsox3_14.4.2+git20190427-1_armhf.deb …
正在解压 libsox3:armhf (14.4.2+git20190427-1) …
正在选中未选择的软件包 libsox-fmt-alsa:armhf。
准备解压 …/3-libsox-fmt-alsa_14.4.2+git20190427-1_armhf.deb …
正在解压 libsox-fmt-alsa:armhf (14.4.2+git20190427-1) …
正在选中未选择的软件包 libsox-fmt-base:armhf。
准备解压 …/4-libsox-fmt-base_14.4.2+git20190427-1_armhf.deb …
正在解压 libsox-fmt-base:armhf (14.4.2+git20190427-1) …
正在选中未选择的软件包 sox。
准备解压 …/5-sox_14.4.2+git20190427-1_armhf.deb …
正在解压 sox (14.4.2+git20190427-1) …
正在设置 libsox3:armhf (14.4.2+git20190427-1) …
正在设置 libopencore-amrwb0:armhf (0.1.3-2.1) …
正在设置 libsox-fmt-alsa:armhf (14.4.2+git20190427-1) …
正在设置 libopencore-amrnb0:armhf (0.1.3-2.1) …
正在设置 libsox-fmt-base:armhf (14.4.2+git20190427-1) …
正在设置 sox (14.4.2+git20190427-1) …
正在处理用于 libc-bin (2.28-10+rpi1) 的触发器 …
正在处理用于 man-db (2.8.5-2) 的触发器 …
正在处理用于 mime-support (3.62) 的触发器 …
pi@raspberrypi:~ $ pip install manimgl
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting manimgl
Downloading https://files.pythonhosted.org/packages/79/a2/5d3c21e5b51367af09a0159b0da76ca76b9ef6f51d1e6b5e4bb8e8779e6e/manimgl-1.0.0.tar.gz (21.2MB)

100% |████████████████████████████████| 21.2MB 16kB/s

Requirement already satisfied: Pillow in /usr/lib/python2.7/dist-packages (from manimgl) (5.4.1)
Collecting PyOpenGL (from manimgl)
Downloading https://files.pythonhosted.org/packages/7e/78/2bc24caecba024f7d128030451899531cd4c2a2a2bad342d5e5010089324/PyOpenGL-3.1.5-py2-none-any.whl (2.4MB)

100% |████████████████████████████████| 2.4MB 73kB/s

Requirement already satisfied: argparse in /usr/lib/python2.7 (from manimgl) (1.2.1)
Collecting colour (from manimgl)
Downloading https://files.pythonhosted.org/packages/74/46/e81907704ab203206769dee1385dc77e1407576ff8f50a0681d0a6b541be/colour-0.1.5-py2.py3-none-any.whl
Collecting ipython (from manimgl)
Downloading https://files.pythonhosted.org/packages/ce/2c/2849a2b37024a01a847c87d81825c0489eb22ffc6416cac009bf281ea838/ipython-5.10.0-py2-none-any.whl (760kB)

100% |████████████████████████████████| 768kB 140kB/s

Collecting manimpango=0.2.0 (from manimgl) (from versions: )
No matching distribution found for manimpango=0.2.0 (from manimgl)
Downloading https://www.piwheels.org/simple/manimpango/ManimPango-0.2.4-cp37-cp37m-linux_armv7l.whl (286kB)

100% |████████████████████████████████| 286kB 243kB/s

Collecting PyOpenGL (from manimgl)
Downloading https://files.pythonhosted.org/packages/47/9a/8d9364533ebcaa13621994a63dcc6a6051e27671ae5e1715dac4af18cac2/PyOpenGL-3.1.5-py3-none-any.whl (2.4MB)

100% |████████████████████████████████| 2.4MB 175kB/s

Collecting progressbar (from manimgl)
Downloading https://www.piwheels.org/simple/progressbar/progressbar-2.5-py3-none-any.whl
Collecting sympy (from manimgl)
Downloading https://files.pythonhosted.org/packages/ff/69/b16fc81b939d3efdd0b552f2e3e54f7fa1423d0c320cced2e69e675dde26/sympy-1.7.1-py3-none-any.whl (5.9MB)

100% |████████████████████████████████| 5.9MB 74kB/s

Collecting moderngl-window (from manimgl)
Downloading https://files.pythonhosted.org/packages/61/79/2178d46ee8f80bd1e895d3c7baf8618ff9add000a8c944a35f0252d7d53c/moderngl_window-2.3.0-py3-none-any.whl (126kB)

100% |████████████████████████████████| 133kB 1.2MB/s

Collecting validators (from manimgl)
Downloading https://files.pythonhosted.org/packages/db/2f/7fed3ee94ad665ad2c1de87f858f10a7785251ff75b4fd47987888d07ef1/validators-0.18.2-py3-none-any.whl
Requirement already satisfied: numpy in /usr/lib/python3/dist-packages (from manimgl) (1.16.2)
Collecting tqdm (from manimgl)
Downloading https://files.pythonhosted.org/packages/f8/3e/2730d0effc282960dbff3cf91599ad0d8f3faedc8e75720fdf224b31ab24/tqdm-4.59.0-py2.py3-none-any.whl (74kB)

100% |████████████████████████████████| 81kB 1.8MB/s

Collecting scipy (from manimgl)
Downloading https://www.piwheels.org/simple/scipy/scipy-1.6.1-cp37-cp37m-linux_armv7l.whl (62.0MB)

100% |████████████████████████████████| 62.0MB 7.4kB/s

Collecting mapbox-earcut (from manimgl)
Downloading https://www.piwheels.org/simple/mapbox-earcut/mapbox_earcut-0.12.10-cp37-cp37m-linux_armv7l.whl (51kB)

100% |████████████████████████████████| 61kB 80kB/s

Requirement already satisfied: Pillow in /usr/lib/python3/dist-packages (from manimgl) (5.4.1)
Collecting screeninfo (from manimgl)
Downloading https://www.piwheels.org/simple/screeninfo/screeninfo-0.6.7-py3-none-any.whl
Requirement already satisfied: matplotlib in /usr/lib/python3/dist-packages (from manimgl) (3.0.2)
Collecting colour (from manimgl)
Using cached https://files.pythonhosted.org/packages/74/46/e81907704ab203206769dee1385dc77e1407576ff8f50a0681d0a6b541be/colour-0.1.5-py2.py3-none-any.whl
Collecting argparse (from manimgl)
Downloading https://files.pythonhosted.org/packages/f2/94/3af39d34be01a24a6e65433d19e107099374224905f1e0cc6bbe1fd22a2f/argparse-1.4.0-py2.py3-none-any.whl
Collecting pydub (from manimgl)
Downloading https://files.pythonhosted.org/packages/a6/53/d78dc063216e62fc55f6b2eebb447f6a4b0a59f55c8406376f76bf959b08/pydub-0.25.1-py2.py3-none-any.whl
Requirement already satisfied: ipython in /usr/lib/python3/dist-packages (from manimgl) (5.8.0)
Collecting moderngl (from manimgl)
Downloading https://www.piwheels.org/simple/moderngl/moderngl-5.6.4-cp37-cp37m-linux_armv7l.whl (864kB)

100% |████████████████████████████████| 870kB 169kB/s

Collecting mpmath>=0.19 (from sympy->manimgl)
Downloading https://files.pythonhosted.org/packages/d4/cf/3965bddbb4f1a61c49aacae0e78fd1fe36b5dc36c797b31f30cf07dcbbb7/mpmath-1.2.1-py3-none-any.whl (532kB)

100% |████████████████████████████████| 542kB 698kB/s

Collecting pyglet=1.5.8 (from moderngl-window->manimgl)
Downloading https://files.pythonhosted.org/packages/81/5e/aef9e460989e4b832215d5fcee3ea9b0629e9bce8607284d9c1021b6a251/pyglet-1.5.15-py3-none-any.whl (1.1MB)

100% |████████████████████████████████| 1.1MB 367kB/s

Collecting pyrr=0.10.3 (from moderngl-window->manimgl)
Downloading https://files.pythonhosted.org/packages/80/d4/09bb74e93f9f677eadcf9ddb92681755f75e0f354a1b904f1913e32ca1b2/pyrr-0.10.3-py3-none-any.whl (46kB)

100% |████████████████████████████████| 51kB 2.1MB/s

Requirement already satisfied: decorator>=3.4.0 in /usr/lib/python3/dist-packages (from validators->manimgl) (4.3.0)
Requirement already satisfied: six>=1.4.0 in /usr/lib/python3/dist-packages (from validators->manimgl) (1.12.0)
Requirement already satisfied: pexpect in /usr/lib/python3/dist-packages (from ipython->manimgl) (4.6.0)
Collecting glcontext=2 (from moderngl->manimgl)
Downloading https://www.piwheels.org/simple/glcontext/glcontext-2.3.2-cp37-cp37m-linux_armv7l.whl (65kB)

100% |████████████████████████████████| 71kB 110kB/s

Collecting multipledispatch (from pyrr=0.10.3->moderngl-window->manimgl)
Downloading https://files.pythonhosted.org/packages/89/79/429ecef45fd5e4504f7474d4c3c3c4668c267be3370e4c2fd33e61506833/multipledispatch-0.6.0-py3-none-any.whl
Building wheels for collected packages: pyyaml
Running setup.py bdist_wheel for pyyaml … done
Stored in directory: /home/pi/.cache/pip/wheels/2a/d4/92/cf299bdf4162957ca8126b46e913e29f76a4f17ca762c45028
Successfully built pyyaml
scipy 1.6.1 has requirement numpy>=1.16.5, but you’ll have numpy 1.16.2 which is incompatible.
Installing collected packages: pyyaml, manimpango, PyOpenGL, progressbar, mpmath, sympy, glcontext, moderngl, pyglet, multipledispatch, pyrr, moderngl-window, validators, tqdm, scipy, mapbox-earcut, screeninfo, colour, argparse, pydub, manimgl
The script isympy is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.
The script tqdm is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.
The scripts manim-render and manimgl are installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.
Successfully installed PyOpenGL-3.1.5 argparse-1.4.0 colour-0.1.5 glcontext-2.3.2 manimgl-1.0.0 manimpango-0.2.4 mapbox-earcut-0.12.10 moderngl-5.6.4 moderngl-window-2.3.0 mpmath-1.2.1 multipledispatch-0.6.0 progressbar-2.5 pydub-0.25.1 pyglet-1.5.15 pyrr-0.10.3 pyyaml-5.4.1 scipy-1.6.1 screeninfo-0.6.7 sympy-1.7.1 tqdm-4.59.0 validators-0.18.2


---

但是又提示另一个问题`scipy 1.6.1 has requirement numpy>=1.16.5, but you'll have numpy 1.16.2 which is incompatible.`

说明numpy版本过低,使用命令`pip3 install --user -U numpy`升级

---

此外还提示

The script isympy is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.
The script tqdm is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.
The scripts manim-render and manimgl are installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.


使用`echo 'export PATH=/home/pi/.local/bin:$PATH' >>~/.bashrc`

`source ~/.bashrc`

`pip3 uninstall manimgl`

`pip3 install manimgl`

---

报错

pi@raspberrypi:~ $ manimgl
Traceback (most recent call last):
File “/home/pi/.local/lib/python3.7/site-packages/numpy/core/__init__.py”, line 22, in

from . import multiarray

File “/home/pi/.local/lib/python3.7/site-packages/numpy/core/multiarray.py”, line 12, in

from . import overrides

File “/home/pi/.local/lib/python3.7/site-packages/numpy/core/overrides.py”, line 7, in

from numpy.core._multiarray_umath import (

ImportError: libf77blas.so.3: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/home/pi/.local/bin/manimgl”, line 6, in

from manimlib.__main__ import main

File “/home/pi/.local/lib/python3.7/site-packages/manimlib/__init__.py”, line 1, in

from manimlib.constants import *

File “/home/pi/.local/lib/python3.7/site-packages/manimlib/constants.py”, line 1, in

import numpy as np

File “/home/pi/.local/lib/python3.7/site-packages/numpy/__init__.py”, line 145, in

from . import core

File “/home/pi/.local/lib/python3.7/site-packages/numpy/core/__init__.py”, line 48, in

raise ImportError(msg)

ImportError:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

  • The Python version is: Python3.7 from “/usr/bin/python3”
  • The NumPy version is: “1.20.1”

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: libf77blas.so.3: cannot open shared object file: No such file or directory


根据提示前往网址[https://numpy.org/devdocs/user/troubleshooting-importerror.html](https://numpy.org/devdocs/user/troubleshooting-importerror.html)

发现有针对树莓派的典型报错:

`libf77blas.so.3: cannot open shared object file: No such file or directory`

一看果然是这个问题

官方提供的解决方法是:`sudo apt-get install libatlas-base-dev`

---

按照上面的方法解决了numpy报错之后,另外一个问题依然存在

pi@raspberrypi:~ $ sudo apt-get install libatlas-base-dev
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
将会同时安装下列软件:
libatlas3-base
建议安装:
libatlas-doc liblapack-doc
下列【新】软件包将被安装:
libatlas-base-dev libatlas3-base
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 5,365 kB 的归档。
解压缩后会消耗 32.1 MB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://mirrors.bfsu.edu.cn/raspbian/raspbian buster/main armhf libatlas3-base armhf 3.10.3-8+rpi1 [2,399 kB]
获取:2 http://mirrors.sjtug.sjtu.edu.cn/raspbian/raspbian buster/main armhf libatlas-base-dev armhf 3.10.3-8+rpi1 [2,966 kB]
已下载 5,365 kB,耗时 4秒 (1,314 kB/s)
正在选中未选择的软件包 libatlas3-base:armhf。
(正在读取数据库 … 系统当前共安装有 165238 个文件和目录。)
准备解压 …/libatlas3-base_3.10.3-8+rpi1_armhf.deb …
正在解压 libatlas3-base:armhf (3.10.3-8+rpi1) …
正在选中未选择的软件包 libatlas-base-dev:armhf。
准备解压 …/libatlas-base-dev_3.10.3-8+rpi1_armhf.deb …
正在解压 libatlas-base-dev:armhf (3.10.3-8+rpi1) …
正在设置 libatlas3-base:armhf (3.10.3-8+rpi1) …
update-alternatives: 使用 /usr/lib/arm-linux-gnueabihf/atlas/libblas.so.3 来在自动模式中提供 /usr/lib/arm-linux-gnueabihf/libblas.so.3 (libblas.so.3-arm-linux-gnueabihf)
update-alternatives: 使用 /usr/lib/arm-linux-gnueabihf/atlas/liblapack.so.3 来在自动模式中提供 /usr/lib/arm-linux-gnueabihf/liblapack.so.3 (liblapack.so.3-arm-linux-gnueabihf)
正在设置 libatlas-base-dev:armhf (3.10.3-8+rpi1) …
update-alternatives: 使用 /usr/lib/arm-linux-gnueabihf/atlas/libblas.so 来在自动模式中提供 /usr/lib/arm-linux-gnueabihf/libblas.so (libblas.so-arm-linux-gnueabihf)
update-alternatives: 使用 /usr/lib/arm-linux-gnueabihf/atlas/liblapack.so 来在自动模式中提供 /usr/lib/arm-linux-gnueabihf/liblapack.so (liblapack.so-arm-linux-gnueabihf)
正在处理用于 libc-bin (2.28-10+rpi1) 的触发器 …
pi@raspberrypi:~ $ manimgl
Traceback (most recent call last):
File “/home/pi/.local/bin/manimgl”, line 6, in

from manimlib.__main__ import main

File “/home/pi/.local/lib/python3.7/site-packages/manimlib/__init__.py”, line 19, in

from manimlib.window import *

File “/home/pi/.local/lib/python3.7/site-packages/manimlib/window.py”, line 2, in

from moderngl_window.context.pyglet.window import Window as PygletWindow

File “/home/pi/.local/lib/python3.7/site-packages/moderngl_window/context/pyglet/__init__.py”, line 1, in

from .keys import Keys  # noqa

File “/home/pi/.local/lib/python3.7/site-packages/moderngl_window/context/pyglet/keys.py”, line 12, in

from pyglet.window import key

File “/home/pi/.local/lib/python3.7/site-packages/pyglet/window/__init__.py”, line 1899, in

gl._create_shadow_window()

File “/home/pi/.local/lib/python3.7/site-packages/pyglet/gl/__init__.py”, line 206, in _create_shadow_window

_shadow_window = Window(width=1, height=1, visible=False)

File “/home/pi/.local/lib/python3.7/site-packages/pyglet/window/xlib/__init__.py”, line 173, in init

super(XlibWindow, self).__init__(*args, **kwargs)

File “/home/pi/.local/lib/python3.7/site-packages/pyglet/window/__init__.py”, line 585, in init

display = pyglet.canvas.get_display()

File “/home/pi/.local/lib/python3.7/site-packages/pyglet/canvas/__init__.py”, line 94, in get_display

return Display()

File “/home/pi/.local/lib/python3.7/site-packages/pyglet/canvas/xlib.py”, line 123, in init

raise NoSuchDisplayException('Cannot connect to "%s"' % name)

pyglet.canvas.xlib.NoSuchDisplayException: Cannot connect to “None”


---

暂时不管上述报错,直接git clone试试

`git clone https://github.com/3b1b/manim`

`cd manim`

`pip3 install -e .`

发现确实不行,之前环境配置有错

### 安装pi lite系统

怀疑是之前那个full版系统环境复杂,这次下载一个完全纯净的试试

`sudo apt-get update`

`sudo apt install python3-pip`

## 在mac系统里面安装

### 安装homebrew

[官网](https://brew.sh/index_zh-cn)

打开终端,输入`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"`

然后安装到这一步卡住

==> Tapping homebrew/core
Cloning into ‘/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core’…


此时重启终端或者打断进程,然后切换到homebrew目录:

`cd /usr/local/Homebrew/Library/Taps/homebrew`

使用`ls`查看目录是否为空,如果有文件夹则使用`rm -r homebrew-core`删除东西

`git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git`

### 安装依赖

brew install ffmpeg mactex


### 安装manim

git clone https://github.com/3b1b/manim.git

cd manim


安装到这步发现没有pip,于是安装pip

curl https://bootstrap.pypa.io/get-pip.py | python3

pip3 install -e .


然后报错

hfy@HFYdeMac-mini ~ % pip3 install -e .
WARNING: pip is being invoked by an old script wrapper. This will fail in a future version of pip.
Please see https://github.com/pypa/pip/issues/5599 for advice on fixing the underlying issue.
To avoid this problem you can invoke Python with ‘-m pip’ instead of running pip directly.
Defaulting to user installation because normal site-packages is not writeable
ERROR: File “setup.py” not found. Directory cannot be installed in editable mode: /Users/hfy


于是根据说明换用`python -m pip install -e .`

manimgl example_scenes.py OpeningManimExample


但是报错

hfy@HFYdeMac-mini manim % pip3 install -e .
WARNING: pip is being invoked by an old script wrapper. This will fail in a future version of pip.
Please see https://github.com/pypa/pip/issues/5599 for advice on fixing the underlying issue.
To avoid this problem you can invoke Python with ‘-m pip’ instead of running pip directly.
Defaulting to user installation because normal site-packages is not writeable
Obtaining file:///Users/hfy/manim
Collecting argparse
Downloading argparse-1.4.0-py2.py3-none-any.whl (23 kB)
Collecting colour
Downloading colour-0.1.5-py2.py3-none-any.whl (23 kB)
Collecting numpy
Downloading numpy-1.20.1-cp38-cp38-macosx_10_9_x86_64.whl (16.0 MB)

 |████████████████████████████████| 16.0 MB 378 kB/s 

Collecting Pillow
Downloading Pillow-8.1.2-cp38-cp38-macosx_10_10_x86_64.whl (2.2 MB)

 |████████████████████████████████| 2.2 MB 423 kB/s 

Collecting scipy
Downloading scipy-1.6.1-cp38-cp38-macosx_10_9_x86_64.whl (30.8 MB)

 |████████████████████████████████| 30.8 MB 379 kB/s 

Collecting sympy
Downloading sympy-1.7.1-py3-none-any.whl (5.9 MB)

 |████████████████████████████████| 5.9 MB 415 kB/s 

Collecting tqdm
Downloading tqdm-4.59.0-py2.py3-none-any.whl (74 kB)

 |████████████████████████████████| 74 kB 616 kB/s 

Collecting mapbox-earcut
Downloading mapbox_earcut-0.12.10-cp38-cp38-macosx_10_9_x86_64.whl (55 kB)

 |████████████████████████████████| 55 kB 650 kB/s 

Collecting matplotlib
Downloading matplotlib-3.3.4-cp38-cp38-macosx_10_9_x86_64.whl (8.5 MB)

 |████████████████████████████████| 8.5 MB 249 kB/s 

Collecting moderngl
Downloading moderngl-5.6.4-cp38-cp38-macosx_10_9_x86_64.whl (144 kB)

 |████████████████████████████████| 144 kB 347 kB/s 

Collecting moderngl_window
Downloading moderngl_window-2.3.0-py3-none-any.whl (126 kB)

 |████████████████████████████████| 126 kB 439 kB/s 

Collecting pydub
Downloading pydub-0.25.1-py2.py3-none-any.whl (32 kB)
Collecting pyyaml
Downloading PyYAML-5.4.1-cp38-cp38-macosx_10_9_x86_64.whl (253 kB)

 |████████████████████████████████| 253 kB 311 kB/s 

Collecting screeninfo
Downloading screeninfo-0.6.7.tar.gz (7.3 kB)
Collecting validators
Downloading validators-0.18.2-py3-none-any.whl (19 kB)
Collecting ipython
Downloading ipython-7.21.0-py3-none-any.whl (784 kB)

 |████████████████████████████████| 784 kB 429 kB/s 

Collecting PyOpenGL
Downloading PyOpenGL-3.1.5-py3-none-any.whl (2.4 MB)

 |████████████████████████████████| 2.4 MB 441 kB/s 

Collecting manimpango

2021 年 4 月 5 日 348
曲淡歌
曲淡歌@qudange

2021 年 2 月 19 日

音频加密的方法讨论 

目标

如果只是单纯的想加密音频,最简单的办法就是用通用的加密方法,比如直接用压缩文件加密。但是如果想要得到一个看似正常的音频,实际上却内含玄机,目前似乎还没有很好的办法。而且如果能得到加密之后还是音频的文件,那么就可以把这些加密文件上传到普通的视频音频网站,用来长期免费的云存储。

预想方案

双声道反相

这个灵感来源于降噪耳机,降噪耳机的原理就是检测外界噪声然后生成一个反相的音波,从而与之抵消。那么如果把两段反相的音频藏在一个文件的左右声道上,那么加密后的文件就是一段空白,虽然与预期的“加密后仍然是有意义的音频”这个目标有一定差距,但是也算不错了。

后来又找到一个类似思路的——把音频等间距拆成两段,组合听就可以得到结果

一种简单的音频加密的思路

传统的位运算加密

参考:

数字信号处理-基于matlab的语音信号的加密解密

matlab-audiowrite函数的使用文档

该作者利用了matlab自带的音频处理函数,把音频转化成二进制,通过密钥运算加密后再逆运算得到新的音频。

利用软件deepsound

参考:

如何像黑客军团主角那样将文件隐藏在音频中

2021 年 2 月 19 日 196

Loading...
载入中

已到底部

没有可加载的页面

C
写微博
S
搜索
J
下一篇微博/评论
K
上一篇微博/评论
R
回复
E
编辑
O
显示隐藏评论
T
回顶部
L
登录
H
显示隐藏帮助
Ctrl+Enter
提交发布
ESC
取消并清除内容