mgrigorov
(Martin Grigorov)
July 22, 2021, 11:19am
1
Hello,
Initially I reported this issue at 0003696: Build failure on Linux ARM64 for ThirdParty-dev - OpenFOAM Issue Tracking but I’ve been recommended to discuss it here.
I am trying to build OpenFOAM on Ubuntu 20.04.2 ARM64.
The build fails for ThirdParty-dev, master branch.
I follow the instructions at OpenFOAM Repo: 1. Software for Compilation | OpenFOAM
sudo apt-get install build-essential flex bison git-core cmake zlib1g-dev
sudo apt-get install libqt5x11extras5-dev libxt-dev qt5-default qttools5-dev curl
git clone GitHub - OpenFOAM/OpenFOAM-dev: OpenFOAM Foundation development repository
git clone GitHub - OpenFOAM/ThirdParty-dev: OpenFOAM-dev third-party library compilation scripts && cd ThirdParty-dev
source $HOME/OpenFOAM/OpenFOAM-dev/etc/bashrc
./Allwmake
./makeParaView
and here it breaks with:
…
[ 87%] Built target vtkPVServerManagerDefault
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMUtilitiesClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMViewLayoutProxyClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMViewProxyClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMViewProxyInteractorHelperClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMViewResolutionDomainClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMWidgetRepresentationProxyClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkSMParaViewPipelineControllerWithRenderingClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkPVServerManagerRenderingObjectFactoryClientServer.cxx.o
[ 87%] Building CXX object Wrapping/ClientServer/CMakeFiles/vtkPVServerManagerRenderingCS.dir/vtkPVServerManagerRenderingCSInit.cxx.o
[ 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
8921.63user 999.69system 23:58.03elapsed 689%CPU (0avgtext+0avgdata 1743496maxresident)k
118632inputs+2870128outputs (611major+185189999minor)pagefaults 0swaps
Any ideas how to solve it ?
Thank you!
ben.boeckel
(Ben Boeckel (Kitware))
July 22, 2021, 4:35pm
2
The linked OpenFOAM issue shows that it is actually an error in OpenFOAM code and nothing to do with ParaView. Parallel builds with make
usually need some scrolling to find the actual error message (make -j1
will certainly stop at the “first” error at least).
mgrigorov
(Martin Grigorov)
July 23, 2021, 7:39am
3
Hi @ben.boeckel ,
In the OpenFOAM issue only the first entry is about ParaView (in their ThirdParty-dev repo there is `makeParaView script). I have copied the last part of its output here too.
The later comments are about OpenFOAM itself. There I use -j
for Allwmake
script.
Now I modified ThirdParty-dev/ParaViewFunctions at 1ff0136d3279590bd2e1f2e408349e851b7d7e38 · OpenFOAM/ThirdParty-dev · GitHub to use make -j 1
when building ParaView and re-run it. I will copy the new error once it finishes.
Regards,
Martin
mgrigorov
(Martin Grigorov)
July 23, 2021, 11:01am
4
Here is the new error with make -j 1
:
93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqToolTipTrapper.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqTransferFunctionWidget.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqTriggerOnIdleHelper.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqVCRController.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqViewContextMenuHandler.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqViewContextMenuManager.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqViewFrame.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqViewManager.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqWidgetRangeDomain.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqAbstractItemSelectionModel.cpp.o
[ 93%] Building CXX object Qt/Components/CMakeFiles/pqComponents.dir/moc_pqExodusIIVariableSelectionWidget.cpp.o
[ 93%] Linking CXX shared library …/…/lib/libvtkpqComponents-pv5.6.so
[ 93%] Built target pqComponents
Scanning dependencies of target vtkLegacyColorMapXMLToJSON
[ 93%] Building CXX object Utilities/LegacyColorMapXMLToJSON/CMakeFiles/vtkLegacyColorMapXMLToJSON.dir/vtkLegacyColorMapXMLToJSON.cxx.o
[ 93%] Linking CXX executable …/…/bin/vtkLegacyColorMapXMLToJSON
/usr/bin/ld: /home/ubuntu/git/2021.H2/openfoam/ThirdParty-dev/build/linuxArm64Gcc/ParaView-5.6.3/lib/libvtkpng-pv5.6.so.1: undefined reference to `png_init_filter_functions_neon’
collect2: error: ld returned 1 exit status
make[2]: *** [Utilities/LegacyColorMapXMLToJSON/CMakeFiles/vtkLegacyColorMapXMLToJSON.dir/build.make:169: bin/vtkLegacyColorMapXMLToJSON] Error 1
make[1]: *** [CMakeFiles/Makefile2:16861: Utilities/LegacyColorMapXMLToJSON/CMakeFiles/vtkLegacyColorMapXMLToJSON.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
Command exited with non-zero status 2
9276.50user 1241.63system 2:56:00elapsed 99%CPU (0avgtext+0avgdata 1743524maxresident)k
220504inputs+3093952outputs (532major+210340082minor)pagefaults 0swaps
mgrigorov
(Martin Grigorov)
July 23, 2021, 11:03am
5
OpenFOAM uses ParaView 5.6.3, so this issue might have been already fixed!
ben.boeckel
(Ben Boeckel (Kitware))
July 23, 2021, 4:38pm
6
Yes, that was fixed at some point already . The fix is to go and dig into png
's headers and just mask out that NEON is supported at all by hacking up the processor detection routines.