我刚刚安装了 64 位版本的 Slackware,并且正在从其 tarball 设置我之前运行的一些软件(32 位)。
目前我正在尝试构建 lib torrent-0.12.7
,它声称它需要libsigc++-2.0
。我已经libsigc++-2.2.9
编译并安装了,但似乎找不到它。
我注意到libsigc++
安装在:
/usr/local/lib
这是那里唯一的东西。我还注意到printenv
显示:
PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig
因此我认为这意味着它在目录中寻找 64 位包,而不是目录lib64
中的 32 位包。lib
是什么正确的让它找到这个包的方法是什么?我是否需要使用libsigc++
某种标志重新编译以将其安装在 64 位目录中?如果是,怎么做?还是我需要做其他事情?如果我需要做的只是将该路径添加到上述环境变量中,我该怎么做?(由于某种原因,这台机器上没有setenv
。)
答案1
我最终发现我需要使用export
来设置我的环境变量。因此,.zshrc
我添加了:
PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/local/lib/pkgconfig; export PKG_CONFIG_PATH
现在./configure
找到了正确的库。
答案2
通常你会pkg-config
使用主机前缀来调用:
$ uname -m
x86_64
$ i686-pc-linux-gnu-pkg-config sigc++-2.0 --libs
-lsigc-2.0