Skip to content

A python3 external for Max based on the min-api

License

Notifications You must be signed in to change notification settings

shakfu/min.pymx

Repository files navigation

min.pymx

A basic python3 external built using the Max min-api

Prerequisites

To build externals, you will need some form of compiler support on your system.

  • On the Mac this means Xcode 10 or higher (you can get from the App Store for free).
  • On Windows this means Visual Studio 2017 or 2019 (you can download a free version from Microsoft). The installer for Visual Studio 2017 offers an option to install Git, which you should choose to do.

You will also need to install a recent version of CMake (version 3.19 or higher).

Building

./build.sh

Mac

Run cmake -G Xcode ..

Next run cmake --build . or open the Xcode project from this "build" folder and use the GUI.

Note: you can add the -j4 option where "4" is the number of cores to use. This can help to speed up your builds, though sometimes the error output is interleaved in such a way as to make troubleshooting more difficult.

Windows

You can run cmake --help to get a list of the options available. Assuming some version of Visual Studio 2019, the commands to generate the projects will look like this:

cmake -G "Visual Studio 16 2019" ..

Or using Visual Studio 2017 it will look like this:

cmake -G "Visual Studio 15 2017 Win64" ..

Having generated the projects, you can now build by opening the .sln file in the build folder with the Visual Studio app (just double-click the .sln file) or you can build on the command line like this:

cmake --build . --config Release

Unit Testing

On the command line you can run all unit tests using Cmake:

  • on debug builds: ctest -C Debug .
  • on release builds: ctest -C Release .

Or you can run an individual test, which is simply a command line program:

  • cd ..
  • cd tests
  • mac example: ./test_dcblocker_tilde -s
  • win example: test_dcblocker_tilde.exe -s

Or you can run them with your IDE's debugger by selecting the "RUN_TESTS" target.

Continuous Integration

Continuous Integration (CI) is a process by which each code check-in is verified by an automated build and automated tests to allow developers to detect problems early and distribute software easily.

The min-pymx project applies CI using Github Actions.

Additional Documentation

About

A python3 external for Max based on the min-api

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages