贡献

发展发生在 github 而首选的贡献方法是通过派生存储库并发出拉取请求。或者,只需将补丁发送到luis@luispedro.org也同样有效。

如果您不了解Git(或其他分布式版本控制系统),这通常是一个很棒的工具,有几个很好的Git和GitHub教程。您可以从他们的 official documentation

如果您想使用C++代码,您可以阅读 internals 在你开始之前。另外,请阅读 principles 申报。

调试模式

如果在调试模式下编译mahotas,那么它的运行速度会较慢,但会执行大量的运行时检查。这是由 DEBUG 环境变量。

有两个级别:

  1. DEBUG=1 这将打开断言。代码将运行得较慢,但可能不会明显变慢,除非是非常大的图像。

  2. DEBUG=2 这将打开断言并额外使用C++库的调试版本(这仅在您使用GCC时有效)。一些内部代码也会在 DEBUG=2 并增加了更多的理智检查。结果将是运行的代码 much slower 因为现在检查通过迭代器进入标准容器的所有操作(包括许多内部循环操作)。然而,它捕捉到了许多错误。

源代码附带的Makefile可帮助您:

make clean
make debug
make test

将在调试模式下重新生成并运行所有测试。当您完成测试后,使用 fast Make Target以获取非调试版本::

make clean
make fast

使用Make不会改变您的环境。这个 DEBUG 变量仅在内部设置。

如果你不知道,那就去看看吧 ccache 如果您正在使用编译语言进行开发,这是一个很棒的工具(这并不是mahotas甚至是Python所特有的)。它将允许您快速执行 make clean; make debugmake clean; make fast 所以你永远不会把你的构建搞混了。