安装doxygen及make命令错误

10
我正在尝试在我的CentOS 6.3机器上安装Doxygen,但是遇到了这个错误。有任何想法吗?
[root@dell1 doxygen-1.8.3.1]# make install
/usr/bin/install -d /usr/local/bin
/usr/bin/install -d /usr/local/doc/doxygen
/usr/bin/install -m 755 bin/doxygen    /usr/local/bin
/usr/bin/install -m 755 bin/doxytag    /usr/local/bin
/usr/bin/install: cannot stat `bin/doxytag': No such file or directory
make: *** [install] Error 1

你能把你的顶层Makefile发布到pasteBin上吗? - emallove
1
看起来doxygen-1.8.4二进制文件也缺少doxytag,所以唯一的方法是修改Makefile.in或Makefile并注释掉bin/doxytag的安装。实际上,它只是doxygen工具之一,而不是最重要的工具。 - marcos.nieto
从doxygen 1.8.0版本的发布说明中:工具doxytag已被宣布过时并已删除(它本来就无法正常工作)。安装脚本installdox也是如此。 - albert
5个回答

19

Bash抱怨并不是错误的:

/usr/bin/install: cannot stat `bin/doxytag': No such file or directory

事实上,已编译的文件doxytag没有包含在下载的tar文件中。因此,在尝试进行make时,无法找到该文件。为了使其成功,您有两个选择:

此处编译doxytag.py文件,并将其粘贴到doxygen的bin目录中

您可以使用以下命令从上面的链接编译python文件doxytag.py:

python -m compileall path_to_the_file/doxytag.py

应该生成一个扩展名为.pyc的Python编译可执行文件。现在将此文件移动到您的doxygen版本文件夹中。例如,

mv doxytag.pyc your_path/doxygen-1.8.5/bin/doxytag

或者您可以从这里下载doxytag。

现在,当您尝试进行make操作时,它将完成而没有任何错误。

注释掉Makefile中需要doxytag文件的那行代码

您可以在https://www.star.bnl.gov/public/comp/sofi/doxygen/doxytag_usage.html了解有关doxytag实用程序的信息。

如果您并不真正需要文档中的此实用程序,只需通过以下方式在doxygen-1.8.5(根据您的版本)目录下对Makefile中的该行进行注释或删除即可:

#$(INSTTOOL) -m 755 bin/doxytag    $(INSTALL)/bin

然后运行make命令。


1
doxytag不再是doxygen分发的一部分(自版本1.8.0起),标签处理已集成在doxygen中。 - albert

4
doxygen的make命令很奇怪:“make install”不会调用“make”,所以你需要执行以下操作:
make
make install

先生成二进制文件,然后再安装它们。


谢谢你们两位的回答,问题在于我应该更改 make 文件查找 doxytag 的文件夹,或者将 doxytag 复制到最后一个文件夹中。 - tetartos


1
尝试以超级用户身份运行。
sudo make install

1
首先,您需要安装一些依赖项。
sudo apt install cmake
sudo apt install flex
sudo apt install bison

之后,执行以下命令;它可能会正常工作。

git clone https://github.com/doxygen/doxygen.git
cd doxygen
mkdir build
cd build
cmake -G "Unix Makefiles" ..
make
sudo make install

1
对于当前版本来说这是可以的,但问题是在2013年提出的,在那个时候该过程根本没有使用cmake和git。此外,问题还存在于已经过时的doxytag程序上。 - albert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接