34

I'm trying to install glib in a non-standard prefix but I get the following when running make install:

/bin/sh ../libtool --mode=install /usr/bin/install -c libgthread-2.0.la '/root/build/lib'
libtool: install: error: cannot install `libgthread-2.0.la' to a directory not ending in /usr/local/lib

Any reason why I have to install gthread only in a prefix ending with /usr/local/lib?

4

3 回答 3

70

在我的 Linux 机器上编译 MonetDB 时,我也偶然发现了这个问题。这是对我有用的解决方案/解决方法:始终make clean./configure.

在您的示例中,您应该能够:

./configure --prefix=/root/build && make clean && make && make install

我在关于 apache httpd 错误的讨论中找到了解决方案,Joe Orton 在其中分享了他的知识

重新运行“配置”后,通常需要“清理”。

于 2013-01-22T10:10:13.327 回答
1

使用:

make clean 
make distclean 

为我工作。

于 2020-05-27T00:32:34.173 回答
0

库的install路径通常可以自定义,而不是在某处的默认路径/usr/local/

对于某些库,您应该./configure像这样指定它:

./configure --prefix=/the/new/install/path
make
make install

其他人允许您在以下情况下指定它make install

./configure
make
make install prefix=/the/new/install/path

你可以两个都试试。至少一个应该可以解决您的问题。

于 2022-03-02T13:53:32.467 回答