编译东西 – / usr / bin / ld找不到support_glib

我正在编译ubuntu上的navit它下降到这一步,并失败

/bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE -ffast-math -o osm2navit osm2navit-osm2navit.o libnavit.la -L../navit/support/glib -lsupport_glib -L../navit/support/ezxml -lsupport_ezxml -ldl -L../navit/support/zlib -lsupport_zlib -lm -rdynamic libtool: link: gcc -g -O2 -Wall -Wcast-align -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type -D_GNU_SOURCE -ffast-math -o osm2navit osm2navit-osm2navit.o -rdynamic ./.libs/libnavit.a -L/home/rory/navit/svn/navit/navit/support/glib -lsupport_glib -L/home/rory/navit/svn/navit/navit/support/ezxml -lsupport_ezxml -ldl -L/home/rory/navit/svn/navit/navit/support/zlib -lsupport_zlib -lm /usr/bin/ld: cannot find -lsupport_glib 

任何想法什么Ubuntu包安装

它看起来像试图在本地源代码树中查找库。

下载…

是的。 它期望在navit/support/glibfind这个库。 我猜你错过了一个构build步骤,告诉它先编译该文件。

从上面看来,libsupport_glibc库应该由您正在构build的包提供。 试着在源代码树的顶部做一个find和/或rgrep来找出它是如何构build的。 像find /path/to/source/tree -type f -name '*support?glib*'这样的东西应该指出这个库的源文件是什么。 rgrep 'support?glib' /path/to/source/tree可以帮助你弄清楚它是如何构build的。

看来,有一个版本的oms2navit包。 包信息位于[ https://launchpad.net/%5D [ https://launchpad.net/~stephane-brunner/+archive/test/+build/1104113%5D下的其中一个站点。

玩的开心

是否有需要编译它的原因, 这个wiki包括你可以添加到/etc/apt/sources.list的源代码

 * deb http://navit.latouche.info/ubuntu gutsy main * deb http://navit.latouche.info/ubuntu hardy main * deb http://navit.latouche.info/ubuntu intrepid main * deb http://navit.latouche.info/ubuntu jaunty main 

只需将与您的发行版匹配的正确的行添加到sources.list,然后只是:

 sudo apt-get update apt-cache search navit apt-get install <whatever it is> 

这就是说,用以下版本: navit-0.1.1.tar.gz 。 我在Jaunty下面的标准步骤没有问题。

 ./configure make sudo make install