View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003566 | OpenFOAM | Bug | public | 2020-10-06 12:54 | 2020-10-20 14:34 |
Reporter | aleixandre | Assigned To | henry | ||
Priority | low | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | GNU/Linux | OS | Other | OS Version | (please specify) |
Product Version | 8 | ||||
Fixed in Version | 8 | ||||
Summary | 0003566: Unable to run Docker image openfoam8-linux in Raspberry pi 4 with Ubuntu 20.04.1 LTS | ||||
Description | hello, I run openfoam8-linux, everything is downloaded but after the promt sais "standard_init_linux.go:211: exec user process caused "exec format error" | ||||
Steps To Reproduce | I have installed the .img "ubuntu-mate-20.04.1-beta2-desktop-arm64+raspi" on a Raspberry 4 b 8GB i have followed all the instructions at https://openfoam.org/download/8-linux/ I am able to run Docker hello world I tried many time to remove the image and reload it with no success Any help? Thanks a lot | ||||
Tags | No tags attached. | ||||
|
So two things: 1. If you have Ubuntu installed, you should have been able to simply install from Deb... but that won't work, because Raspberry Pi uses an ARM CPU, not an x86_64. 2. Installing via Docker would only work if you had installed the virtual machine based Docker. I believe that the best option to get it up and running would be to build from source code: https://openfoam.org/download/source/ - given that you have Ubuntu, it should be straight forward... even though it might take the RaspberryPi some 24h or so to do the build... |
|
Many thanks for the answer ¡ Since I wrote the message I found that I could run "sudo apt-get install openfoam" and "sudo apt-get install paraview" directly from the prompt, so I was happy (I am pretty new in linux ...) After install both of them paraview is working perfectly but openfoam seems to NOT to be ok at all I sow the files and only /usr/share/openfoam/etc was created with files but nothing else, and I didnt know what to do else I followed the instruction on https://openfoam.org/download/source/ but many problems during the compilation of ThirdPartySW/Paraview (./Allwmake was ok but ./makeParaview stopet always at 87% Built target vtkPVServerManagerRenderingCS Error 2 non-zero status 2) so I quit that idea as paraview was working well Then I found, downloaded and extracted openfoam 1906.191111 +....tar it in the created folder /home/user/OpenFOAM/OpenFOAM-v1906 I added "source /home/user/OpenFOAM/OpenFOAM-v1906/etc/bashrc" to ./bashrc file and execute also from the term to update the variables Finally I executed ./Allwmake (in /home/user/OpenFOAM/OpenFOAM-v1906/) and still running (I have also to install via apt-get flex bison and zlib1g-dev) Now it seems that it is compiling but I don't know why it is only using 25-30% of the CPU (I see with top) because when I followed https://openfoam.org/download/source/ it was running at 97% (I have Raspberry pi 4 b 8GBs) so still running since yesterday Now my only hope it is to have it working once finished and paraview would be properly "linked" to openfoam .... I will let you know once finish, but if I missed something please let me know Once again thanks for your support by the way, I tried Docker option was seems to me much complicated.... |
|
After 24hours compiling it seems taht OpenFoam is Ok, :-)))) I ran the first example, blockMesh was ok, but when I ran OpenFoam I have this: user@ub:~/OpenFOAM/user-v1906/run/pitzDaily$ paraFoam Cannot use ParaView reader module library (PVFoamReader) The PV_PLUGIN_PATH environment value is not set Continuing with builtin reader: paraFoam -vtk Created temporary 'pitzDaily.foam' /home/aleix/OpenFOAM/OpenFOAM-v1906/bin/paraFoam: 328: paraview: not found if I launch "paraview" alone in the term it works perfectly What can I do?? Thanks ¡¡ |
|
For unknown reason it seems that paraview disappeared from the systems, however I just run "sudo apt install open paraview" again and now everything seems to be working well. Thanks a lot ¡¡¡ |
|
OpenFOAM-v1906 is a fork of OpenFOAM produced by ESI and not a release by the OpenFOAM Foundation: The OpenFOAM Foundation is the organisaton which holds the copyright of the OpenFOAM software and documentation, whose purpose is to manage and distribute OpenFOAM as free, open source software for the benefit of its users. It is a registered company, limited by guarantee based in England. As such, it has no share capital or shareholders, but has individual members committed to free, open source software, who run the organisation on a voluntary basis. It has no employees and any annual profit is retained within the organisation and cannot be distributed to members. OpenFOAM® is a registered trademark of OpenCFD Ltd, licensed to the OpenFOAM Foundation in 2011 so that it could distribute its software under under that name. To obtain version 8, the latest release from the OpenFOAM Foundation download from https://openfoam.org/version/8/ |
|
Thanks Henry, Afer seeing you message I have reseted the Rasp4 and now I have followed your instruction and openfoam8 copiling is in progress I think the main issue was with Paraview not with openfoam and paraview can be directly installed by apt-get so I think it will be ok Once finish I will let you know Again thanks for your work and support |
|
OpenFOAM-v1906 was released by ESI Group with false copyright statements. Distribution of OpenFOAM-v1906 violates the GPL v3. |
|
Sorry Chris, I didnt know that, as I said v1906 is removed and now openfoam8 is being compiled I will let you know once it finish Thanks ¡ |
|
I realized that I am compiling Openfoam-8 in my user dir /home/aleix/OpenFOAM/OpenFOAM-8/ but I was going to create another user which should also being able to run openfoam What do I have to do once the compilation is finished? should I copy the OpenFOAM-8 dir to the new user dir and edit new user ./bashrc? Thanks ¡¡ |
|
Hi again, Really frustating :-( I can't finish compilation... I have the following error " g++ -std=c++11 -DlinuxArm64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 -mcpu=native -DNoRepository -ftemplate-depth-100 -I/home/aleix/OpenFOAM/OpenFOAM-8/src/thermophysicalModels/reactionThermo/lnInclude -I/home/aleix/OpenFOAM/OpenFOAM-8/src/thermophysicalModels/basic/lnInclude -I/home/aleix/OpenFOAM/OpenFOAM-8/src/thermophysicalModels/specie/lnInclude -I/home/aleix/OpenFOAM/OpenFOAM-8/src/thermophysicalModels/functions/Polynomial -I/home/aleix/OpenFOAM/OpenFOAM-8/src/ODE/lnInclude -I/home/aleix/OpenFOAM/OpenFOAM-8/src/finiteVolume/lnInclude -I/home/aleix/OpenFOAM/OpenFOAM-8/src/meshTools/lnInclude -IlnInclude -I. -I/home/aleix/OpenFOAM/OpenFOAM-8/src/OpenFOAM/lnInclude -I/home/aleix/OpenFOAM/OpenFOAM-8/src/OSspecific/POSIX/lnInclude -fPIC -c chemistrySolver/chemistrySolver/chemistrySolvers.C -o /home/aleix/OpenFOAM/OpenFOAM-8/platforms/linuxArm64GccDPInt32Opt/src/thermophysicalModels/chemistryModel/chemistrySolver/chemistrySolver/chemistrySolvers.o g++: fatal error: Killed signal terminated program cc1plus compilation terminated. make: *** [/home/aleix/OpenFOAM/OpenFOAM-8/wmake/rules/General/transform:26: /home/aleix/OpenFOAM/OpenFOAM-8/platforms/linuxArm64GccDPInt32Opt/src/thermophysicalModels/chemistryModel/chemistrySolver/chemistrySolver/chemistrySolvers.o] Error 1 aleix@ub-pi4:~/OpenFOAM/OpenFOAM-8$ " I have tried with ./Allwmake ./AllWmake -j ./Allwmake -j 2 ... and always the same proble at the same point. I have 8GBs Memory so that should not be a problem I guess, but now I dont know what to do .... any help more than wellcomed Thanksl |
|
You will need to increase the virtual memory limit to 13Gb to compile the latest chemistry models. |
|
thanks Henry, I did the following: sudo fallocate -l 6G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfil sudo swapon /swapfile sudo swapon --show sudo free -h ./Allwmake -j The compilation stoped two o three times, but I ran again ./Allwmake and it seems OpenFoam is now compiled. As there is no final message I dont know how to check it but I ran the pitDaily example and when I wrote paraFoam it tells me that there is no ParaView linked or installed and it tells me to run paraFoam -builtin ... I ran "sudo apt-get install paraview" and I can run ParaView 5.7 standalone but I dont know how to link it with OpenFoam so I decided to compile ThirdParty elements in order to solve it. The result is the following error: ./makeParaView [ 87%] Linking CXX static library ../../lib/libvtkPVServerManagerRenderingCS-pv5.6.a [ 87%] Built target vtkPVServerManagerRenderingCS make: *** [Makefile:152: all] Error 2 Command exited with non-zero status 2 31839.81user 6229.39system 2:43:59elapsed 386%CPU (0avgtext+0avgdata 1743840maxresident)k 23224inputs+2848968outputs (43major+184083739minor)pagefaults 0swaps aleix@ub-pi4:~/OpenFOAM/ThirdParty-8$ Do you have any idea what can I do? Thanks, |
|
@aleixandre: A complete output log would be necessary to diagnose this build issue... if you run the build command like this: ./makeParaView -no-config > log.makePV 2>&1 You will get the file "log.makePV" that has the full output. The "-no-config" option is to not have to start over from scratch and instead to continue closer to where it stopped. |
|
Hi wyldckat, I followed your instructions, please see the log.makePV Thanks additional feedback log.makePV (32,254 bytes) |
|
Looks like it's an issue with the internal PNG library that VTK is using by default... try with the following build command, which will consequently give you this log file "log.makePVb": ./makeParaView VTK_USE_SYSTEM_PNG:BOOL=ON > log.makePVb 2>&1 I found this by looking for the error message from in line 447 of your file, namely: libvtkpng-pv5.6.so.1: undefined reference to `png_init_filter_functions_neon' The answer I found was this: https://gitlab.kitware.com/vtk/vtk/-/issues/17385 |
|
Thanks Wyldckat, Here the log file Thanks for your support log.makePVb (19,208 bytes) |
|
If I'm not mistaken, you need to install "libpng-dev": sudo apt install libpng-dev Then run again the previous command for building... hopefully it will find automatically "libpng" to be installed this time around... |
|
Hello wyldckat, It seems that now everything is been compiled properly :-) Thansk a lot Now I have the following message when I run paraFoam: --- FATAL ERROR: The official reader module for OpenFOAM data does not exist on your system. This means that the version of ParaView you are using was not compiled with OpenFOAM, or distributed with a packaged version of OpenFOAM. For information on packaged versions of OpenFOAM/ParaView and compilation of OpenFOAM/ParaView, see https://openfoam.org/download Alternatively, you might be able to view your OpenFOAM data with the reader module provided with ParaView by running: paraFoam -builtin ---- If I execute paraview directly the version is 5.6.3 so it is ok, but how can I link to only execute paraFoam? I cannot upload the log as it is higher Kbs than allowed ... Thansk a lot for your indications |
|
The simplest is to run these commands: foam ./Allwmake And wait a bit. By the end it should have not given any error messages and the necessary reader module is built. |
|
Thanks wyldckat, I just did it, but no luck... See below Thanks ¡ --- aleix@ub-pi4:~/OpenFOAM/ThirdParty-8$ ./Allwmake ======================================== Start ThirdParty Allwmake ======================================== ======================================== Build MPI libraries if required ======================================== Build Scotch decomposition library scotch_6.0.9 /home/aleix/OpenFOAM/ThirdParty-8/platforms/linuxArm64GccDPInt32/scotch_6.0.9 scotch header in /home/aleix/OpenFOAM/ThirdParty-8/platforms/linuxArm64GccDPInt32/scotch_6.0.9/include scotch libs in /home/aleix/OpenFOAM/ThirdParty-8/platforms/linuxArm64GccDPInt32/lib ======================================== Build PTScotch decomposition library scotch_6.0.9 (uses MPI) /home/aleix/OpenFOAM/ThirdParty-8/platforms/linuxArm64GccDPInt32/scotch_6.0.9 ptscotch header in /home/aleix/OpenFOAM/ThirdParty-8/platforms/linuxArm64GccDPInt32/scotch_6.0.9/include/openmpi-system ptscotch libs in /home/aleix/OpenFOAM/ThirdParty-8/platforms/linuxArm64GccDPInt32/lib/openmpi-system ======================================== Build Metis decomposition optional component Metis was not found ======================================== Done ThirdParty Allwmake ======================================== aleix@ub-pi4:~/OpenFOAM/ThirdParty-8$ cd .. aleix@ub-pi4:~/OpenFOAM$ cd .. aleix@ub-pi4:~$ cd OpenFOAM/aleix-8/run/pitzDaily/ aleix@ub-pi4:~/OpenFOAM/aleix-8/run/pitzDaily$ paraFoam FATAL ERROR: The official reader module for OpenFOAM data does not exist on your system. This means that the version of ParaView you are using was not compiled with OpenFOAM, or distributed with a packaged version of OpenFOAM. For information on packaged versions of OpenFOAM/ParaView and compilation of OpenFOAM/ParaView, see https://openfoam.org/download Alternatively, you might be able to view your OpenFOAM data with the reader module provided with ParaView by running: paraFoam -builtin aleix@ub-pi4:~/OpenFOAM/aleix-8/run/pitzDaily$ |
|
???? But... didn't the "foam" command work? Then explicitly run: cd ~/OpenFOAM/OpenFOAM-8 ./Allwmake |
|
My fault ¡ i ran ./Allwmake in /ThirdParty dir, now I run it in /OpenFOAM/OpenFOAM-8 and once the process finish everything is working perfectly ¡¡ Thanks for your great support ¡¡ One last question (I hope), if I create another user, will this new user to run the program? or do I have to do something in addition? I think I should have installed the program in /Opt or /usr/local but now I dont know .... Thanks again |
|
You're free to test things for yourself, there is no additional licensing cost here ;) In principle, you can either copy or move the "~/OpenFOAM/*" subfolders to another location. All that needs to then be done is to correct the ownership and file permissions at the new location. Furthermore, if users need to recompile something, it might not work all that well... and I'm not sure how it affects the built ParaView... |
|
So conclusions from this long thread of issues: 1- The additional argument "VTK_USE_SYSTEM_PNG:BOOL=ON" is likely to be needed to build ParaView on ARM based processors, because VTK relies on its own PNG copy of libpng which might not support properly ARM. The people at VTK development line are apparently aware of this, given its occurrence in the their issue tracker, so this seems to be a workaround needed on those systems. An alternative to auto-add in "etc/tools/ParaViewFunctions" when this option is needed, is by detecting if "ParaView-*/VTK/ThirdParty/png/vtkpng/arm" doesn't exist yet and the CPU is an ARM processor... 2- 13GB of RAM + memory swap space is needed for the current chemistry stack in OpenFOAM, as Henry mentioned. @Chris: It would be nice to have the RAM/swap memory minimum requirement mentioned somewhere at one or more pages in https://openfoam.org/download/source/ |
|
One more time, thanks a lot for your great support, I hope this also may help others using ARM processors to install and use this program. :-) Thanks, Aleixandre |
|
@wyldckat Could you suggest some text for the 13 GB memory requirement? It is not clear to me whether it relates to RAM, swap, the sum of (RAM + swap). I have not followed that issue so just don't know. |
|
@Chris OK, here's what I can come up with within a couple of minutes: The latest developments in the chemistry libraries rely on fairly complex C++ templating, which demands a substantial amount of memory during compilation. It's advisable to have around 24GB of RAM+swap memory space, in order to be able to fully compile OpenFOAM. There are several ways to increase swap memory space, where the suggested search keywords are as follows: linux create swap space file |
|
@wyldckat I thought it was 13 GB? |
|
@Chris Sorry, hold on... @aleixandre Did your machine already have a swap size of 8GB on the system, so that you still needed to add 6GB extra, or did the machine not have swap? |
|
hi, the machine I used (Raspberry Pi 4B) came with 8GBs so I did manage to swap and extra 6GB (total 14GBs) I did: sudo fallocate -l 6G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfil sudo swapon /swapfile sudo swapon --show sudo free -h hope this helps Let me know if need something else |
|
@aleixandre: Many thanks! @Chris: So it is at least 13GB RAM+swap... but adding a few more GB to reach the next multiple of 4, in order to give a bit of extra space for future updates of the chemistry code... here is the revised text: The latest developments in the chemistry libraries rely on fairly complex C++ templating, which demands a substantial amount of memory during compilation. It's advisable to have around 16GB of RAM+swap memory space, in order to be able to fully compile OpenFOAM. There are several ways to increase swap memory space, where the suggested search keywords are as follows: linux create swap space file |
|
Resolved by commit 218f49416d26264af7e84df7cbebca25ad43a172: chemistryModel: Split chemistrySolvers.C, chemistryReductionMethods.C and chemistryTabulationMethods.C to reduces the memory requirement for compilation and speed-up parallel compilation. |
Date Modified | Username | Field | Change |
---|---|---|---|
2020-10-06 12:54 | aleixandre | New Issue | |
2020-10-08 09:42 | wyldckat | Note Added: 0011572 | |
2020-10-08 10:41 | aleixandre | Note Added: 0011573 | |
2020-10-08 22:01 | aleixandre | Note Added: 0011574 | |
2020-10-08 22:20 | aleixandre | Note Added: 0011575 | |
2020-10-09 08:39 | henry | Note Added: 0011576 | |
2020-10-09 09:30 | aleixandre | Note Added: 0011577 | |
2020-10-09 10:14 | chris | Note Added: 0011578 | |
2020-10-09 10:21 | aleixandre | Note Added: 0011579 | |
2020-10-09 13:28 | aleixandre | Note Added: 0011580 | |
2020-10-10 11:09 | aleixandre | Note Added: 0011581 | |
2020-10-10 14:55 | henry | Note Added: 0011582 | |
2020-10-10 14:56 | henry | Priority | high => low |
2020-10-10 14:56 | henry | Severity | block => minor |
2020-10-11 09:22 | aleixandre | Note Added: 0011583 | |
2020-10-14 13:12 | wyldckat | Note Added: 0011593 | |
2020-10-14 14:09 | aleixandre | File Added: log.makePV | |
2020-10-14 14:09 | aleixandre | Note Added: 0011596 | |
2020-10-14 15:20 | wyldckat | Note Added: 0011597 | |
2020-10-14 18:16 | aleixandre | File Added: log.makePVb | |
2020-10-14 18:16 | aleixandre | Note Added: 0011603 | |
2020-10-14 18:24 | wyldckat | Note Added: 0011604 | |
2020-10-15 14:34 | aleixandre | Note Added: 0011607 | |
2020-10-15 14:45 | wyldckat | Note Added: 0011608 | |
2020-10-15 15:05 | aleixandre | Note Added: 0011609 | |
2020-10-15 15:09 | wyldckat | Note Added: 0011610 | |
2020-10-15 15:52 | aleixandre | Note Added: 0011611 | |
2020-10-15 18:14 | wyldckat | Note Added: 0011612 | |
2020-10-15 18:36 | wyldckat | Note Added: 0011613 | |
2020-10-15 19:08 | aleixandre | Note Added: 0011614 | |
2020-10-18 15:01 | chris | Note Added: 0011629 | |
2020-10-19 11:41 | wyldckat | Note Added: 0011630 | |
2020-10-19 14:16 | chris | Note Added: 0011631 | |
2020-10-19 14:44 | wyldckat | Note Added: 0011632 | |
2020-10-19 16:50 | aleixandre | Note Added: 0011633 | |
2020-10-19 19:38 | wyldckat | Note Added: 0011634 | |
2020-10-20 14:34 | henry | Assigned To | => henry |
2020-10-20 14:34 | henry | Status | new => resolved |
2020-10-20 14:34 | henry | Resolution | open => fixed |
2020-10-20 14:34 | henry | Fixed in Version | => 8 |
2020-10-20 14:34 | henry | Note Added: 0011636 |