Question: I've written a tool in C and want to put it on the galaxy toolshed, but don't understand how to make it compile on other's machines
gravatar for jonrds
4.0 years ago by
United States
jonrds20 wrote:

As the title says, I think I have all the correct files for my tool (including the XML file to run it), but given that it is written in C I can't just compile it and upload it (or it will break on other machines).

What files do I need to get my program to compile on other Galaxy instances? Is this the recipe thing? I'm having trouble understanding the tutorials, as it seems like normally tools are just written in Perl.

tool publish C galaxy • 1.3k views
ADD COMMENTlink modified 4.0 years ago by Martin Čech ♦♦ 4.9k • written 4.0 years ago by jonrds20
gravatar for Martin Čech
4.0 years ago by
Martin Čech ♦♦ 4.9k
United States
Martin Čech ♦♦ 4.9k wrote:

You need to create a toolshed package that will contain a 'recipe' how to resolve the dependency. Your Galaxy tool (the XML file and tests) will then declare dependency on that package and when Galaxy starts installing your tool from the toolshed it will resolve the dependency through the package.

In the package you have two choices: 

  • provide a url with source code and a set of commands how to compile the code
  • provide url where to obtain binaries

Have a look at the blast package:
which provides ways how to resolve the blast dependency for the following Galaxy tool:

You can see the blast package source here:

It provides 4 binaries for various architectures and if the needed architecture is not found it will compile it from sources with these:

<action type="download_by_url" target_filename="ncbi-blast-2.2.26+.tgz"></action>
<action type="shell_command">cd c++ &amp;&amp; ./configure --prefix=$INSTALL_DIR &amp;&amp; make &amp;&amp; make install</action>


Our ToolShed wiki is in slight disarray currently but you can learn more about packages here:

ADD COMMENTlink modified 4.0 years ago • written 4.0 years ago by Martin Čech ♦♦ 4.9k
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 167 users visited in the last hour