如何编译 lbflow 1.1?

如何编译 lbflow 1.1?

使用“sh ./configure”命令后,我在lbflow 包安装(科学安装)。

操作顺序如下,但有错误:

./configure --disable-gts

sudo make

[sudo] password for alireza:
make all-recursive
make[1]: Entering directory `/home/alireza/lbflow-1.1'
Making all in src
make[2]: Entering directory `/home/alireza/lbflow-1.1/src'
source='lbflow.cpp' object='lbflow-lbflow.o' libtool=no \
DEPDIR=.deps depmode=none /bin/bash ../depcomp \
g++ -DHAVE_CONFIG_H -I. -I. -I.. -c -o lbflow-lbflow.o `test -f 'lbflow.cpp' || echo    './'`lbflow.cpp
**../depcomp: line 432: exec: g++: not found**
**make[2]: *** [lbflow-lbflow.o] Error 127
make[2]: Leaving directory `/home/alireza/lbflow-1.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/alireza/lbflow-1.1'
make: *** [all] Error 2**

您有什么办法可以解决这个问题吗?

(请注意,我已经安装了 g++ 和 gcc。它说 g++:未找到,但我已经从 Ubuntu 软件中心安装了 g++!)

答案1

使用 检查是否g++已安装dpkg --list | grep g++。就我的情况而言:

ii  g++                                       4:4.6.3-1ubuntu5                                    GNU C++ compiler
ii  g++-4.6                                   4.6.3-1ubuntu5                                      GNU C++ compiler

ii代表已安装。然后使用 检查which g++,它应该输出类似以下内容的内容:

/usr/bin/g++

如果 which 命令没有输出任何内容,则表示未安装或存储二进制文件的补丁不在您的$PATH变量中。

安装g++编译器:

sudo apt-get install build-essential 

g++ --version最后,就我的情况而言,最后的检查应该是:

g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

如果一切正常,则说明您的编译器一切正常。g++安装并可用后,重试 ./configure 和 make 命令。如果成功,请告诉我。

编辑编译错误:

所以我明白了。我从另一个论坛整理了你尝试编译的包,并自己编译了它。问题是,gcc 已经清理了头文件依赖关系,因此对于 gcc 版本 >=4.3,某些代码不再编译。请参阅http://gcc.gnu.org/gcc-4.3/porting_to.html了解要包含哪些内容以避免编译错误。在执行 ./configure 和 make 命令的文件夹中,打开文件src/parser.hfile 并将以下行添加到第 15 行下的 include 语句中#include <iostream>

#include <iostream>
#include <sys/types.h>
#include <stdio.h>
#include <cstdlib>
#include <algorithm>

然后再次运行 make 命令。它应该不会失败。在我的测试中它是成功的。

相关内容