Skip to content

Installing Watchman on Ubuntu 18.04

Here in this blog post I will list the steps you will need to install watchman on your Ubuntu 18.04 system. I am using watchman for a react native project using expo and ignite 2.

So, here are the steps:

All these are commands executed in terminal.

Step 1: cd ~

Step 2: git clone https://github.com/facebook/watchman.git

Step 3: cd watchman/

Step 4: git checkout v4.9.0

Step 5: sudo apt-get install -y autoconf automake build-essential python-dev

Step 6: ./autogen.sh

While running this command, if you get this error – “your system lacks libtoolize”, then run this command:
sudo apt-get install libtool

Step 7: ./configure

Step 8: make

While running this command, if you get this error – “ContentHash.cpp:13:10: fatal error: openssl/sha.h: No such file or directory”, then run this command:
sudo apt-get install libssl-dev

Step 9: sudo make install

While running this command, if you get this error – “Makefile:1566: recipe for target ‘watchman’ failed”, then you will need to just repeat again from step 6.

This last step may take some long time.

 

Side Note: While running npm start, I got following error related to watchman:

jest-haste-map: Watchman crawl failed. Retrying once with node crawler.

Usually this happens when watchman isn’t running. Create an empty `.watchmanconfig` file in your project’s root folder or initialize a git or hg repository in your project.

Error: Watchman error: A non-recoverable condition has triggered.  Watchman needs your help!

Run following command to fix this issue:

echo fs.inotify.max_user_instances=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
echo fs.inotify.max_queued_events=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

 

Thanks.

3 Comments

  1. George George

    Thank you very much sir. Worked perfectly. Thank you

    • Siddharth Shanker Mishra Siddharth Shanker Mishra

      Thanks, I am glad that it helped.

  2. In Ubuntu, I needed to run “./configure –without-python –without-pcre –enable-lenient” before “make”.

Leave a Reply

Your email address will not be published.