运行 cmake 时可能缺少库
possible missing library when running cmake
我正在尝试在我的机器上安装 program (运行ning Linux),但是当我 运行 make
:
Starting build...
Working Directory : /home/laptop/mplabs_test
Build Type :
Generating OMP binary...
/bin/sh: 1: Syntax error: "&" unexpected
make: *** [lbs3d] Error 2
怎么了,我是不是少了一个图书馆?
问题是 Makefile 使用 bash 特定的语法 (|&
) 但命令是由 /bin/sh
执行的,它没有指向 /bin/bash
。
在我的电脑上 (Ubuntu 14.04):
ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Sep 16 2014 /bin/sh -> dash
一个解决方案可能是让符号 link /bin/sh
指向 /bin/bash
:
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
您可以通过在 makefile 中设置 SHELL
变量来控制用于执行配方的 shell。
如果该 makefile 使用 bash 特定的功能,那么它应该已经设置了 SHELL=/bin/bash
。由于它似乎没有这样做,所以您可以自己做。
修改有问题的 makefile 或使用
make SHELL=/bin/bash
而不仅仅是 运行 make
.
我正在尝试在我的机器上安装 program (运行ning Linux),但是当我 运行 make
:
Starting build...
Working Directory : /home/laptop/mplabs_test
Build Type :
Generating OMP binary...
/bin/sh: 1: Syntax error: "&" unexpected
make: *** [lbs3d] Error 2
怎么了,我是不是少了一个图书馆?
问题是 Makefile 使用 bash 特定的语法 (|&
) 但命令是由 /bin/sh
执行的,它没有指向 /bin/bash
。
在我的电脑上 (Ubuntu 14.04):
ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Sep 16 2014 /bin/sh -> dash
一个解决方案可能是让符号 link /bin/sh
指向 /bin/bash
:
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
您可以通过在 makefile 中设置 SHELL
变量来控制用于执行配方的 shell。
如果该 makefile 使用 bash 特定的功能,那么它应该已经设置了 SHELL=/bin/bash
。由于它似乎没有这样做,所以您可以自己做。
修改有问题的 makefile 或使用
make SHELL=/bin/bash
而不仅仅是 运行 make
.