首页
统计
关于
Search
1
Win10安装mingw64配置最新版gcc与gfortran环境
603 阅读
2
李芒果空岛-1.20.1-发展记录-05
577 阅读
3
108第一届中国象棋比赛
535 阅读
4
Savitzky-Golay滤波器原理-01
530 阅读
5
史瓦西黑洞最内稳定圆轨道计算
496 阅读
默认分类
技术经验
工作学习
娱乐爱好
闲言碎语
登录
Search
标签搜索
天文
Minecraft
李芒果空岛
空间物理学
macOS
数值计算
非线性最小二乘
typecho
Python
GSL
gcc
迭代法
Fortran
Halo
朗谬尔波
Langmiur
环法自行车赛
短波通信
PTCG
Win10
Washy
累计撰写
76
篇文章
累计收到
1
条评论
首页
栏目
默认分类
技术经验
工作学习
娱乐爱好
闲言碎语
页面
统计
关于
搜索到
24
篇与
的结果
2025-05-23
多张PNG合并成GIF
0 前言 最近的工作想生成一个GIF动画,但是使用python进行合并生成时,总是会遇到颜色失真的情况。百度+询问AI,给出了Pillow库和imageio库的方案,但不管如何调整参数都不会改善失真的情况。最终发现可以使用ffmpeg来解决,在此记录下。 1 安装ffmpeg M1 Mac可以使用Homebrew工具直接安装(网络需要魔法),首先更新下Homebrew brew update brew upgrade 安装ffmpeg brew install ffmpeg 等待安装结束后,使用如下命令打印版本号,输出版本号则安装成功 ffmpeg -version 2 编写Python脚本 终端中调用ffmpeg不太方便,使用python编写一个脚本进行PNG图片合并,如下 # coding: utf-8 # author: Washy # date: 2025/05/23 import os # 将需要合并的图片路径按顺序存储 def pngfilepath2txt(filepath, txtfilepath='png2gif.txt'): # 列举指定目录下的所有png filePng = [item for item in os.listdir(filepath) if item.endswith('.png')] # 对png名称进行排序 filePng = sorted(filePng) # 将路径存储为txt with open(txtfilepath, 'w') as f: for item in filePng: f.write(f"file '{filepath}/{item}'\n") # 生成终端命令 def get_ffmpeg_cmd(fps, outfilepath, txtfilepath='png2gif.txt'): # 每秒帧数 cmd0 = '-r %d ' % fps # concat cmd1 = '-f concat ' # 需要处理的文件路径 cmd2 = '-i %s ' % txtfilepath # 调色板 cmd3 = '-filter_complex ' \ + '"split[v1][v2]; [v1]palettegen[pal]; [v2][pal]paletteuse=dither=sierra2_4a" ' # 输出文件名 - 重名自动覆盖 cmd4 = outfilepath + ' -y' return 'ffmpeg ' + cmd0 + cmd1 + cmd2 + cmd3 + cmd4 # 主函数 def png2gif_main(pngfoldpath, giffilepath, fps=5, txtfilepath='png2gif.txt'): # 将png图片路径存储为txt pngfilepath2txt(pngfoldpath, txtfilepath) # 获取终端命令 cmd = get_ffmpeg_cmd(fps, giffilepath, txtfilepath) try: # 运行终端命令 os.system(cmd) except: raise Exception('ERROR: Create gif-file failed!') else: # 删除txt os.remove(txtfilepath) if __name__=="__main__": # 待合并png存储文件夹 pngfoldpath = "imgs/images" # 生成gif存储路径 giffilepath = '01.gif' # 帧率 fps = 5 # 生成gif png2gif_main(pngfoldpath, giffilepath, fps) 3 效果展示 python库合并结果 ffmpeg合并结果 参考 使用Python生成gif颜色失真。如何避免? ffmpeg之图片转gif
2025年05月23日
11 阅读
0 评论
0 点赞
2025-05-14
Zotero 7的安装与简单配置
0 前言 不知什么缘故,电脑偶尔会莫名其妙的卸载Zotero,昨天还用的好好的,今天就发现被卸载了。感觉是跟App Clear & Uninstall这个软件有关,上次莫名其妙的被卸载,也是用这个软件卸载过一个其他的软件。总之,再次被迫重新安装Zotero,然后发现Zotero 7已经不再支持ZotFile插件,去GitHub看了下发现ZotFile最后一次更新是2022年。众所周知,不会更新的工具,被淘汰只是早晚的事。好消息是发现了一个可以替代的插件。 之前在CSDN上写过的Zotero 6的安装教程已经落后,本博客基于之前的博客进行了更新修改。 2025/05/20 发现被卸载的原因了,App Clear & Uninstall会默认把Zotero判定为残留文件,因此在选择清理残留文件时,无意中就会把Zotero清理掉。 1 Zotero 7的安装与简单配置 1.1 下载 前往官网点击Download按钮跳转至下载界面。此处,以Mac版为例。截图如下 新版Zotero的图标比以前好看多了。同样的,右侧为浏览器插件,个人不太喜欢用那么多的插件,所以没装。 1.2 安装 双击下载好的Zotero-7.0.15.dmg文件,将Zotero拖拽至Drag Here to Install,如下图所示 打开启动台,当出现Zotero图标时,即为安装完成,此时可关闭安装界面。 1.3 同步设置 点击菜单栏Zotero-设置-同步输入账号密码(第一次使用先创建账号) 成功登录后如下图所示,取消勾选红框部分 每个账号官方仅提供了100M的云存储空间,在不额外购买的情况下,同步PDF附件显然是不够用的。我采用的方式是Zotero云同步项目信息,OneDrive同步附件(也可以使用其他的网盘),再通过相对位置链接到附件。 点击菜单栏Zotero-设置-高级-文件和文件夹,更改根目录为网盘文件夹下附件PDF的存储位置 1.4 其他 介绍下我喜欢使用的设置,仅供参考 点击菜单栏Zotero-设置-常规,取消勾选红框部分 2 插件 2.1 Attanger 简介:用于管理附件,自动将PDF(或其他文件)重命名,移动和附加到Zotero项目。ZotFile插件的替代品,功能类似。 链接:https://github.com/MuiseDestiny/zotero-attanger 安装:菜单栏Zotero-工具-插件,点击右上角设置符号Insatll Add-on from File,选择刚下载好的.xpi文件。 配置:菜单栏Zotero-设置-Attanger,更改【靶路径】根目录为1.3节最后一步根目录位置。为了兼容之前ZotFile插件修改过的文件,设置【子目录】为空,同时取消下方的单选框。 设置重命名规则:为了与ZotFile插件遗留文件命名方式保持一致,在点击【设置重命名规则】后,可以采用如下命名规则 {{ if {{ authorsCount > 2 }} }} {{ authors max="2" join="_" suffix="_et-al_" }} {{ else }} {{ authors join="_" suffix="_" }} {{ endif }} {{ year suffix="_" }} {{ title truncate="200" }} 需要注意authorsCount在7.1的版本才会支持,但当前版本为7.0.15(2025-05-14),所以该命名规则下与ZotFile还是有一点区别的。如果之前没使用过ZotFile插件,可以参照官方文档自定义命名规则。
2025年05月14日
11 阅读
0 评论
1 点赞
2024-06-21
Ubuntu安装gcc及gsl库
1 安装gcc 使用如下命令安装gcc,等待安装成功即可 sudo apt install gcc 若提示报错,大概率是没有更改镜像源,可参考博客Ubuntu修改源进行修改 2 安装gsl 前往GSL官网下载GSL-latest最新版本,可从下面任意链接进入FTP网站 最近的GNU镜像 GNU FTP主站点 将压缩包解压至任意路径 打开终端进入解压路径,使用如下命令进行安装,等待安装成功即可 ./configure sudo make sudo make install 如果./configure步骤提示找不到命令,则是因为权限不够,使用sudo chmod +x configure命令添加权限即可 参考 linux命令行为什么输入sudo ./configure提示找不到命令
2024年06月21日
204 阅读
0 评论
1 点赞
2024-06-21
Ubuntu修改源
0 前言 记录下Ubuntu使用的一些基本操作。 1 修改源 使用默认源会因为网络问题无法正常更新、安装包等,因此需要修改为国内镜像,国内镜像链接如下(任选一个即可): # 清华 http://mirrors.tuna.tsinghua.edu.cn/ubuntu/ # 中科大 http://mirrors.ustc.edu.cn/ubuntu/ # 阿里云 http://mirrors.aliyun.com/ubuntu/ # 网易 http://mirrors.163.com/ubuntu/ 1.1 直接修改 使用如下命令打开文件,并将其中所有的链接修改为国内源链接 sudo vi /etc/apt/sources.list 1.2 代码修改 使用如下命令,将【默认源】修改为【清华源】 sudo sed -i 's/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g' /etc/apt/sources.list 如果源已被修改,只需对应替换链接,如将【清华源】修改为【中科大源】 sudo sed -i 's/mirrors.tuna.tsinghua.edu.cn/mirrors.ustc.edu.cn/g' /etc/apt/sources.list 2 更新包管理器 修改为国内源之后,使用如下命令更新包管理器 sudo apt-get update sudo apt-get upgrade 参考 Ubuntu修改源镜像方法(22.04也能用)附带常用源镜像地址 终端一行命令更换ubuntu国内镜像源
2024年06月21日
206 阅读
0 评论
1 点赞
2024-06-17
Mac安装gsl库及配置
0 前言 前段时间在Mac上运行C程序,需要调用gsl库,使用过程中遇到一些问题,在网上找了不少博客才解决,在此记录下。 1 安装gsl库 首先需要安装Homebrew和gcc,可参考Mac安装Homebrew和M1芯片Mac安装gcc 使用brew命令安装gsl(2024-06版本为2.7.1) brew install gsl 等待安装完成即可 默认安装路径为/opt/homebrew/Cellar/gsl/2.7.1 2 配置gsl库 进入终端,打开根目录下的.zprofile文件 vim .zprofile 在文件末尾添加头文件路径至C检索目录 export C_INCLUDE_PATH=$C_INCLUDE_PATH:/opt/homebrew/Cellar/gsl/2.7.1/include 在文件末尾添加链接库至检索C/C++目录 export LIBRARY_PATH=$LIBRARY_PATH:/opt/homebrew/Cellar/gsl/2.7.1/lib 保存并关闭文件,然后重新加载 source .zprofile 在终端输入如下命令(cpp-13是因为我安装的gcc版本是13.x),如果能看到/opt/homebrew/Cellar/gsl/2.7.1/include路径,则说明头文件路径已经能够被检索 cpp-13 -v 在终端输入如下命令,返回值一致则说明链接库已经配置成功 # 命令 gsl-config --libs # 返回值 -L/opt/homebrew/Cellar/gsl/2.7.1/lib -lgsl -lgslcblas 3 补充 3.1 clang与GNU GCC M1 Mac默认安装有clang用于编译C程序,因此直接使用gcc调用的是clang,测试如下 # 命令 gcc -v # 返回值 Apple clang version 15.0.0 (clang-1500.3.9.4) Target: arm64-apple-darwin23.4.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin 如果想调用GNU GCC,则需要加上版本号,如13.x版本加上-13,测试如下 # 命令 gcc-13 --version # 返回值 gcc-13 (Homebrew GCC 13.2.0) 13.2.0 Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 确定GNU GCC的版本号,可以用gfortran的版本查看,返回值中13.2.0即为当前安装的GNU GCC版本 # 命令 gfortran --version # 返回值 GNU Fortran (Homebrew GCC 13.2.0) 13.2.0 Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. clang与GNU GCC在某些命令上存在差异,因此是不能直接互相替代的,比如-fopenmp命令在前者会报错 3.2 其他调用方式 如果不使用第2节的配置,可以使用-I和-L直接指定头文件和链接库路径,只需在编译时加入如下命令即可 -I/opt/homebrew/Cellar/gsl/2.7.1/include -L/opt/homebrew/Cellar/gsl/2.7.1/lib 参考 cmake 添加头文件目录,链接动态、静态库 LINUX中编译C/C++指定头文件和链接库的搜索路径 【C++编译】gcc的-l参数和-L参数 GCC -l选项:手动添加链接库
2024年06月17日
408 阅读
0 评论
1 点赞
2024-05-22
Win10使用msys2安装gsl库
0 前言 最近需要在电脑上跑别人的C程序,发现其中用到了gsl库,记录下如何配置相关环境及安装该库。 1 安装MSYS2 前往MSYS2官网下载msys2-x86_64-20240507.exe软件 按照引导进行安装 安装完成后,在弹出的命令行窗口输入pacman -Syu更新包数据库和基础包 如果不小心关闭了窗口,可双击安装目录下的msys2.exe打开窗口 继续输入pacman -Su更新其余基本软件包 2 配置环境 进入MSYS2安装目录C:\msys64,双击msys2.exe打开命令行窗口 输入pacman -S --needed base-devel mingw-w64-x86_64-toolchain安装mingw-w64 gcc工具 输入pacman -S mingw-w64-x86_64-gcc-fortran安装gfortran工具 将C:\msys64\mingw64\bin添加至系统环境变量 进入【此电脑】,空白处右键,选择【属性】,点击左侧【高级系统设置】,点击右下角【环境变量】 双击系统变量中的【Path】,点击【新建】,写入C:\msys64\mingw64\bin,然后确定即可 3 安装GSL 前往GSL官网下载GSL-latest最新版本,可从下面任意链接进入FTP网站 最近的GNU镜像 GNU FTP主站点 将压缩包解压至任意路径(路径中最好不包含中文) 进入MSYS2安装目录,双击mingw64.exe打开命令行窗口 在命令行中进入上述GSL的解压路径 输入./configure && make && make install,等待安装完毕,此过程较长 安装完成后,可在MSYS2文件夹下的mingw64/bin文件夹中看到libgsl-27.dll(本文安装的GSL为2.7版本) 参考 Windows10安装VScode + mingw64 + GSL 用 VS Code + MSYS 搞定 Windows 上的 Fortran 开发 超详细教程:windows安装MSYS2(mingw && gcc)——更新于2021.11
2024年05月22日
339 阅读
0 评论
1 点赞
2024-05-21
Win10配置Python环境及安装apexpy包
0 前言 之前一直使用Mac办公,今天因为工作需求需要在Windows上运行之前写的代码,在安装apexpy包时,遇到了不少问题,经过一番折腾,发现是gfortran和Python版本问题导致的,在此记录下。 1 安装Python 目前(2024-05)最新的Python版本为3.12.3,由于apexpy包还没有完全支持最新版本,所以需要使用相对落后的版本,经测试发现3.10.11版本可正常使用 前往Python官网下载3.10.11版本: 64位:Windows installer (64-bit) 32位:Windows installer (32 -bit) 下载完成后,双击安装包,勾选安装界面的两个复选框,点击安装(建议安装在默认路径) 使用win+R快捷键,输入cmd,点击【确定】进入终端 输入python --version,打印Python 3.10.11则安装成功。如果版本号不对,可能是之前安装过python,可选择卸载其他版本或创建新的运行环境(网上自行搜索教程,建议使用必应搜索,非常不推荐使用百度) 输入pip list查看当前已安装的包 2 安装apexpy包 apexpy包需要有gcc和gfortran的运行环境,可参考Win10安装mingw64配置最新版gcc与gfortran环境博客 使用win+R快捷键,输入cmd,点击【确定】进入终端 输入pip install apexpy,等待安装结束即可 该包安装完成后,会顺带安装numpy包 现在的程序还需要使用netCDF4、scipy、matplotlib 同样在终端中使用pip install <package>进行安装,将<package>改为对应包的名称即可 3 安装编辑器 此处推荐使用Visual Studio Code,可前往官网进行下载安装 安装完成后,点击左侧【扩展】图标 搜索Chinese (Simplified) (简体中文) ,安装第一个搜索结果 搜索python,安装第一个搜索结果 搜索Jupyter,安装第一个搜索结果 一般来说安装上面三个扩展就能够正常运行代码了,如有其他需求也可自行搜索安装 4 后记 涉及到fortran的东西,总是存在一堆奇怪的问题,害我折腾了这么久。
2024年05月21日
334 阅读
0 评论
0 点赞
2024-05-21
Win10安装mingw64配置最新版gcc与gfortran环境
0 前言 最近因为多件事情的需求,需要在Windows电脑上配置Fortran环境,由于网上大多数的博客介绍的方法安装的Fortran版本较低,使用过程中会出现各种问题,最终找到了解决办法,在此处记录下。 1 安装MinGW-w64 在线安装版本无法获取最新版本,只能到8.x,最新版本需要从GitHub上获取,链接如下: https://github.com/niXman/mingw-builds-binaries/releases 当前(2024-05)最新版本为13.2,如下图所示。其中i686为32位,x86_64为64位,对于win10电脑,下载图中红框压缩包 将下载好的x86_64-13.2.0-release-win32-seh-ucrt-rt_v11-rev1.7z压缩包解压至C盘根目录,此时路径为C:\mingw64 将C:\mingw64\bin添加至系统环境变量 进入【此电脑】,空白处右键,选择【属性】,点击左侧【高级系统设置】,点击右下角【环境变量】 双击系统变量中的【Path】,点击【新建】,写入C:\mingw64\bin,然后确定即可 使用win+R快捷键,输入cmd,点击【确定】进入终端 在终端中输入gcc --version,正常打印版本号则安装成功 在终端中输入gfortran --version,正常打印版本号则安装成功 如果以上操作都没问题,但版本号不对,可进行如下排查 在终端输入where gfortran,查看打印出来的路径是否存在其他的路径 若存在,可选择删除其他版本的gcc/gfortran,或者将环境变量中其他版本的路径删除,或者将环境变量中新安装的版本路径移动至最上方 注意:gcc与gfortran的版本号必须一致 参考: MinGW-W64 下载、安装与配置(支持最新版的GCC,目前 GCC 13.2.0) 2 后记 这件事也是反复折腾很多次了,每次都会遇到不同的问题。不过这次算是彻底搞明白了,以后直接参考这次结果就行。
2024年05月21日
603 阅读
0 评论
1 点赞
2023-09-15
Mac指令记录
0 前言 经常反复遇到一些问题需要使用指令修改,每次都是重新查找,很浪费时间,在这里汇总一下。 1 指令集 并非所有指令集,只是一些我用到了,但又不常用且不好记住的指令。 强制更新系统时间:自从某次系统更新之后,我的MacBook合盖后掉电变得很严重,两天就会因为没电自动关机,重启后还会出现系统时间错乱的情况。开启了位置同步,开启了自动同步,时间依然有误。这个问题可以使用如下命令强制更新系统时间,亲测有效。 sudo sntp -sS time.apple.com 吐槽: 百度关于这个问题的解答几乎都是让开启位置同步,一个答案被很多人抄,挺无语的。知乎上找到的这个解答,是我用谷歌搜到的,百度真是越来越烂了。 参考: Macbook 自动设置时间不对,总是快了2分钟,如果调整? 删除所有._文件:Mac会自动创建以._开头的备份文件,如果需要删除当前文件夹下所有该类文件,可使用如下命令 find . -name '._*' -type f -delete
2023年09月15日
260 阅读
0 评论
0 点赞
2023-09-03
本地搭建Minecraft服务器及内网穿透
0 前言 最近看到李芒果空岛更新到了新版本,想和人联机玩一玩,但是购买服务器开销有点大,就尝试用我的Mac mini搭建一个本地服务器,然后内网穿透。 M1芯片8G+256G Mac mini 1 服务器搭建 1.1 文件下载链接 搭建服务器所需要下载的文件,可提前下载好 最新版Java:https://fabricmc.net/use/server/,下载支持苹果芯片的版本 Fabric服务端:https://fabricmc.net/use/server/,下载1.20.1版本,如fabric-server-mc.1.20.1-loader.0.14.22-launcher.0.11.2.jar 模组(mods):模组需要下载1.20.1的fabric版本 fabric-api:https://www.curseforge.com/minecraft/mc-mods/fabric-api/files fabric-carpet:https://www.curseforge.com/minecraft/mc-mods/carpet/files cloth-config:https://www.curseforge.com/minecraft/mc-mods/cloth-config/files Carpet Sky Additions:https://github.com/jsorrell/CarpetSkyAdditions/releases,包含一个jar文件和两个zip文件,jar为模组,zip为资源包和翻译包 1.2 搭建过程 安装最新版Java,输入如下命令打印版本号,如果正常打印则安装成功 java --version 打开终端,使用如下命令新建~/Minecraft_Server文件夹(文件夹位置和名称可以随意设定),并进入文件夹 mkdir ~/Minecraft_Server cd ~/Minecraft_Server 将Fabric服务端复制到~/Minecraft_Server文件夹中,输入如下命令启动服务端,运行完成后,会出现eula.txt和server.properties两个文件,以及config/、libraries/、mods/和versions/四个文件夹 java -Xmx4G -jar fabric-server-mc.1.20.1-loader.0.14.22-launcher.0.11.2.jar nogui -Xmx4G:表示最大内存为4G,可根据需求修改 -jar:后面为服务端的文件名,需要根据实际文件名进行填写 nogui:关闭GUI界面 打开eula.txt文件,将false修改为true 打开server.properties文件,修改如下内容并保存 将23行改为online-mode=false,本步骤表示关闭正版验证,如果不允许盗版玩家进入则不修改 将51行改为initial-enabled-packs=vanilla,fabric,carpetskyadditions\:skyblock 将52行改为level-type=carpetskyadditions\:skyblock 将下载好的四个模组放到mods/文件夹下 使用如下命令重新启动服务端,此时会新出现world/文件夹 java -Xmx4G -jar fabric-server-mc.1.20.1-loader.0.14.22-launcher.0.11.2.jar nogui 在终端输入stop关闭服务器 将下载好的资源包(datapack.zip)放到world/datapacks/文件夹下 使用如下命令重新启动服务端,完成服务器的搭建 java -Xmx4G -jar fabric-server-mc.1.20.1-loader.0.14.22-launcher.0.11.2.jar nogui 查看终端打印信息,寻找如下内容,记录服务器端口号(默认为25565),连接服务器时会用到 [Server thread/INFO]: Starting Minecraft server on *:25565 2 内网穿透 前往樱花穿透官网注册账号并实名认证,需要花费1元购买支付宝的实名认证服务 前往软件下载界面下载Mac版客户端并安装 打开客户端,输入访问密钥,访问密钥在账号信息界面查看 新建隧道,本机IP填写127.0.0.1,端口号填写25565(上一节记录的端口号),填写隧道名称并选择距离最近的穿透节点,点击【创建】 查看日志,可以看到USE [***] to connect.,其中***为服务器远程连接地址,或者使用下一行的IP地址,记录该地址 3 连接服务器 3.1 安装客户端 前往https://hmcl.huangyuhui.net/download/下载HMCL启动器,选择Mac版 其他启动器 Lunar Client(月亮端) :https://www.lunarclient.com/download/ Badlion Client(狮子端) :https://client.badlion.net/ MultiMC :https://multimc.org/ 官方启动器(不推荐):https://www.minecraft.net/zh-hans/download 打开启动器,添加账户,盗版用户创建一个离线账号即可 点击【版本列表】-【安装新游戏版本】,选择【1.20.1 正式版】,选择最新版Fabric和Fabric API,点击【安装】 安装成功后,启动游戏,点击【选项】-【资源包】-【打开包文件夹】,弹出文件夹目录 将下载好的资源包和翻译包都放到该文件夹下,关闭文件夹 此时左侧列表出现资源包和翻译包,将二者添加至已选,点击【完成】 3.2 本地连接 启动游戏,点击【多人模式】-【添加服务器】,服务器地址填写0.0.0.0,点击【完成】 3.3 远程连接 启动游戏,点击【多人模式】-【添加服务器】,服务器地址填写第2节记录的远程连接地址,点击【完成】 参考 https://github.com/jsorrell/CarpetSkyAdditions/blob/main/docs/en_us/installation.md 【最新版】1.20.1李芒果服务端开服教程 【第一集】Mac上哪款MC启动器适合你?B站最全四款热门启动器安装及说明
2023年09月03日
311 阅读
0 评论
0 点赞
1
2
3