CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   New user needs help (https://www.cfd-online.com/Forums/openfoam/74172-new-user-needs-help.html)

h0y5840 March 26, 2010 15:32

Hi Bruno,
I am a little confused. Post #19 and #20 give two different actions. Which one should I try? or both?
I guess post #19 is for the error message "created temporary 'cavity.OpenFOAM'
$HOME/OpenFOAM/ThirdParty-1.6/paraview-3.6.1/platforms/linux64Gcc/bin/paraview-real: error while loading shared libraries: libQtAssistantClient.so.4: cannot open shared object file: No such file or directory"
and post #20 is for the updated error "created temporary 'cavity.OpenFOAM'
$HOME/OpenFOAM/OpenFOAM-1.6/bin/paraFoam: line 129: paraview: command not found".
Am I right?

Should I just try what you said in post #20 but take into account about lib and lib64 thing? Sorry you have to spend extra time to answer my questions.

Many thanks,

HY

wyldckat March 26, 2010 17:08

Hi HY,

Do #20 first then #19. Both are needed.

My guess is that when you did "./makeParaview", the existing Paraview version got (pardon the expression) nuked, and didn't build properly with the Qt that you built.

So, #20 gets you Paraview back to what it was, and #19 should make Qt visible to Paraview, thus finally working. At least, that's my estimate!

Best regards,
Bruno

h0y5840 March 26, 2010 17:48

Hi Bruno,
I really appreciate your patience and the willingness to spend time on my problems. Your help is very improtant to me.
What I did is as follows:
1. tar xzf ThirdParty-1.6.linux64Gcc.gtgz in directory $HOME/OpenFOAM
2. . $HOME/.bashrc
3. edit the file $HOME/OpenFOAM/OpenFOAM-1.6/etc/settings.sh as instructed
in post #19
4. . $HOME/.bashrc
When I run paraview, the error is "$HOME/OpenFOAM/ThirdParty-1.6/paraview-3.6.1/platforms/linux64Gcc/bin/paraview-real: error while loading shared libraries: libQtAssistantClient.so.4: cannot open shared object file: No such file or directory". It seems that the error before I install Qt came back, right?
What am I still missing?

HY


Quote:

Originally Posted by wyldckat (Post 251902)

Do #20 first then #19. Both are needed.

My guess is that when you did "./makeParaview", the existing Paraview version got (pardon the expression) nuked, and didn't build properly with the Qt that you built.

So, #20 gets you Paraview back to what it was, and #19 should make Qt visible to Paraview, thus finally working. At least, that's my estimate!


wyldckat March 26, 2010 21:55

Hi HY,

Well, after simulating your installation conditions with Ubuntu 8.04 x86_64, my conclusion is that you have two possible solutions:
Solution 1: you'll need to install cmake 2.6, and your Red Hat has either a cmake < 2.6 or none at all. You'll have to request your system's administrator to install it.

Solution 2: if cmake 2.6 isn't readily available for Red Hat, you can unpack the ThirdParty-1.6.linuxGcc.gtgz package, which has a prebuilt cmake-2.6.4. You'll also need to add to settings.sh, right after that Qt code I've posted about, the following code:
Code:

_foamAddPath ${WM_THIRD_PARTY_DIR}/cmake-2.6.4/platforms/linux/bin
Source bashrc and run:
Code:

cmake --version
If you get "cmake version 2.6-patch 4", then you're good to go. If not, you'll need to ask your system's administrator to install Linux 32bit libraries "ia32-libs" (not sure what it's called in Red Hat) for your Red Hat system, and then you'll be able to run cmake.

About Qt, my initial code with lib works properly. So for completeness, here is how my settings.sh now ends:
Code:

# Add Qt to path and library path
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
QT_VERSION=4.3.5
QT_HOME=${WM_THIRD_PARTY_DIR}/qt-x11-opensource-src-${QT_VERSION}
if [ -d "$QT_HOME" ]
then
    QT_ARCH_PATH=${QT_HOME}/platforms/${WM_OPTIONS}
    _foamAddPath $QT_ARCH_PATH/bin
    _foamAddLib  $QT_ARCH_PATH/lib
fi
_foamAddPath ${WM_THIRD_PARTY_DIR}/cmake-2.6.4/platforms/linux/bin

# cleanup environment:
# ~~~~~~~~~~~~~~~~~~~~
unset _foamAddPath _foamAddLib minBufferSize

# -----------------------------------------------------------------------------

The bolden code is the end part of the original settings.sh file ;)


