-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
dot called even when HAVE_DOT is NO #7273
Comments
I assume you are talking about doxygen version 1.8.16 and the code line I think similar problems might occur when using e.g. With the
@doxygen what strategy to follow here? To be sure about the setup and doxygen commands used:
|
yes version 1.8.16 attached is a tar file containing a very small example which reproduces the problem. As I said before this worked fine with 1.7.6.1 |
I would say that if the configuration file specifies that a certain tool is not available (e.g. For other tools we may still need to introduce switches (e.g. |
Is there a fix or solution for this? It's still happening. https://github.com/tobylane/CorsixTH/runs/3039196330?check_suite_focus=true#step:12:17 |
|
1.8.17, the latest in that version of Ubuntu. I was hoping to run without 1.9 and dot for the sake of other users, though perhaps setting HAVE_DOT = YES in Actions may be acceptable if NO did work. But this only started happening when I took out that section of the doxy config, despite the deleted sections matching the defaults in the description. I re-add the Dot related section in tobylane/CorsixTH@2ac6915 and still have the errors in https://github.com/tobylane/CorsixTH/runs/3039321681?check_suite_focus=true#step:12:17 |
Taking out sections of the Doxyfile means just that the defaults are used. |
That diff shows that nothing should have changed, as all the settings match the default. Is the answer that 1.8 doesn't fully respect have_dot = no, and I need 1.9? |
|
I fixed it by adding HAVE_DOT = NO to the right file. I don't understand the error messages enough to pick out a small portion. Thanks for your prompt help, sorry I can't identify it down. |
Guarded the `\dot` and `\dotfile` in case `HAVE_DOT` is not set. (PlantUML was already guarded by means of `PLANTUML_JAR_PATH`)
Regarding the commands |
Code has been integrated in master on GitHub (please don't close the issue as this will be done at the moment of an official release). |
This issue was previously marked 'fixed but not released', |
Since the issue doxygen#7273 and pull request doxygen#8663 the setting `HAVE_DOT` was required when one wants to incorporate a "dot" type of graph, though this interferes with the Inheritance usage, especially when one wants to have a textual" list. There were a number of settings etc. involved: - `CLASS_GRAPH` - `CLASS_DIAGRAMS` - `HAVE_DOT` and the layout setting - `<inheritancegraph visible="$CLASS_GRAPH"/>` With this patch the following scheme has been implemented: ``` HAVE_DOT, CLASS_GRAPH, class diagram output ================================================================ NO, NO nothing shown (expected) NO, YES built-in diagram NO, TEXT text link NO, GRAPH built-in diagram (same as YES) YES, NO nothing shown (expected, HAVE_DOT can be used for other diagrams and \dot) YES, YES dot generated diagram YES, TEXT text link YES, GRAPH dot generated diagram (same as YES) ``` The setting `CLASS_DIAGRAMS` is not necessary and has been declared obsolete.
In the BGL package we get a warning like: ``` /home/cgal-testsuite/cgal_doc_build/CGAL-5.4-Ic-33/doc/BGL/PackageDescription.txt:29: warning: ignoring \dot command because HAVE_DOT is not set ``` The BGL package uses the `\dot` and has now to use the setting `HAVE_DOT=YES` to see the dot image. Till now this went OK as the `\dot` command didn't look at the setting of the `HAVE_DOT` setting in the Doxyfile, though by the issue doxygen/doxygen#7273 and the pull request doxygen/doxygen#8663 it is now required that `HAVE_DOT` is set. The idea of setting `HAVE_DOT` for the BGL project removed the warning (and shows the figure again) though has also as side effect that the inheritance graphs are shown. Until now CGAL shows for the inheritance just the text version. Doxygen now has for the `CLASS_GRAPH` setting the possibility `TEXT` that does exactly what is required. Due to the general setting of `HAVE_DOT` also the not needed `graph_legend` was generated and some `INCLUDE_GRAPH`s, by setting this to `NO ` these are no suppressed as well.
* Doxygen had a longstanding bug [0] where it would use `dot` even if not configured to do so. Due to this behaviour our config magically worked. This bug is fixed in 1.9.2 therefore we need to explicitly enable `dot` support in order to keep existing functionality. * Enables WARN_AS_ERROR to catch mistakes. * Adds a version string to the header to easily identify which commit the docs are built from. [0] doxygen/doxygen#7273
I am trying to migrate from doxygen V1.7.6.1 to the latest version. We don't have Graphviz installed so we have HAVE_DOT set to NO. Despite this doxygen still attempts to call dot.
It seems in the HtmlDocVisitor::visit function if DocVerbatim is Dot then calls to dot are made without checking the HAVE_DOT value.
The error below is reported
sh: 1: dot: not found
error: Problems running dot: exit code=127, command='dot', arguments='"/home/dds/cj/OSPL-13187/ospli/ospl_docs/docs/cs_api/html/inline_dotgraph_1.dot" -Tpng -o "/home/dds/cj/OSPL-13187/ospli/ospl_docs/docs/cs_api/html/dot_inline_dotgraph_1.png"'
I have tested this by adding if (Config_GetBool (HAVE_DOT) ) and the error above does not occur
We did not have the problem with V1.7.6.1
The text was updated successfully, but these errors were encountered: