Difference between revisions of "Documentation/Nightly/Developers/Tutorials/BuildTestPackageDistributeExtensions"
m |
|||
Line 9: | Line 9: | ||
<li><p>[[Documentation/{{documentation/version}}/Developers/Build_Instructions|Build Slicer application]] in <code>Release</code></p></li> | <li><p>[[Documentation/{{documentation/version}}/Developers/Build_Instructions|Build Slicer application]] in <code>Release</code></p></li> | ||
− | <li><p>[[Documentation/{{documentation/version}}/Developers/ModuleWizard|Use the Wizard to easily create an extension]] containing one or more Slicer modules.</p></li> | + | <li><p>[[Documentation/{{documentation/version}}/Developers/ModuleWizard|Use the Wizard to easily create an extension]] containing one or more Slicer modules.</p> |
+ | |||
+ | {|width = "100%" | ||
+ | ! width="50%" style="border-bottom: 1px solid darkgrey;font-size: 75%;"| Unix-like | ||
+ | ! width="50%" style="border-bottom: 1px solid darkgrey;font-size: 75%;"| Windows | ||
+ | |- | ||
+ | | valign="top" | | ||
+ | {{pre2|<nowiki> | ||
+ | $ cd Slicer | ||
+ | $ ../Slicer-SuperBuild/python-build/bin/python ./Utilities/Scripts/ModuleWizard.py --template ./Extensions/Testing/CLIExtensionTemplate/ --target ~/MyExtension MyExtension | ||
+ | |||
+ | $ rm -rf /home/jchris/MyExtension/CLIModuleTemplate/ | ||
+ | |||
+ | $ ../Slicer-SuperBuild/python-build/bin/python ./Utilities/Scripts/ModuleWizard.py --template ./Extensions/Testing/CLIExtensionTemplate/CLIModuleTemplate/ --target ~/Projects/MyExtension/MyCLI MyCLI | ||
+ | </nowiki>}} | ||
+ | |||
+ | | valign="top" | | ||
+ | ff | ||
+ | |} | ||
+ | </li> | ||
<li><p>Create a repository to save your work. We recommend [https://github.com/ GitHub]</p></li> | <li><p>Create a repository to save your work. We recommend [https://github.com/ GitHub]</p></li> | ||
Line 35: | Line 54: | ||
$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DMIDAS_PACKAGE_EMAIL:STRING=<YOUR-MIDAS-LOGIN> -DMIDAS_PACKAGE_API_KEY:STRING=<YOUR-MIDAS-APIKEY> -DSlicer_DIR:PATH=/path/to/Slicer-Superbuild/Slicer-build ../MyExtension | $ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DMIDAS_PACKAGE_EMAIL:STRING=<YOUR-MIDAS-LOGIN> -DMIDAS_PACKAGE_API_KEY:STRING=<YOUR-MIDAS-APIKEY> -DSlicer_DIR:PATH=/path/to/Slicer-Superbuild/Slicer-build ../MyExtension | ||
− | $ make ExperimentalUpload</nowiki> | + | $ make ExperimentalUpload |
− | }} | + | </nowiki>}} |
| valign="top" | | | valign="top" | | ||
<ol start="1" style="list-style-type: decimal;"> | <ol start="1" style="list-style-type: decimal;"> |
Revision as of 13:11, 13 June 2013
Home < Documentation < Nightly < Developers < Tutorials < BuildTestPackageDistributeExtensionsStep-by-step: How to create, publish and distribute an extension ?
(Optionally) Present your extension(s) on the slicer developers list to check if other developer are working on a similar project, to seek for advice or to reach out for potential collaborator.
Build Slicer application in
Release
Use the Wizard to easily create an extension containing one or more Slicer modules.
Unix-like Windows $ cd Slicer $ ../Slicer-SuperBuild/python-build/bin/python ./Utilities/Scripts/ModuleWizard.py --template ./Extensions/Testing/CLIExtensionTemplate/ --target ~/MyExtension MyExtension $ rm -rf /home/jchris/MyExtension/CLIModuleTemplate/ $ ../Slicer-SuperBuild/python-build/bin/python ./Utilities/Scripts/ModuleWizard.py --template ./Extensions/Testing/CLIExtensionTemplate/CLIModuleTemplate/ --target ~/Projects/MyExtension/MyCLI MyCLI
ff
Create a repository to save your work. We recommend GitHub
Implement your extension.
Hack, hack, hack :)
. Make sure to commit often using meaningful commit message.If not already done, send an email on the slicer developers list asking to be granted write permission on the experimental folder.
Create an account on the extension server and obtain an API Key. You can then used your midas login and api key to substitute
<YOUR-MIDAS-LOGIN>
and<YOUR-MIDAS-APIKEY>
in the examples.Assuming the source code of your extension is located in folder
MyExtension
, you could upload your extension doing:Check submission results on the dashboard: http://slicer.cdash.org/index.php?project=Slicer4#Extensions-Experimental
Check that the extension can be installed by starting the Slicer executable from
/path/to/Slicer-Superbuild/Slicer-build
and installing your extension as explained here.If you consider your extension ready for distribution, follow these instructions. to contribute the already generated description file.