<h2>Short answer: respect the case of the tool name</h2>

<h2>Longer story below</h2>

<p>Thanks to terdon, I printed the PATH when the conda environment was active and listed what was in the folder where conda installed the UCSC tool.</p>

<p>ls /mnt/home2/miska/cr517/anaconda3/envs/ucsc-netchainsubset377/bin
c_rehash         libpng-config      mysql_config    openssl  pngfix
libpng16-config  my_print_defaults  netChainSubset  perror   png-fix-itxt</p>

<p>Then I typed netChainSubset and got the help page, suggesting the tool is installed and working. Interestingly, on Mac, the tool is also called netChainSubset but it seems it can be called with netchainsubsetor NETCHAINSUBset for that matter. The case doesn't seem to matter on mac. To make my code more portable, I am going to follow the case in the bin of where the tool is installed.</p>

CC BY-SA 4.0
2019-04-30T07:46:43.733Z
Yes, the default file system macOS uses, HFS+, is case insensitive. One of the very few file systems that are. That's why the case didn't matter on your mac. However, most file systems, including those used by Linux, are case sensitive and `A` is not the same as `a`.
terdon
CC BY-SA 4.0
2019-04-29T14:26:15.103Z
2019-04-29T14:26:15.103Z
Biomagician
<p>I have installed some ucsc tools on my Mac computer and it worked fine:</p>

<h3>Installation</h3>

<pre><code>conda create --name ucsc-netchainsubset377 --channel bioconda --yes ucsc-netchainsubset=377
</code></pre>

<h3>Conda environment activation</h3>

<pre><code>source activate ucsc-netchainsubset377
</code></pre>

<h3>Checking the tool's help</h3>

<pre><code>    netchainsubset
netChainSubset - Create chain file with subset of chains that appear in the net
usage:
   netChainSubset in.net in.chain out.chain
options:
   -gapOut=gap.tab - Output gap sizes to file
   -type=XXX - Restrict output to particular type in net file
   -splitOnInsert - Split chain when get an insertion of another chain
   -wholeChains - Write entire chain references by net, don't split
    when a high-level net is encoundered.  This is useful when nets
    have been filtered.
   -skipMissing - skip chains that are not found instead of generating
    an error.  Useful if chains have been filtered.
</code></pre>

<p>The same commands on GNU/Linux produced the following error:</p>

<pre><code>netchainsubset
netchainsubset: command not found
</code></pre>

<p>even though the tool seems to be installed successfully:</p>

<pre><code>Downloading and Extracting Packages
ucsc-netchainsubset- | 310 KB    | ############################################################################ | 100%
mysql-connector-c-6. | 4.4 MB    | ############################################################################ | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
</code></pre>

<p>The same happened with <code>ucsc-fatotwobit</code> and <code>ucsc-liftup</code> and I would not be surprised if this behaviour affected the whole suite of ucsc programmes installed through conda.</p>

<p>Anyone can suggest a solution?</p>

<h3>Update 5 minutes after posting</h3>

<p>Thanks to terdon, I printed the PATH when the conda environment was active and listed what was in the folder where conda installed the UCSC tool. </p>

<pre><code>ls /mnt/home2/miska/cr517/anaconda3/envs/ucsc-netchainsubset377/bin
c_rehash         libpng-config      mysql_config    openssl  pngfix
libpng16-config  my_print_defaults  netChainSubset  perror   png-fix-itxt
</code></pre>

<p>Then I typed <code>netChainSubset</code> and got the help page, suggesting the tool is installed and working. Interestingly, on Mac, the tool is also called <code>netChainSubset</code> but it seems it can be called with <code>netchainsubset</code>or <code>NETCHAINSUBset</code> for that matter. The case doesn't seem to matter on mac. To make my code more portable, I am going to follow the case in the <code>bin</code> of where the tool is installed.</p>

<p>Cheers terdon.</p>

<p>Cheers.</p>

