软件技术
文章平均质量分 77
HsOjo
这个作者很懒,什么都没留下…
展开
-
使用 Rosetta 建立 Ubuntu x86 开发环境
尽管换了 M1 设备也有一年多了,但平时仍然依赖于 x86 平台进行开发,为此不得不单独部署一套 x86 的开发环境在 intel PC 上。随着 macOS 更新到了 Ventura (13.0.1),以及 UTM 4.0 的更新,现已可以在 Linux 环境下启用 Rosetta 对 x86(含amd64) 应用进行加速。使用 Rosetta 加速后,在构建项目的速度上甚至几年前的i7 8700打得有来有回,比较离谱。原创 2022-11-19 11:06:38 · 1324 阅读 · 0 评论 -
修复Chroot环境下APT包管理对systemd环境识别问题
版权声明:本文为博主原创文章,转载请注明出处。前言近期在折腾Chroot环境下的设备时,发现软件包无法更新,得到以下错误: 12345678910111213141516 (Reading database ... 77272 files and directories currently installed.)Preparing to unpack .../mariadb-server-10.3_1%3a10.3.34-..原创 2022-05-08 11:54:22 · 2497 阅读 · 0 评论 -
Gunicorn+GeventWorker环境下fork进程意外结束的问题
版权声明:本文为博主原创文章,转载请注明出处。前言在使用Gunicorn+GeventWorker托管Flask应用,使用os.fork时出现了以下问题。 1 Parent changed, shutting down : <Worker xxxx> 本文摘录自本人毕业设计论文。问题分析通过os.fork创建进程,实际上是将当前进程的内存数据复制了一份给子进程,当子进程发现其不是由Gunicorn主进程所创建时,..原创 2021-06-08 13:07:09 · 1028 阅读 · 1 评论 -
通过chroot实现Linux子系统
版权声明:本文为博主原创文章,转载请注明出处。前言在一些精简的Linux发行版里,很多时候会有无法运行需要某些依赖的程序的情况。然而,会搭载这种精简系统的设备,一般无法重新安装系统;例如:路由器、手机等其他嵌入式设备。而且受限于系统内核(缺少cgroup的一些高级特性等),也无法安装docker。同时,在不同的Linux发行版下,使用的C语言标准库也不尽相同;如:glibc、musl等。即使CPU支持程序所使用的指令集,使用glibc所编译的程序,也无法在musl环境下运行。(使.原创 2021-04-15 00:37:24 · 2588 阅读 · 0 评论 -
postmarketOS食用指南
版权声明:本文为博主原创文章,转载请注明出处。前言postmarketOS是一个运行在手机上的Linux系统,基于Alpine Linux。在整理杂物时,翻出了一台旧手机(骁龙650+3G+32G);这样的硬件资源,比云学生机好太多了。卖了又不划算,闲置着怪可惜的,便有了接下来尝试充分利用资源的计划。往手机安装Linux,打造一台下载服务器。构建环境安装postmarketOS需要Linux环境,以及python/pip。(尽管最终是通过pip安装,但是不支持macOS).原创 2021-04-15 00:36:39 · 11819 阅读 · 2 评论 -
在Mac上开启AptX
版权声明:本文为博主原创文章,转载请注明出处。前言在使用Mac下使用蓝牙耳机时,声音时常断断续续;我寻思着会不会是音频编码的问题,猜测Intel蓝牙对AAC编码支持较差。在搜索相关资料后,发现Intel蓝牙似乎支持AptX,那么便尝试更换之。过程首先到Apple开发者站点下载Additional Tools for Xcode。 找到包含Bluetooth Explorer的版本,如目前最新的是11.4版。 打开下载的镜像包,再打开Hardware目录,然后就可以看.原创 2020-07-30 01:53:56 · 2010 阅读 · 4 评论 -
Python3在CentOS7下的编译安装过程
版权声明:本文为博主原创文章,转载请注明出处。前言最近在编写CentOS环境下的自动部署脚本,开发环境使用Python3.7+在CentOS环境下需要自行安装。在安装的过程中,把以前没记录下来的坑又踩了一遍,故以此记录。下载源码点击打开Python官方源码下载页。编译安装安装编译环境 1 yum -y install gcc make 安装依赖 123 yum -y inst...原创 2020-07-24 16:08:47 · 172 阅读 · 0 评论 -
PHP输出数组
function print_array($array){ $str = ''; foreach ($array as $key => $value) { if (is_string($value)) $value = sprintf("'%s'", $value); elseif (is_array($value)) $value = print_array($value); else原创 2020-06-18 03:04:08 · 304 阅读 · 0 评论 -
PHP中将Word文件转换为PDF
http://blog.hsojo.com/2020/06/02/PHPWordToPdf/版权声明:本文为博主原创文章,转载请注明出处。前言在上一篇水文中,我提到了需要实现“docx转pdf”;经过一番折腾,最终得出了一个结论:PHP可真不愧是一两面撬刀的????。在尝试了使用“phpoffice/phpword”+“dompdf/mpdf”等主流PDF转换库对docx进行转换后,最后得到的效果实在是不尽人意。(错位+乱码)虽然在Windows平台可通过“.net COM组件”原创 2020-06-10 02:49:36 · 8113 阅读 · 0 评论 -
Mac环境下配置XDebug
http://blog.hsojo.com/2020/06/01/PHPXDebugOnMac/版权声明:本文为博主原创文章,转载请注明出处。前言近日接了个CURD项目,在实现docx转pdf时出了点小问题,需要使用XDebug进行调试。在一般情况下,只要使用包管理工具安装“php-ext-xdebug”之类的包即可。然而Mac下的包管理,使用Homebrew搜索“php”,却没有相关结果。经过一番搜索,发现pecl可安装“xdebug”。配置环境变量在使用pecl前原创 2020-06-10 02:47:58 · 888 阅读 · 0 评论 -
安卓应用全屏适配(游戏)
前言在前些日子中,DFQ默认的全屏方案在各种花里胡哨的安卓手机屏幕(如水滴屏、额头屏等全面屏)中出现大黑边。在游戏应用中,如果两边有黑边,自然是玩起来不舒服的;所以只能寻找解决方案进行适配。经过一番搜寻、实践,发现问题意外的简单。解决方案只需要在AndroidManifest.xml中对应的Application 标签中,添加以下内容即可: 123 ...原创 2019-10-24 00:34:23 · 1146 阅读 · 1 评论 -
PyQt5 QWidget初始化问题
前言在初始化QWidget时出现了以下问题。 123456 Traceback (most recent call last): File "form/__init__.py", line 62, in __init__ self.setupUi(self) File "view/form.py", line 31, in set...原创 2019-08-19 11:17:55 · 2309 阅读 · 0 评论 -
Web开发基础课程
前言前段时间为完成学校任务,设计了一套Web开发课程。课程涉及前后端的基础应用,最终目标为开发一款简易的博客程序。博客程序包含最基本的功能(用户、发布文章、文章分类、文章留言、友情链接)。课程安排学习周期:2周(原定1周,翻车了)课程内容如下所示,都是些最基本的知识点。软件环境 系统:Windows 7 PhpStudy2016(apache+p...原创 2019-08-01 03:50:35 · 368 阅读 · 0 评论 -
C/C++ WinApiHook注意调用方式!!!
前言在前段时间使用易语言hook的方式,实现了《11月的阿卡迪亚》的部分汉化,当时只是抱着试一试的心态,不过既然成功了,就当然想要深入的理解和研究。最近又发现了个有趣的エロ游戏,于是乎我又打算尝试汉化,不过机会渺茫,没有搞懂资源结构,但是修改程序使其支持中文显示,应该还是可以的。然后在尝试Hook某些API的时候,程序崩溃了,研究了整整一天才发现原因,So,写篇文章记录下来。...原创 2018-04-28 17:23:34 · 1255 阅读 · 0 评论 -
微信公众号简易入门教程
前言在我学习公众号开发,也有一段时间了,其中也做过两个公众号项目,最近有友人向我请教公众号该如何学习,特以此篇文章总结一下,同时也巩固一下我的知识(套路)。准备环境系统:*nix(Ubuntu、OS X,不推荐windows)软件:apache(httpd)、mysql、php7+、composer、phpstorm库:thinkcmf、overtrue/wechat参...原创 2018-04-28 17:28:11 · 1481 阅读 · 0 评论 -
Django快速入门教程
前言学习web开发是一条艰辛的道路,那些令人讨厌的前端页面总是需要我们复制粘贴、复制粘贴,一旦修改,经常要同时修改多个文件。页面做的最多的地方无疑是后台管理部分,一个模块,基本就要做出一套页面,比如:增加内容页面 编辑内容页面(和增加内容的页面大部分内容相同) 内容列表页面(里面还要考虑筛选、搜索功能的实现)做这些页面做多了,难免心生厌烦,比如我用什么thinkphp,一直要复制...原创 2018-04-28 17:29:48 · 265 阅读 · 0 评论 -
关于PHP文件上传的问题
前言今天测试一个图片上传功能,发现了一个诡异的现象,PC端正常上传图片,手机端上传图片则提示没有添加图片,反复尝试,无果。我以为是browser/thinkphp/thinkcmf的问题,结果找了相关的文章,无果。解决方法当我重复尝试手机上传,无意中选择了其它图片时,成功了。经过一番折腾,发现是图片大小的问题。在php.ini修改如下内容即可。 1 ...原创 2018-04-28 17:30:54 · 154 阅读 · 0 评论 -
关于pyinstaller数据文件的打包
前言使用pyinstaller进行打包程序,执行程序时发现,放置于程序目录的文件无法加载(相对路径方式访问)。经过一番测试,发现执行程序时,程序执行的当前目录不一定是程序文件所在的目录。而使用--add-data与--add-binary打包的文件,发现存放于系统的临时目录。获取路径经过一番搜索,终于找到了获取数据临时目录的方法。官方wiki 1234...原创 2018-04-28 17:33:23 · 1293 阅读 · 0 评论 -
Mpk文件格式(STEINS;GATE)
前言近日看石头门0的动画入迷了,想要入手个游戏来玩玩。近期steam刚好又有打折活动,不过可惜石头门0只有10%折扣,所以还是以后再买了。但是石头门打折40%,于是乎又想回顾一下剧情,所以就。。。买!买!买!(买情怀)当我通关全线后,忽然发现壁纸很久没换了,想换套壁纸,上网搜寻一番mpk解包工具,无果,于是乎就萌生了现在这个Mpk文件解析的念头。文件结构虽然mpk的文件...原创 2019-07-30 05:06:50 · 8934 阅读 · 5 评论 -
关于Emoji在Ansi编码上的问题
前言近期开发微信项目,其中消息转发部分遇到了个问题。当被转发的消息包含emoji表情时,在utf8转unicode的过程中因为编码不支持emoji字符,导致emoji表情变成了乱码(?)。折腾半天,emoji是没办法转ansi了,但是可以通过字典的方式转成其他可解析字符来实现无损转换。解决方案遍历emoji码表进行替换成可解析字符,如“原创 2019-07-30 05:12:45 · 580 阅读 · 0 评论 -
关于Qt插件无法加载的问题
前言某友人做了个Qt/C++ Project,开发环境Qt4.8+VS2017。开发环境运行程序正常,但发布版在实际环境中无法运行。首先是Qt对VC2010的依赖,缺失msvc*xxx.dll。运行库安装后,出现错误: 12 CATCH: Driver not loaded Driver not loadedSQL_ERR: Databas...原创 2019-07-30 05:15:27 · 4892 阅读 · 0 评论 -
重启Usb蓝牙设备(PD虚拟机模拟插拔)
前言小米pro的Hackintosh方案挺香的,用了也有8个月了,还是挺稳定的。但是其中有两个很操蛋的问题:内置蓝牙无法使用 无法驱动内置Wi-Fi由于不想硬改,作出一些不可逆操作,所以以上问题均采用USB方案解决。 Wi-Fi解决方案也比较完美了,使用Comfast的CF-811AC可支持5G网络,搭配GitHub上的驱动使用,效果极佳。 蓝牙,当时随便在淘宝买了...原创 2019-08-04 18:38:20 · 1025 阅读 · 0 评论 -
【汉化】11月的阿卡迪亚
前言在数个月前我听到了这游戏的OP,感觉挺好听的。然后找了一下这个游戏,发现并没有汉化版,甚至连开坑的消息都没有,个人开坑的不算,谁知道整到什么时候。于是乎,我花了2天时间来进行程序的分析及修改。(初版完成)后来又花了4天时间,对乱码文本进行修复。(解析完善)最后,加上写这篇文章的时间,便是一周了。操作环境系统:macOS+Windows软件:AnimED,01...原创 2018-04-28 17:22:17 · 4169 阅读 · 0 评论