Now, you've got Qt, CMake, and you're just missing Paraview. With your current setup, and assuming your running a new terminal or have already sourced once more the bashrc file (the one in OpenFOAM's folder), just run:
Code:

cd $WM_THIRD_PARTY_DIR                                                                                                                                                               
rm -rf  paraview-3.6.1/platforms
./makeParaView

During the building of Paraview, you should see a looooooong list of something like this:
Code:

[  1%] Building C object VTK/Utilities/vtkfreetype/CMakeFiles/vtkfreetype.dir/src/base/ftmm.o
[  1%] Building C object VTK/Utilities/vtklibxml2/CMakeFiles/vtklibxml2.dir/SAX.o
[  1%] Building C object VTK/Utilities/vtkfreetype/CMakeFiles/vtkfreetype.dir/src/bdf/bdf.o
[  1%] Building C object VTK/Utilities/vtklibxml2/CMakeFiles/vtklibxml2.dir/SAX2.o

With the percentage of how much has been compiled. When it reaches 100%, it'll wrap up the installation and you should be good to go!! Or so I hope :rolleyes:


Well, this is cool, because this way I also get a bit more code for an installation script I'm helping out, whose thread is -> here <-. I haven't proposed you to follow it, because I assumed you were limited to your Red Hat system... and only just now have I finished the steps here on this very same post on your thread, on how to build Paraview for OpenFOAM.

By the way, after testing if the paraview command works, and if it does, and before you run paraFoam... don't forget to run the missing commands, namely:
Code:

cd $FOAM_UTILITIES/postProcessing/graphics/PV3FoamReader     
./Allwclean     
./Allwmake

Ooof... I hope it works now.. I'm tired... :D

Best regards,
Bruno

h0y5840 March 27, 2010 20:42

Hello Bruno,
The instruction to build up paraview is very clear. I followed ""Solution 2" and here is what I went through.
1. I got "cmake version 2.6-patch 4"
2. I compared the lines regarding to path of library path for Qt in settings.sh. The only difference is in the line _foamAddLib $QT_ARCH_PATH/lib, I have "lib64" not "lib". Actually I made the change from lib to lib64 following Post #19. Should I change back to lib?
3. I did ./makeParaView and it reached 100%
4. I tried "paraview", but got an error message "/home/huidan/OpenFOAM/ThirdParty-1.6/paraview-3.6.1/platforms/linux64Gcc/bin/paraview-real: error while loading shared libraries: libQtAssistantClient.so.4: cannot open shared object file: No such file or directory"
5. Although paraview was not successful, I did ./Allwclean and ./Allwmake anyway. The error is the same.

Looks I am still missing this "libQtAssistantClient.so.4 " after so many efforts, are we close to the final success? I feel sorry to have you spent so much time and energy on me. I want to let you know that you help is extremely improtant to me. As you have noticed that I am not familiar Unix system. Without your kind help, it is impossible for me to make OpenFoam practical. Many heartedful thanks.

HY

wyldckat March 28, 2010 07:01

Greetings HY,

Quote:

2. I compared the lines regarding to path of library path for Qt in settings.sh. The only difference is in the line _foamAddLib $QT_ARCH_PATH/lib, I have "lib64" not "lib". Actually I made the change from lib to lib64 following Post #19. Should I change back to lib?
Yes, change it back to lib. I thought Qt would have a lib64 folder, but after testing, I saw that it doesn't. I should have emphasized that issue.
Hopefully this will do the trick.

If it still reports "can't find library", run:
Code:

ls $HOME/OpenFOAM/ThirdParty-1.6/qt-x11-opensource-src-4.3.5/platforms/linux64GccDPOpt/lib
If this command says that nothing has been found, then Qt didn't build properly. If it does list the Qt libraries that were built, find the missing library by running:
Quote:

ls $HOME/OpenFOAM/ThirdParty-1.6/qt-x11-opensource-src-4.3.5/platforms/linux64GccDPOpt/lib | grep libQtAssistantClient.so.4
I get this:
Code:

libQtAssistantClient.so.4
libQtAssistantClient.so.4.3
libQtAssistantClient.so.4.3.5
libQtAssistantClient.so.4.3.5.debug

So, if you don't get these or similar, then Qt didn't build properly. If you do get these, then the libraries aren't visible, which means that either the settings.sh is misconfigured, or that sourcing the bashrc script isn't working properly. To make sure that the bashrc gets executed properly, is to start a new terminal/console and try from there!

Best regards,
Bruno

h0y5840 March 28, 2010 14:11

Hi Bruno,
You know what? Both paraview and paraFoam work after I change bit64 back to bit. I think I am ready to learn OpenFOAM now.
I would like to sincerely express my gratitude to you for the time and energy you put on to guide me to the installation and test for OpenFOAM. Your support was professional and effective and your help was kind and friendly.
Thank you very much.

Cheers,

HY

sega March 28, 2010 14:15

Quote:

Originally Posted by h0y5840 (Post 252046)
I change bit64 back to bit.

You did what?

h0y5840 March 28, 2010 14:27

Sorry, a big typo. I changed lib64 back to lib.

HY

wyldckat March 28, 2010 17:17

Greetings HY,

You're most welcome :) I'm glad to hear that finally you've got the whole thing up and running :D

Best regards,
Bruno

windy.lizzy May 5, 2010 13:03

Hi there,
I ran into the exact same problem that was described above here and, prior to seeing this post, I tried recompiling ParaView (several times, actually) but to no avail... it was still telling me that it couldn't find the libQtAssistantClient.so.4.

I saw your advice to edit the settings.sh such that the path to the Qt library is specified. I made the changes, opened a new terminal... crossed my fingers but then it said "error while loading shared libraries: libssl.so.0.9.8: cannot open shared object file: No such file or directory" :mad:

Any suggestions? This is getting super frustrating!
Thanks,
Liz

wyldckat May 5, 2010 13:10

Greetings Liz and welcome to the forum,

Well, you are very close to having it work :) Check this thread for the missing step (it's the fix for that same exact issue): [solved] Issue Involving Paraview

Best regards,
Bruno

windy.lizzy May 5, 2010 13:35

Thank you so much for the quick response!:)
I searched for this file in my user/lib folder and found that I have libssl.so

