-
-
Save markis/705f101a549f958d62546fb966caae42 to your computer and use it in GitHub Desktop.
sudo apt install -y autoconf automake build-essential python-dev libtool libssl-dev pkg-config | |
cd /tmp | |
git clone https://github.com/facebook/watchman.git -b v4.9.0 --depth 1 | |
cd watchman/ | |
./autogen.sh | |
./configure --enable-lenient | |
make | |
sudo make install |
Try ./configure --enable-lenientinstead of
./configure.
It worked perfectly for me.
FYI I also had to sudo apt-get install libcrypto++-dev
to get around the following build errors on 18.04 using v4.9.0:
ContentHash.cpp:65: undefined reference to `SHA1_Init'
ContentHash.cpp:78: undefined reference to `SHA1_Update'
ContentHash.cpp:81: undefined reference to `SHA1_Final'
I am using Ubuntu 18.04,
getting error after make
command.
error screen is
gd@gd10:/tmp/watchman$ make
make all-am
make[1]: Entering directory '/tmp/watchman'
CC watchman-hash.o
hash.c: In function ‘w_hash_bytes’:
hash.c:228:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 12: c+=((uint32_t)k[11])<<24;
~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
case 11: c+=((uint32_t)k[10])<<16;
^~~~
hash.c:229:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 11: c+=((uint32_t)k[10])<<16;
~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
case 10: c+=((uint32_t)k[9])<<8;
^~~~
hash.c:230:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 10: c+=((uint32_t)k[9])<<8;
~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
case 9 : c+=k[8];
^~~~
hash.c:231:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 9 : c+=k[8];
~^~~~~~
hash.c:232:7: note: here
case 8 : b+=((uint32_t)k[7])<<24;
^~~~
hash.c:232:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 8 : b+=((uint32_t)k[7])<<24;
~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
case 7 : b+=((uint32_t)k[6])<<16;
^~~~
hash.c:233:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 7 : b+=((uint32_t)k[6])<<16;
~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
case 6 : b+=((uint32_t)k[5])<<8;
^~~~
hash.c:234:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 6 : b+=((uint32_t)k[5])<<8;
~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
case 5 : b+=k[4];
^~~~
hash.c:235:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 5 : b+=k[4];
~^~~~~~
hash.c:236:7: note: here
case 4 : a+=((uint32_t)k[3])<<24;
^~~~
hash.c:236:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 4 : a+=((uint32_t)k[3])<<24;
~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
case 3 : a+=((uint32_t)k[2])<<16;
^~~~
hash.c:237:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 3 : a+=((uint32_t)k[2])<<16;
~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
case 2 : a+=((uint32_t)k[1])<<8;
^~~~
hash.c:238:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 2 : a+=((uint32_t)k[1])<<8;
~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
case 1 : a+=k[0];
^~~~
cc1: all warnings being treated as errors
Makefile:2313: recipe for target 'watchman-hash.o' failed
make[1]: *** [watchman-hash.o] Error 1
make[1]: Leaving directory '/tmp/watchman'
Makefile:868: recipe for target 'all' failed
make: *** [all] Error 2
gd@gd10:/tmp/watchman$```
I install with master branch, and worked perfectly for me.
Thanks for this man! 🥇
How do you test if watchman works?
How do I correct this error found after running the sudo apt-get install -y autoconf automake build-essential python-dev libtool libssl-dev command
The following packages have unmet dependencies:
python-dev : Depends: python (= 2.7.11-1) but 2.7.12-116.04 is to be installed) but it is not going to be installed
Depends: libpython-dev (= 2.7.11-1) but it is not going to be installed
Depends: python2.7-dev (>= 2.7.11-1
E: Unable to correct problems, you have held broken packages.
These steps worked for me on Ubuntu 18.4 (note I had to install the pkg-config
package):
sudo apt install -y autoconf automake build-essential python-dev libtool libssl-dev pkg-config
cd /tmp
git clone https://github.com/facebook/watchman.git
cd watchman/
git checkout v4.9.0
./autogen.sh
./configure
make
sudo make install
thank you
ditto on 18.04 pkg-config
is also needed
./configure --enable-lenient
it worked for https://gist.github.com/markis/705f101a549f958d62546fb966caae42#gistcomment-2222957
These steps worked for me on Ubuntu 18.4 (note I had to install the
pkg-config
package):sudo apt install -y autoconf automake build-essential python-dev libtool libssl-dev pkg-config cd /tmp git clone https://github.com/facebook/watchman.git cd watchman/ git checkout v4.9.0 ./autogen.sh ./configure make sudo make install
Working! thx!!
./configure --without-python --without-pcre --enable-lenient
did the trick on 19.04
I updated the script with all the comments mentioned here, ie. pkg-config
and --enable-lenient
Another way more easiest is sudo apt install watchman
I arrived here searching on the error @mnpenner had https://gist.github.com/markis/705f101a549f958d62546fb966caae42#gistcomment-2276955
What corrected that error for me on Ubuntu 16.04 was running
./configure
again after installinglibssl-dev