build p7zip for current host

step1、安装依赖

所有时Terminal + Shell + GNU CoreUtils
下载时cURL
解压时tar + gzip
编译时cmakeninja、 ( gcc + g++ ) / GCC | Clang / LLVM
运行时
  • glibc ( libc.solibm.solibdl.solibpthread.sold-linux-x86-64.so )
  • GCC ( libstdc++.solibgcc_s.so )

step2、使用curl命令下载p7zip源码包 (

curl -L -o p7zip-17.03.tar.gz https://github.com/jinfeihan57/p7zip/archive/v17.03.tar.gz

step3、使用tar解压p7zip源码包

tar vxf p7zip-17.03.tar.gz

step4、进入p7zip-17.03/CPP/7zip/CMAKE目录

cd p7zip-17.03/CPP/7zip/CMAKE

step5、查看p7zip-17.03/CPP/7zip/CMAKE目录中的内容

step6、在p7zip-17.03/CPP/7zip/CMAKE/CMakeLists.txt中加入如下的指令

echo 'install(PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/7z_ DESTINATION bin RENAME 7z)' >> CMakeLists.txt
echo 'install(PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/7za DESTINATION bin)' >> CMakeLists.txt
echo 'install(PROGRAMS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/7zr DESTINATION bin)' >> CMakeLists.txt

step7、使用cmake命令配置编译参数

cmake [option]... -D<变量>=<值> -S <sourceDIR> -B <buildDIR>

示例:

cmake \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -G Ninja \
    -Wno-dev \
    -S . \
    -B build.d

step7、使用cmake命令进行编译

cmake --build build.d

step8、使用cmake命令进行安装

cmake --install build.d