So it seems that this is an older version that what is being looked for. Do you think creating the symbolic link to use this older version would work?

Thanks,
Liz
:)

wyldckat May 5, 2010 13:41

Hi Liz,

I can only guess that if it's too old, it won't work. But hey, give it a try and see if it works... if not, try to update it!

But I think the libssl.so that you should link to, should be a system version, not a user version.

Best regards,
Bruno

windy.lizzy May 5, 2010 13:42

Hi again,
I tried the symbolic link trick and it seemed to work but now I'm getting this error:
symbol lookup error: /home/ewalls/OpenFOAM/ThirdParty-1.6/paraview-3.6.1/platforms/linuxGcc/bin/libvtkQtChart.so.pv3.6: undefined symbol: _ZN14QGraphicsScene11eventFilterEP7QObjectP6QEvent

Should I recompile Paraview?

Liz

wyldckat May 5, 2010 13:51

Hi Liz,

Uhm, now I'm lost. What steps did you take to get to where you are?

Because by what you describe, it seems to me that either:
  • you are using the pre-compiled Paraview that comes with the ThirdParty package and the system's Qt;
  • or that you build Paraview with the system's Qt version, and then built Qt 4.3.5 and you are now trying to use the "system Qt+Paraview" to use the 4.3.5 Qt.
Best regards,
Bruno

windy.lizzy May 5, 2010 14:08

Ok... here are the steps that I took.

I downloaded and unpacked the (32-bit version) zipped tar files.

I saw that Qt was required to run OpenFOAM and when I typed qmake --version, it told me that Qt was not installed on my system.

I ftp'd qt-x11-opensource-src-4.3.5.tar.bz2, unzipped and untarred it and ran ./makeQt

Then I ran the foamInstallationTest and it said everything was ok.

Then I tried the first tutorial (icoFoam/cavity) and blockMesh ran, icoFoam ran but paraFoam said that I was missing the libQtAssistantClient.so.4.

I saw your tip on modifying the settings.sh file so I did that and reopened a terminal.

Then I tried the tutorial run again but then when I ran paraFoam, it said that it couldn't find libssl.so.0.9.8.

Taking your advice, I created a symbolic link in /lib from my libssl.so.0.9.8b to the one it was looking for.

I ran the tutorial again, but it gave another error: undefined symbol: _ZN14QGraphicsScene11eventFilterEP7QObjectP6QEvent

I saw in a previous thread that you wrote saying that if you get an error like this then there's probably something up with Qt. So I deleted the unpacked Third_Party folder then unzipped and untarred it again. Then I ftp'd the Qt tar file again and I'm now in the process of running ./makeQt again.

Am I on the right track??

Thanks,
Liz

wyldckat May 5, 2010 14:15

I should have asked it sooner, so you wouldn't be now recompiling Qt again :(

OK, don't despair, because you are on the right track. The pre-built Paraview version that comes with the ThirdParty package was built with Qt 4.4.3, if I'm not mistaken, thus Qt 4.3.5 is too old for the pre-built Paraview to work with it.

Now, what you'll need to do is to continue to follow the remainder steps that I've posted on this very same thread, that explain on how to build Paraview with Qt 4.3.5!

Best regards,
Bruno

windy.lizzy May 5, 2010 16:49

Yay! It is now up and running!
Thank you so much for your help!
:D
Liz

wyldckat May 5, 2010 16:57

Hi Liz,

You're welcome and I'm glad that it's fully working now :)

Best regards,
Bruno


All times are GMT -4. The time now is 16:04.