Install wxPython in osx 10.11

前端 未结 7 1076
我在风中等你
我在风中等你 2021-02-06 05:39

When I try to install wxPython, it shows an error:

> The Installer could not install the software because there was no
> software found to in         


        
7条回答
  •  半阙折子戏
    2021-02-06 06:07

    wxPython is using a legacy script, and according to this technical note bundle installers were deprecated and are (as of El Capitan release) unsupported:

    Bundle-style installer packages are a legacy transition aid that is no longer supported. PackageMaker is also no longer supported. It is now necessary to convert to flat-file installer packages using tools like productbuild.

    That leaves you with two options,

    1. Convert the installer to a flat package.
    2. Compile wxWidgets and install it locally.

    To achieve the former, follow these instructions:

    0) Let's assume that you have already mounted the dmg and you have moved the pkg folder to a working place.

    cd ~/repack_wxpython
    cp -r /Volumes/wxPython/wxPython-ABC.pkg .
    

    1) Use the pax utility to extract the payload file (pax.gz) from Contents/Resources to a folder that will become the root of your new package.

    mkdir pkg_root
    cd pkg_root
    pax -f ../wxPython-ABC.pkg/Contents/Resources/wxPython-ABC.pax.gz -z -r
    cd ..
    

    2) Rename the bundle's preflight/postflight scripts, to preinstall/postinstall scripts, as required for flat packages, in a scripts folder.

    mkdir scripts
    cp wxPython-ABC.pkg/Contents/Resources/preflight scripts/preinstall
    cp wxPython-ABC.pkg/Contents/Resources/postflight scripts/postinstall
    

    3) Create the flat package using the pkgbuild tool:

    pkgbuild --root ./pkg_root --scripts ./scripts --identifier com.wxwidgets.wxpython wxPython-ABC.pkg
    

    This is the documentation of the pkbuild command in case you want to customize the passed parameters.

    Caveats: The original bundle package contains a License.rtf and a Welcome.txt files that are not included in the flat package. Those need to be added by defining a custom XML file and creating another package using the productbuild command.

提交回复
热议问题