CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Installation (https://www.cfd-online.com/Forums/openfoam-installation/)
-   -   Building OpenFOAM1.7.0 from source (https://www.cfd-online.com/Forums/openfoam-installation/78529-building-openfoam1-7-0-source.html)

wyldckat September 18, 2010 14:36

Greetings to all!

I've just finished building the code documentation for OpenFOAM 1.7.1 in Debian Lenny (the stable one). I haven't tried Squeeze (the testing one) because I've been a bit confused on how Debian is installed :(

Anyway, the documentation built successfully without any errors. And I owe an apology to Nicolas: I didn't know that OpenFOAM's code documentation now uses php instead of html :( I also had to setup apache2+php5 as well, to get things going.

I also found out that the javascript that exists in the online version isn't present in locally built version... but the search box still works as a normal form! But this could be because of the Doxygen version that comes with Debian Lenny.


So, Nicolas, I can only assume that the Squeeze/testing version you are using of Debian still has a few bugs in it and those might have hit either Doxygen or some other application it depends on. Or the file system was unable to fully handle the over 46000 files that are created inside the html folder!


I'll try to upgrade to Squeeze and build the documentation again. Perhaps I can trip the same problem that Nicolas had.

Best regards,
Bruno

nlc September 18, 2010 15:12

It is possible in Doxygen to change the php extension to html in the Dixyfile I manage to get the sherch to work with only php. adding the option:

SERVER_BASED_SEARCH = YES (Make saerch work but only with php)

at the end ove the Doxyfile

I alsow change

SHORT_NAMES = YES (Your suggestion, seams to make a difference )

DOT_CLEANUP = NO (to get ride of the first error I got)

and put back the value of

DOT_GRAPH_MAX_NODES and MAX_DOT_GRAPH_DEPTH as it was in the OpenFOAM1.6 version

But the Java search is nice on the website and don't work on locale !!

If you find how to make it work I'll be happy ! :)

Thanks for the help

wyldckat September 18, 2010 19:56

1 Attachment(s)
Hi Nicolas,

OK, attached is a compressed file hackHtml.gz with a shell script that will finish what Doxygen started.
Download it and unpack it in the folder "$WM_PROJECT_DIR/doc/Doxygen". Then run:
Code:

chmod +x hackHtml
./hackHtml

It will download the missing javascript file and css file for the search function and it will integrate them into the existing framework :)

The next time you open/refresh the index.html or index.php browser page (depending on those options you posted about), you should have that neat-o search box up and running :D

Notes:
  • I only tested with the resulting build based on the original Doxyfile. I didn't activate any of those flags you've reported about!
  • I didn't manage to get a working Debian Squeeze, so I simply went with trying OpenFOAM 1.7.x + Ubuntu 10.04 :p

Best regards,
Bruno

jgeorg December 7, 2010 06:33

Thanks for the Bruno. Im using Ubuntu 10.04, OpenFOAM 1.7.1 etc..... Worked like a charm.

linch November 17, 2011 07:06

Hi,

I have the same problem as Nicolas had. While trying to compile the documentation for 1.7.x on debian squeeze I get an error:
Quote:

........
Running dot for graph 2468/16048
Running dot for graph 2469/16048
Error: dot: can't open /home/shevchuk/OpenFOAM/OpenFOAM-1.7.x/doc/Doxygen/html/classFoam_1_1boundaryMesh_a755c3307c0a74eb80926b68 bb037674c_cgraph.dot
Problems running dot: exit code=2, command='dot', arguments='"/home/shevchuk/OpenFOAM/OpenFOAM-1.7.x/doc/Doxygen/html/classFoam_1_1boundaryMesh_a755c3307c0a74eb80926b68 bb037674c_cgraph.dot" -Tpng -o "/home/shevchuk/OpenFOAM/OpenFOAM-1.7.x/doc/Doxygen/html/classFoam_1_1boundaryMesh_a755c3307c0a74eb80926b68 bb037674c_cgraph.png" -Tcmapx -o "/home/shevchuk/OpenFOAM/OpenFOAM-1.7.x/doc/Doxygen/html/classFoam_1_1boundaryMesh_a755c3307c0a74eb80926b68 bb037674c_cgraph.map"'
finished...
+ chmod -R a+rX ./
doxygen graphviz and texlive-latex-base are installed. Changing SHORT_NAMES = YES and DOT_CLEANUP = NO in Doxyfile (located in ~/OpenFOAM/OpenFOAM-1.7.x/doc/Doxygen/Doxyfile) didn't help.

best regards,
Ilya

wyldckat November 17, 2011 07:19

Hi Ilya,

I had the same problem a few days ago with OpenFOAM 2.0 in my Ubuntu 11.10 (Doxygen 1.7.3, if I'm not mistaken), so I had to go back to using Doxygen 1.6.3. It seems that Doxygen versions >= 1.7.0 have serious problems with OpenFOAM's code :(

In Ubuntu, I sort of used these instructions of mine: http://www.cfd-online.com/Forums/ope...tml#post317304 post #4. But instead of using Natty, I used Lucid's repositories.

I'm not sure how you can do this in Debian :( but it should be similar, since Ubuntu is based on Debian.

Best regards,
Bruno

linch November 25, 2011 07:08

Thanks Bruno,

with an older version of doxygen doc was compiled successfully. But it still doesn't work properly. Class diagrams don't show any other classes besides of the chosen one and search bar starts an endless loop trying to open search.php Do I need something else to open php-files, or do I still have problems with doxygen?

Best regards,
Ilya
http://s11.postimage.org/8gbpmn05d/doxygen.jpg

wyldckat November 26, 2011 03:21

Hi Ilya,

OK, I was wondering about some issues I had with Doxygen 1.6.3 (took several hours to build the code documentation on Ubuntu 11.10, while in 10.04 it took only about an hour), so I rolled up my sleeves and did the following:
  1. Got Debian 6 Squeeze x86_64 net ISO and installed it in a Virtual Machine.
  2. Followed the following instructions: Building Code Documentation on OpenFOAM 2.0.0/x - and yes, I built first OpenFOAM 2.0.x and you'll soon understand why.
  3. Notice the pseudo-hack of installing the latest binary version of Doxygen. (side note: I've got a feeling that the good people at Debian haven't gotten the build recipe straight for Doxygen 1.7, so this might be why both Debian and Ubuntu can't handle OpenFOAM's code documentation ;))
  4. All worked well, including the graphs. And it generated the documentation in about 20min with a 4 core virtual machine!
  5. Now onto OpenFOAM 1.7.x. By comparing the "Doxyfile" in 1.7.x and 2.0.x, I got a list of variables that need adding or modifying:
    • Variables added to "Doxyfile":
      Code:

      SERVER_BASED_SEARCH    = NO
      SHOW_FILES            = YES
      SHOW_NAMESPACES        = YES

    • Modified:
      Code:

      SHORT_NAMES            = YES
  6. And the rest is business as usual :D
I'm running another test and report back on this post when I get new results :)
____________________________________
edit: OK, steps 5 and 6 only get you a half-baked version of the code documentation :( To get a better version of the code documentation, I did the following steps, to replace steps 5 and onward:
  1. Remove the files in the "Doxygen" folder of 1.7.x (# indicates comentary):
    Code:

    foam #this should jump to the OpenFOAM-1.7.x folder
    cd doc/Doxygen

    Confirm that you are in the right folder:
    Code:

    ls -l
    Proceed with the removal of the contents if you are in the right folder:
    Code:

    rm -rf *
  2. Copy the files in the Doxygen folder of 2.0.x (before you compile the code documentation on that version):
    Code:

    cp -r $HOME/OpenFOAM/OpenFOAM-2.0.x/doc/Doxygen/* .
  3. And now you can get with the rest of the usual business, namely run:
    Code:

    ./Allwmake
12min! It only took me 12min to build the whole code documentation!

Best regards,
Bruno

linch November 28, 2011 10:32

Hi Bruno,

first, thank you very much: the compilation went fine, I the doc works like it should work.

The only issue I still have is refers to the search box. The browser still tries to open search.php, which it can't open. Supposable it isn't a problem of doc generation and there is something else missing on my system. Do you have any ideas?

Best regards,
Ilya

akidess November 28, 2011 11:39

Illya, I think you need a http server with a PHP interpreter for the host to work.

wyldckat November 28, 2011 16:07

Hi Ilya and Anton,

Quote:

Originally Posted by linch (Post 333820)
The only issue I still have is refers to the search box. The browser still tries to open search.php, which it can't open. Supposable it isn't a problem of doc generation and there is something else missing on my system. Do you have any ideas?

Something is amiss here... did you follow my original instructions from post #28 (the one you probably got in an email) or the edited instructions on that same post? Because the edited instructions indicate that the original "doc/Doxygen" folder on OpenFOAM 1.7.x is to be removed and replaced with a copy from 2.0.x. This will fix several issues that 1.7.x had in the "Doxyfile" and associated files (headers, scripts, and so on) and will no longer require any php files!

Quote:

Originally Posted by akidess (Post 333827)
Illya, I think you need a http server with a PHP interpreter for the host to work.

If you follow my instructions, it shouldn't necessary ;) This was sort-of a bug that was left unsolved in OpenFOAM 1.7.x. When 2.0.0 came out, the "SERVER_BASED_SEARCH" option was properly set to "NO", therefore no php files/code are/is generated.

Best regards,
Bruno

akidess November 29, 2011 02:59

Right! That's what I get for jumping into the middle of a discussion I haven't been actively following :o

Quote:

Originally Posted by wyldckat (Post 333861)
Hi Ilya and Anton,


Something is amiss here... did you follow my original instructions from post #28 (the one you probably got in an email) or the edited instructions on that same post? Because the edited instructions indicate that the original "doc/Doxygen" folder on OpenFOAM 1.7.x is to be removed and replaced with a copy from 2.0.x. This will fix several issues that 1.7.x had in the "Doxyfile" and associated files (headers, scripts, and so on) and will no longer require any php files!


If you follow my instructions, it shouldn't necessary ;) This was sort-of a bug that was left unsolved in OpenFOAM 1.7.x. When 2.0.0 came out, the "SERVER_BASED_SEARCH" option was properly set to "NO", therefore no php files/code are/is generated.

Best regards,
Bruno


linch November 29, 2011 03:49

Quote:

Originally Posted by wyldckat (Post 333861)
Hi Ilya and Anton,


Something is amiss here... did you follow my original instructions from post #28 (the one you probably got in an email) or the edited instructions on that same post? Because the edited instructions indicate that the original "doc/Doxygen" folder on OpenFOAM 1.7.x is to be removed and replaced with a copy from 2.0.x. This will fix several issues that 1.7.x had in the "Doxyfile" and associated files (headers, scripts, and so on) and will no longer require any php files!


If you follow my instructions, it shouldn't necessary ;) This was sort-of a bug that was left unsolved in OpenFOAM 1.7.x. When 2.0.0 came out, the "SERVER_BASED_SEARCH" option was properly set to "NO", therefore no php files/code are/is generated.

Best regards,
Bruno

Hi Bruno,

yes, I followed only the second part of your post, but not the first one. So I didn't build the doc under 2.0.x, but I deleted the Doxygen folder in 1.7.x and replaced it with the one from 2.0.0 and built it. I didn't clean the previous build with ./Allwclean, but since I deleted the entire folder I thought there is nothing left.

And SERVER_BASED_SEARCH is set to NO in Doxyfile, that's right.

Best regards,
Ilya

wyldckat November 29, 2011 16:53

Hi Ilya,

This is very odd. I retried it once again with a clean Doxygen folder on "OpenFOAM-1.7.x/doc", made from a clean copy from "OpenFOAM-2.0.x/doc/Doxygen" (no html folder nor other files generated by Doxygen). It worked as intended!

The only details that come to mind that you might have missed are:
  • Which Doxygen version are you using? Is it the latest one, namely 1.7.5.1 directly from http://www.stack.nl/~dimitri/doxygen/ ? Or is it still the old Doxygen 1.6.something from Debian?
  • Have you tried refreshing the "index.html" page on your browser? It might be still using the old page.
Other than these... only by retracing your steps would I be able to figure out what went wrong :(


Best regards and good luck!
Bruno

linch November 30, 2011 03:54

Hi Bruno,

i used doxygen 1.5.6 and yes I tried to refresh the page or to open it in an other browser to prevent the use of any cashed elements.

Best regards,
Ilya

wyldckat December 1, 2011 02:35

Hi Ilya,

Ah, then that's the problem! You've got to use the latest Doxygen version, because the files copied from OpenFOAM 2.0.x were designed to use Doxygen 1.7.0 and above!

I should have pasted here the instructions for installing 1.7.5.1, but I'll do the same as before ;) - Read the part from this blog post of mine «Building Code Documentation on OpenFOAM 2.0.0/x» that talks about manually installing Doxygen 1.7.5.1 on your home folder. The instructions are for an architecture of x86_64, but if you got i686, I think the Doxygen site has info on how to compile it.

Then it should work as intended!

@Anton: it's possible that the Doxygen bug on OpenFOAM 1.7.x was related to a limitation on Doxygen itself, therefore always requiring PHP.

Best regards,
Bruno

linch December 1, 2011 08:59

Hi Bruno,

thanks a lot again. With doxygen 1.7.5.1 everything works fine.

Best regards,
Ilya

buffi January 6, 2012 09:47

When I followed the procedure from post #28, I only got the Main Page, Related Pages, Files and Directories tabs. I used the OF-2.0.0 doxygen config files, the source of OF-1.7.1 and doxygen 1.7.6.1.

I got a complete and working documentation only with these options in the doxyfile:

INPUT_FILTER = doxyFilt
FILTER_SOURCE_FILES = YES
SHORT_NAMES = NO

Regards,

Buffi

wyldckat January 7, 2012 03:42

Greetings Buffi,

I'm having trouble fully understanding this statement:
Quote:

Originally Posted by buffi (Post 338122)
I got a complete and working documentation only with these options in the doxyfile:

INPUT_FILTER = doxyFilt
FILTER_SOURCE_FILES = YES
SHORT_NAMES = NO

Do you mean:
  1. The Doxyfile you used only had those 3 options?
  2. That you also needed to modify those 3 options in the Doxyfile from OpenFOAM 2.0.0?
  3. Or that you only needed to modify these 3 options in the Doxyfile from OpenFOAM 1.7.1?
I'm thinking you mean the 2nd possibility, but I just want to make sure of what you mean.

Best regards,
Bruno

buffi January 7, 2012 11:19

It is 2: I needed to modify those options in the Doxyfile from OF-2.0.0. Thanks for pointing out!


All times are GMT -4. The time now is 21:28.