CC BY-SA 4.0
2019-04-29T14:09:22.403Z
Please [edit] your question and tell us how you installed the tools. It sounds like they're simply not in your `$PATH`, and you need to either add the directory where you installed them to your `$PATH` or just call the program using its full path (`/path/to/ucsc/netchainsubset`).
terdon
<software-installation><ucsc><bioconda><conda><anaconda>
UCSC packages/tools ucsc-netchainsubset and ucsc-fatotwobit not working on GNU/Linux
# UCSC packages/tools ucsc-netchainsubset and ucsc-fatotwobit not working on GNU/Linux

(Asked by: username_0 on 2019-04-29)

I have installed some ucsc tools on my Mac computer and it worked fine:
Installation
conda create --name ucsc-netchainsubset377 --channel bioconda --yes ucsc-netchainsubset=377

Conda environment activation
source activate ucsc-netchainsubset377

Checking the tool's help
    netchainsubset
netChainSubset - Create chain file with subset of chains that appear in the net
usage:
   netChainSubset in.net in.chain out.chain
options:
   -gapOut=gap.tab - Output gap sizes to file
   -type=XXX - Restrict output to particular type in net file
   -splitOnInsert - Split chain when get an insertion of another chain
   -wholeChains - Write entire chain references by net, don't split
    when a high-level net is encoundered.  This is useful when nets
    have been filtered.
   -skipMissing - skip chains that are not found instead of generating
    an error.  Useful if chains have been filtered.

The same commands on GNU/Linux produced the following error:
netchainsubset
netchainsubset: command not found

even though the tool seems to be installed successfully:
Downloading and Extracting Packages
ucsc-netchainsubset- | 310 KB    | ############################################################################ | 100%
mysql-connector-c-6. | 4.4 MB    | ############################################################################ | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

The same happened with ucsc-fatotwobit and ucsc-liftup and I would not be surprised if this behaviour affected the whole suite of ucsc programmes installed through conda.
Anyone can suggest a solution?
Update 5 minutes after posting
Thanks to terdon, I printed the PATH when the conda environment was active and listed what was in the folder where conda installed the UCSC tool. 
ls /mnt/home2/miska/cr517/anaconda3/envs/ucsc-netchainsubset377/bin
c_rehash         libpng-config      mysql_config    openssl  pngfix
libpng16-config  my_print_defaults  netChainSubset  perror   png-fix-itxt

Then I typed netChainSubset and got the help page, suggesting the tool is installed and working. Interestingly, on Mac, the tool is also called netChainSubset but it seems it can be called with netchainsubsetor NETCHAINSUBset for that matter. The case doesn't seem to matter on mac. To make my code more portable, I am going to follow the case in the bin of where the tool is installed.
Cheers terdon.
Cheers.

**Tags:** software-installation, ucsc, bioconda, conda, anaconda
> **Comments:**
> **username_1**: Please [edit] your question and tell us how you installed the tools. It sounds like they're simply not in your `$PATH`, and you need to either add the directory where you installed them to your `$PATH` or just call the program using its full path (`/path/to/ucsc/netchainsubset`).  

---

## 1 answers

### Answer by username_0 on 2019-04-29. Score: 1

## Short answer: respect the case of the tool name

## Longer story below

Thanks to terdon, I printed the PATH when the conda environment was active and listed what was in the folder where conda installed the UCSC tool.

ls /mnt/home2/miska/cr517/anaconda3/envs/ucsc-netchainsubset377/bin
c\_rehash libpng-config mysql\_config openssl pngfix
libpng16-config my\_print\_defaults netChainSubset perror png-fix-itxt

Then I typed netChainSubset and got the help page, suggesting the tool is installed and working. Interestingly, on Mac, the tool is also called netChainSubset but it seems it can be called with netchainsubsetor NETCHAINSUBset for that matter. The case doesn't seem to matter on mac. To make my code more portable, I am going to follow the case in the bin of where the tool is installed.

> **Comments:**
> **username_1**: Yes, the default file system macOS uses, HFS+, is case insensitive. One of the very few file systems that are. That's why the case didn't matter on your mac. However, most file systems, including those used by Linux, are case sensitive and `A` is not the same as `a`.  

---

