1.在 Ubuntu 22.04 上安装 Python 3.9(多版本适用)
2.Ubuntu系统-FFmpeg安装及环境配置
3.7ZLZMA算法
4.Unity - Addressables项目总结(一):基础工作流
5.7Z官方工具
6.Linux安装LZMA压缩文件的源码指南linux安装lzma
在 Ubuntu 22.04 上安装 Python 3.9(多版本适用)
在 Ubuntu . LTS (Jammy Jellyfish) 上安装 Python 3.9(多版本兼容)教程
提供了一个详细的指南,帮助用户在默认版本更新后从源代码编译安装指定的安装 Python 3.9,同时支持其他版本。源码以下是安装安装步骤和注意事项:
1.
确保系统软件更新至最新,执行:
bash
sudo apt update && sudo apt upgrade
2.
安装必要的源码编译工具,如 GCC:
bash
sudo apt install gcc
3.
安装Python依赖库,安装助贷系统源码下载网址包括 OpenSSL、源码SQLite3、安装LZMA 等,源码以避免编译时问题:
bash
sudo apt-get install python3-dev libssl-dev libsqlite3-dev libbz2-dev liblzma-dev
4.
从Python官网下载3.9.源代码并编译:
- 下载源码
- 解压并进入目录
- 配置:
bash
./configure --prefix=/usr/local/python3.9 --enable-optimizations
5.
编译并检查错误:
bash
make -j && make altinstall
6.
将编译后的安装动态库链接到系统路径:
bash
sudo cp /usr/local/python3.9/lib/libpython3.9.so.1.0 /usr/lib/
7.
使用新版本的Python和pip:
- 命令行:`python3.9` 和 `pip3.9`
- PyCharm 中添加新解释器:
- 打开设置,找到“Python 解释器”
- 添加系统解释器,源码选择新安装路径
通过以上步骤,安装用户可以成功在Ubuntu .上安装和使用Python 3.9版本,源码同时保持系统其他Python版本的安装兼容性。在操作过程中,源码请务必留意可能的错误提示,并根据需要安装缺失的依赖包。
Ubuntu系统-FFmpeg安装及环境配置
FCN-4是一个应用于音频自动标注的全卷积神经网络,使用该网络进行mp3音频自动标注任务需要Librosa依赖库和ffmpeg工具。Librosa库的安装问题中,若安装结果中出现提示内容,说明librosa依赖库安装成功。在调用librosa包过程中,可能会遇到缺失其他相关依赖的问题,如缺少_bz2模块和_lzma模块,这需要将python3.6路径下的_bz2库拷贝到python3.7对应目录下,同时保证python3.7的目录下存在bz库文件,或从网上下载或从其他存在该文件的环境中复制到目标环境。对于找不到sndfile库的问题,使用命令行执行安装指令。在安装FFmpeg工具时,首先需要下载安装wget工具,然后下载并解压ffmpeg的源码安装包。在下载过程中,学习前端源码如果遇到无法通过认证检查的情况,可以通过在命令行中加入取消认证检查的选项来解决。下载完成后,使用解压命令将安装包解压至指定目录。接下来,创建ffmpeg文件夹作为安装路径,并进入源码包目录,执行config程序完成安装配置。若执行config程序时报错“nasm/yasm not found or too old. Use …”,需要先安装yasm,然后再重新执行配置程序。完成配置后,执行编译&安装指令,安装完成后,ffmpeg应存在于指定的安装路径下。配置环境变量时,将ffmpeg的绝对路径添加到PATH环境变量中。若在检测ffmpeg安装情况时出现找不到共享库文件的错误,需要在/etc/ld.so.conf.d/路径下创建文件“ffmpeg.conf”,并写入/usr/local/ffmpeg/lib路径。最后,通过命令行输入“which ffmpeg”或“ffmpeg -h”来测试是否配置成功。若以上步骤完成仍报错“audioread.exceptions.NoBackendError”,可以考虑修改库文件中的后端调用指令,将COMMAND = (‘ffmpeg’, ‘avconv’) 改为 COMMAND = (’/usr/local/ffmpeg/bin/ffmpeg’, ‘avconv’)。不同环境的配置可能会有所不同,因此可能遇到的问题也会有所差异,遇到未提及的问题时,应根据报错信息在搜索引擎中查找解决方案。
7ZLZMA算法
LZMA算法是7z格式的核心压缩技术,其特性如下:高效压缩:LZMA算法提供极高的压缩比,能有效地减小数据的存储空间。
可扩展字典:最大支持4GB的centosmysql源码编译字典大小,能够处理大量数据。
性能表现:在2GHz处理器上,压缩速度可达1MB/秒,而解压速度则在-MB/秒,表现出色。
内存需求低:解压缩时对内存的需求根据字典大小有所不同,但总体较为节省。
代码大小小:解压缩代码仅为约5KB,便于在各类应用中集成。
兼容性广泛:支持Pentium 4的超线程技术以及多处理器环境,适应不同硬件平台。
对于希望在应用程序中使用LZMA算法的开发者,LZMA算法基于GNU LGPL许可协议,这意味着你可以通过发送邮件至LZMA开发团队进行咨询,获取定制的代码和开发者使用许可,以便满足您的特定需求。扩展资料
7z 是一种主流高效的压缩格式,它拥有极高的压缩比。在计算机科学中,7z是一种可以使用多种压缩算法进行数据压缩的档案格式。该格式最初被7-Zip实现并采用,但是这种档案格式是公有的,并且7-Zip软件本身亦在GNU宽通用公共许可证 (GNU LGPL)协议下开放源代码。目前LZMA软件开发工具包的最新版本为v9.。7z格式的MIME类型为application/x-7z-compressed.Unity - Addressables项目总结(一):基础工作流
近期未更新,现已投入新项目,初期采用Addressables进行资源管理。需对资源从打包、发布、运行时进行完善,期间遇到不少问题,也有不少难以理解的使用方式,现记录如下。剑玲珑源码
一、综述 & Start
1.1 综述
Unity默认的资源打包发布方式是AssetBundle,Addressables在AssetBundle基础上,处理了资源在项目整个流程中的管理。具体涉及资源打包、加载与卸载以及热更。传统的AssetBundle对于资源管理来说相对繁琐,主要体现在以下几个方面:
对于成熟的项目,通常已有一套完善的工具链,可能对于部分打包步骤不太直观方便,但整体流程较为完善,一般也不用考虑Addressables。如果是在项目前期,Addressables可能是一个不错的工具,其功能特性如下:
1.2 Start
(1)安装
(2)拉取Package到本地
在Package Manager中拉取的内容是无法修改的,若需要修改源码,则需要将Cache文件夹中的缓存放到Package(包括依赖package)
(3)标记资源:将资源或文件夹放入对应Group即可
(4)配置Profile
只需要配置远端路径(Http服务可使用Addressables自带的Host Services,但建议使用HFS方便测试)
(5)发布资源
Addressbales提供了两种资源发布模式:全量发布;增量发布
(6)选择Play Mode & Start
fastest模式通过AssetDatabase加载资源,Editor下不需要发布资源。Existing Build会真实得加载AB包,Editor下需要打包资源。
二、Settings
2.1 AssetGroup
Addressbales以GUI的方式较为便捷得对资源进行分组打包管理。默认每个分组的资源文件存在于AddressableAssetsData/AssetGroups目录下,分组可以使用相同策略对资源批量管理。
选中Group可以看到其属性面板。Build & Load Paths定义Group的打包与加载路径,该路径可在Profile中修改。包体分为本地包与远程包。
Group提供三种压缩方式:无压缩、LZ4、LZMA。LZ4包体大小中等,同步课堂源码解压较快,可以只解压部分资源;LZMA包体较小,但解压资源较慢,只能将资源全部解压。通常选择LZ4。
这三个选项表示打包时,是否将资源的Address、GUID、Label写入包体中。对于有分包更新需求的情况下,建议都勾选上。
Internal Asset Naming Mode:如何为内部asset命名
Asset Load Mode、Asset Provider、Asset Bundle Provider通常不用修改,这三个选项用于控制asset的加载方式、AB包的获取方式。如果存在自定义的处理方式,可自行选择。
2.2 AddressableAssetSettings
Profile定义了各种路径参数,切换不同的路径以灵活映射到的路径。(修改路径后需要重新Build资源后才能生效,因为locator的下载路径是在Build时序列化到本地的。体验上不太舒服~~)
Addressables提供了三种Editor下资源加载方式:Use the Asset database(Asset database加载)、Simulate groups(模拟Group处理)、Use existing build(加载实际包体资源)
三、打包处理
3.1 打全量包
处理步骤如下: (1)根据需求配置Group的构建路径(Remote\Local) (2)根据远端路径(CDN\HFS)修改Profile,选择需要的Profile (3)修改资源版本号(如果只是本地测试不需要,但若是正式发布需要修改,避免影响老版本) (4)点击New Build/Default Build Script进行资源打包 Profile定义Build和Load路径,若需要从多个项目加载资源的情况(比如美术、Scene单独分离出工程进行制作),可以定义不同的Profile以满足需求。对于大部分工程来说,通常不需要修改local资源相管路径,这些工程会构建到相同的目录中。 注意:路径字符(以及自动生成的子目录)长度限制在个character,否则会构建失败 默认的local build路径:Library\com.unity.addressables\aa\平台\系统 默认的local load路径:Editor模式与构建路径相同;实机运行时被解析为StreamingAssets目录 Build输出文件:
注意:使用默认的local路径,在构建应用时,Addressbales会将打包资源拷贝到StreamingAssets目录,在应用构建结束后再将资源移除。如果使用自定义的local路径,需要自己处理这一过程。 默认的Remote Build路径:ServerData\平台 默认的Remote Load路径:为实际的下载url,必须要启用相管服务(CDN\HFS)后自行定义。 构建的文件:
3.2 打增量包
全量包会重新构建所有资源,当我们只需要对一部分资源修改时,这会产生很多不必要的工作。Addressbales提供了根据资源更新记录进行增量式更新
需要注意的是,能够进行增量式更新的前提是存在addressables_content_state.bin文件,并且不能修改资源版本号。此文件记录了资源的状态数据。当我们构建全量包时,会在“Assets\AddressableAssetsData\平台”创建该文件,一定不要手动修改此文件。只有相同版本号的catalog才会检测差异,从而更新。
四、运行时的资源
4.1 资源加载
Addressables提供了通过address、label、AssetReference以及IResourceLocation进行资源加载。在执行异步操作时,会执行以下流程:
若加载失败,相关信息会存储在AsyncOperationHandle.OperationException。默认情况下,加载失败不会抛出异常,如果需要可以为ResourceManager.ExceptionHandler设置回调。此外还可以通过设置抛出异常。
4.2 资源卸载
通过 Addressables.Release可以卸载资源、实例、handle。释放handle可以减少资源的引用计数,并且handle会失效。如果不需要使用回调结果,某些API接口提供了自动的handle回收参数,例如 UnloadSceneAsync。 即便handle回调失败了,仍然需要对其进行释放。通常情况下,Addressables会自动释放Operation失败期间的资源,但手动释放handle仍然是有必要的。 Addressables.LoadAssetsAsync是无法取消的,但如果在操作完成之前释放对应的handle,会减少对handle引用,在资源加载完成后会自动释放。
7Z官方工具
7-Zip是一款深受用户喜爱的开源软件,它的源代码主要遵循GNU LGPL许可证,这使得它完全免费且开放。无需注册即可使用,无论是个人电脑还是商业环境,无论是用于学习还是商业用途,都不会对你的使用产生任何影响,真正实现了free and open的理念。 这款软件的强大功能体现在其广泛的支持格式上:它能进行压缩和解压缩,包括7z、XZ、BZIP2、GZIP、TAR、ZIP、WIM等多种格式。对于ZIP和GZIP,7-Zip的压缩效率甚至比PKZip和WinZip高出2-%,提供了更高效的压缩体验。此外,它还支持7z格式的AES-加密,确保数据的安全性,并且可以创建自释放(SFX)压缩包,方便用户一键解压。 7-Zip还与Windows资源管理器深度集成,用户可以直接在系统中方便地进行文件管理。其命令行版本同样强大,适合需要在终端环境下操作的高级用户。不仅如此,它还支持FAR Manager插件,为用户提供更多定制化选项。目前,7-Zip已经支持种语言,覆盖全球用户的需求。 无论你是Windows用户,如Windows 7、Vista、XP、、、、NT、ME还是,还是Mac OS X、Linux、Unix等平台的用户,7-Zip都能提供相应的命令行版本,满足不同操作系统的需求。扩展资料
7z 是一种主流高效的压缩格式,它拥有极高的压缩比。在计算机科学中,7z是一种可以使用多种压缩算法进行数据压缩的档案格式。该格式最初被7-Zip实现并采用,但是这种档案格式是公有的,并且7-Zip软件本身亦在GNU宽通用公共许可证 (GNU LGPL)协议下开放源代码。目前LZMA软件开发工具包的最新版本为v9.。7z格式的MIME类型为application/x-7z-compressed.Linux安装LZMA压缩文件的指南linux安装lzma
Linux系统是一款常见的操作系统,在日常的操作中我们可能会碰到需要使用LZMA压缩文件的情况,因此我们需要了解Linux安装LZMA压缩文件的指南。
首先,在Linux系统中,安装LZMA压缩文件需要使用到XZ Utils,它是Linus Torvalds自由和开放源码软件项目提供的强有力的压缩文件,经常被人们应用于Linux发行版时,XZ Utils主要有两部分组成:xz引擎和附带的格式转换工具,xz引擎是用来构建压缩文件的驱动器,而格式转换工具则可以帮助人们将其他格式转换为xz引擎可以识别的LZMA格式,因此如果使用XZ Utils压缩文件,则需要安装这两部分。
其次,我们可以使用Linux系统中内置的yum安装XZ Utils,首先需要更新安装源:
`sudo yum update`
当更新完成后,使用下面的命令进行安装:
`sudo yum install xz`
安装完成后,我们可以使用下面的命令来检查是否已经安装成功:
`xz –version`
最后,当安装完成后,我们就可以使用`xz`工具对文件进行压缩了,下面的命令演示如何将文件压缩为`.xz`格式:
`xz test.txt`
这样一来,我们就可以在Linux系统中成功安装LZMA压缩文件了。安装的过程可能有点复杂,但是只要我们能够按照以上步骤一步步来完成,就可以在Linux系统中成功安装LZMA压缩文件。
安装Linux下的LZMA压缩工具linux安装lzma
LZMA是7Zip开发的主要压缩算法,它可以比其他算法生成更小的文件和更高的压缩率。安装LZMA的Linux环境有许多优势,包括减小文件体积、减轻存储负担和节省计算资源。本文将介绍Linux环境中安装LZMA的步骤以及在实践中的使用经验。
一、安装LZMA压缩工具
1. 检查系统中是否已安装LZMA
检查系统中是否已安装LZMA:
> whereis lzma
如果现有系统没有安装LZMA,则需要进行安装,可以使用源码包、二进制包或者包管理器进行。
2. 安装LZMA源码包
获取LZMA源码包:
> wget http://tukaani.org/xz/xz-5.2.3.tar.gz
解压并进入LZMA源码目录:
> tar xf xz-5.2.3.tar.gz
> cd xz-5.2.3
编译安装:
> ./configure –prefix=/usr
> make
> sudo make install
3. 安装LZMA二进制包
安装LZMA二进制包,请参照相关文档。
4. 使用包管理器安装LZMA
使用包管理器安装LZMA:
> sudo yum install lzma
或
> apt-get install lzma
二、使用LZMA压缩
在Linux下,可以使用以下两种方法来使用LZMA进行压缩:
1. 使用LZMA命令行
使用LZMA命令行,可以单独、多文件或目录压缩:
> lzma file.txt
> lzma file1.txt file2.txt
> lzma -r dir
2. 使用Python程序库
Python程序库中的模块(例如lzma)可以实现LZMA的文件操作、流压缩和解压缩操作:
import lzma
# 压缩
with lzma.open(‘test.xz’, ‘wt’) as fo:
fo.write(‘Hello World!’)
# 解压缩
with lzma.open(‘test.xz’) as fi:
content = fi.read()
三、总结
通过本文的介绍,读者已经可以正确了解Linux环境中安装LZMA压缩工具的步骤,以及使用LZMA命令行和Python模块实现文件压缩、解压缩。最后,建议读者在生产环境中使用LZMA进行压缩,可以大大减少安全漏洞的危害。