# How to build veloview with gdal

**URL:** https://discourse.paraview.org/t/how-to-build-veloview-with-gdal/9351
**Category:** LidarView, Lidar, and SLAM
**Created:** [April 4, 2022, 3:56pm UTC](https://discourse.paraview.org/t/how-to-build-veloview-with-gdal/9351 "2022-04-04T15:56:00Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![oskarhelfenstein](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/o/b3f665/32.png) [@oskarhelfenstein](https://discourse.paraview.org/u/oskarhelfenstein)
#### Post date: [April 4, 2022, 3:56pm UTC](https://discourse.paraview.org/t/how-to-build-veloview-with-gdal/9351/1 "2022-04-04T15:56:00Z")

</div>

hello all,  
I am trying to build Lidarview incl. GDAL, but the tag “-DPARAVIEW\_ENABLE\_GDAL=True” or “-DLIDARVIEW\_ENABLE\_GDAL=True” to build does not work. My system is a current Ubuntu 20.04.  
I am new to building from source so I would appriciate your help.  
Best regards,  
Oliver

---

<div class="post-metadata">

### Author: ![Arnaud\_Billon](https://discourse.paraview.org/user_avatar/discourse.paraview.org/arnaud_billon/32/5989_2.png) [@Arnaud\_Billon](https://discourse.paraview.org/u/Arnaud_Billon)
#### Post date: [April 4, 2022, 4:31pm UTC](https://discourse.paraview.org/t/how-to-build-veloview-with-gdal/9351/2 "2022-04-04T16:31:38Z")

</div>

Hello,

GDAL is not currently a maintained part of LidarView’s dedicated superbuild, howerver it is part of Paraview’s Superbuild (See [https://gitlab.kitware.com/paraview/paraview-superbuild](https://gitlab.kitware.com/paraview/paraview-superbuild)) and could potentially be used in the same manner.

This has not been tested, but if you wish to experiment yourself do as follow:

- Add this file [**projects/gdal.cmake**](https://gitlab.kitware.com/paraview/paraview-superbuild/-/blob/master/projects/gdal.cmake) from ParaView’s Superbuild to LidarView’s Superbuild.
- Also add the corresponding patches to the LidarView’s patches directory.
- Add gdal to LidarView Superbuild’s top CMakeLists’ project list.
- Proceed with SuperBuild with Gdal enabled: “-DENABLE\_gdal=ON”.

If you are unfamilliar with the Superbuild I recommend you study the following [pieces of code](https://gitlab.kitware.com/search?search=gdal&group_id=14&project_id=10&scope=&search_code=true&snippets=false&repository_ref=master&nav_source=navbar) or reach us out for professional support.

---

<div class="post-metadata">

### Author: ![oskarhelfenstein](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/o/b3f665/32.png) [@oskarhelfenstein](https://discourse.paraview.org/u/oskarhelfenstein)
#### Post date: [April 4, 2022, 5:52pm UTC](https://discourse.paraview.org/t/how-to-build-veloview-with-gdal/9351/3 "2022-04-04T17:52:59Z")

</div>

thank you very much for the quick reply. I’ll try it out 🙂

---

<div class="post-metadata">

### Author: ![oskarhelfenstein](https://discourse.paraview.org/letter_avatar_proxy/v4/letter/o/b3f665/32.png) [@oskarhelfenstein](https://discourse.paraview.org/u/oskarhelfenstein)
#### Post date: [April 4, 2022, 8:37pm UTC](https://discourse.paraview.org/t/how-to-build-veloview-with-gdal/9351/4 "2022-04-04T20:37:03Z")

</div>

Hi,  
I added the file, copied the patches to the src/Superbuild/lidarview-superbuild/Projects/patches folder and added the gdal dependency to the CMakeLists.txt file in the src/Superbuild/lidarview-superbuild folder. Now I get the following error:

[88/249] Performing build step for ‘gdal’  
FAILED: lidarview-superbuild/common-superbuild/gdal/stamp/gdal-build /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/stamp/gdal-build  
cd /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/build && /usr/local/bin/cmake -P /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/sb-gdal-build.cmake && /usr/local/bin/cmake -E touch /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/stamp/gdal-build  
[1/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_atomic\_ops.cpp.o  
[2/369] Building CXX object port/CMakeFiles/cpl.dir/cplgetsymbol.cpp.o  
[3/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_hash\_set.cpp.o  
[4/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_error.cpp.o  
[5/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_list.cpp.o  
[6/369] Building CXX object port/CMakeFiles/cpl.dir/cplstringlist.cpp.o  
[7/369] Building CXX object port/CMakeFiles/cpl.dir/cplstring.cpp.o  
[8/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_base64.cpp.o  
[9/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_getexecpath.cpp.o  
[10/369] Building CXX object alg/CMakeFiles/alg.dir/gdalproximity.cpp.o  
[11/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_findfile.cpp.o  
[12/369] Building CXX object port/CMakeFiles/cpl.dir/cplkeywordparser.cpp.o  
[13/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_csv.cpp.o  
[14/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_http.cpp.o  
[15/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalmajorobject.cpp.o  
[16/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_multiproc.cpp.o  
[17/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_strtod.cpp.o  
[18/369] Building CXX object alg/CMakeFiles/alg.dir/gdalmediancut.cpp.o  
[19/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_time.cpp.o  
[20/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_conv.cpp.o  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.cpp: In function ‘void\* CPLRealloc(void\*, size\_t)’:  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.cpp:208:65: warning: ‘ bytes.’ directive writing 7 bytes into a region of size between 2 and 20 [-Wformat-overflow=]  
208 | “CPLRealloc(): Out of memory allocating %ld bytes.”,  
| ^ ~~~~~~  
In file included from /usr/include/stdio.h:867,  
from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_port.h:143,  
from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.h:34,  
from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.cpp:32:  
/usr/include/x86\_64-linux-gnu/bits/stdio2.h:36:34: note: ‘\_\_builtin\_\_\_sprintf\_chk’ output between 48 and 66 bytes into a destination of size 60  
36 | return \_\_builtin\_\_\_sprintf\_chk (\_\_s, \_\_USE\_FORTIFY\_LEVEL - 1,  
| ~~^~~~~~~~  
37 | \_\_bos (\_\_s), \_\_fmt, \_\_va\_arg\_pack ());  
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.cpp: In function ‘void\* CPLMalloc(size\_t)’:  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.cpp:140:64: warning: ‘ bytes.’ directive writing 7 bytes into a region of size between 3 and 21 [-Wformat-overflow=]  
140 | “CPLMalloc(): Out of memory allocating %ld bytes.”,  
| ^ ~~~~~~  
In file included from /usr/include/stdio.h:867,  
from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_port.h:143,  
from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.h:34,  
from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port/cpl\_conv.cpp:32:  
/usr/include/x86\_64-linux-gnu/bits/stdio2.h:36:34: note: ‘\_\_builtin\_\_\_sprintf\_chk’ output between 47 and 65 bytes into a destination of size 60  
36 | return \_\_builtin\_\_\_sprintf\_chk (\_\_s, \_\_USE\_FORTIFY\_LEVEL - 1,  
| ~~^~~~~~~~  
37 | \_\_bos (\_\_s), \_\_fmt, \_\_va\_arg\_pack ());  
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  
[21/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaldriver.cpp.o  
[22/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_recode.cpp.o  
[23/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_quad\_tree.cpp.o  
[24/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaldataset.cpp.o  
[25/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_recode\_stub.cpp.o  
[26/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_path.cpp.o  
[27/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_cache.cpp.o  
[28/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_buffered\_reader.cpp.o  
[29/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_xml\_validate.cpp.o  
[30/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_curl.cpp.o  
[31/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_minixml.cpp.o  
[32/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_progress.cpp.o  
[33/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_stdin.cpp.o  
[34/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_string.cpp.o  
[35/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_stdout.cpp.o  
[36/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_spawn.cpp.o  
[37/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsisimple.cpp.o  
[38/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_minizip\_ioapi.cpp.o  
[39/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil.cpp.o  
[40/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_google\_oauth2.cpp.o  
[41/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_subfile.cpp.o  
[42/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_recode\_iconv.cpp.o  
[43/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_sparsefile.cpp.o  
[44/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_minizip\_unzip.cpp.o  
[45/369] Building CXX object gcore/CMakeFiles/gcore.dir/rasterio.cpp.o  
[46/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_abstract\_archive.cpp.o  
[47/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_tar.cpp.o  
[48/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalrasterblock.cpp.o  
[49/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_unix\_stdio\_64.cpp.o  
[50/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalallvalidmaskband.cpp.o  
[51/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalnodatamaskband.cpp.o  
[52/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsi\_mem.cpp.o  
[53/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_minizip\_zip.cpp.o  
[54/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalopeninfo.cpp.o  
[55/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalcolortable.cpp.o  
[56/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalnodatavaluesmaskband.cpp.o  
[57/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaldrivermanager.cpp.o  
[58/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalmultidomainmetadata.cpp.o  
[59/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaldllmain.cpp.o  
[60/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaldefaultasync.cpp.o  
[61/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalgmlcoverage.cpp.o  
[62/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalproxypool.cpp.o  
[63/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaldefaultoverviews.cpp.o  
[64/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalproxydataset.cpp.o  
[65/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalexif.cpp.o  
[66/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdal\_rpcimdio.cpp.o  
[67/369] Building CXX object alg/CMakeFiles/alg.dir/gdalchecksum.cpp.o  
[68/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaljp2metadata.cpp.o  
[69/369] Building CXX object port/CMakeFiles/cpl.dir/cpl\_vsil\_gzip.cpp.o  
[70/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdaljp2box.cpp.o  
[71/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalpamrasterband.cpp.o  
[72/369] Building CXX object alg/CMakeFiles/alg.dir/gdalcutline.cpp.o  
[73/369] Building CXX object alg/CMakeFiles/alg.dir/gdalrasterfpolygonenumerator.cpp.o  
[74/369] Building CXX object alg/CMakeFiles/alg.dir/gdalrasterpolygonenumerator.cpp.o  
[75/369] Building CXX object alg/CMakeFiles/alg.dir/gdaldither.cpp.o  
[76/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalrasterband.cpp.o  
[77/369] Building CXX object alg/CMakeFiles/alg.dir/contour.cpp.o  
[78/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalpamproxydb.cpp.o  
[79/369] Building CXX object alg/CMakeFiles/alg.dir/fpolygonize.cpp.o  
[80/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalpamdataset.cpp.o  
[81/369] Building CXX object alg/CMakeFiles/alg.dir/gdalsievefilter.cpp.o  
[82/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdal\_misc.cpp.o  
[83/369] Building CXX object alg/CMakeFiles/alg.dir/gdalgrid.cpp.o  
[84/369] Building CXX object alg/CMakeFiles/alg.dir/gdalgeoloc.cpp.o  
[85/369] Building CXX object alg/CMakeFiles/alg.dir/gdalsimplewarp.cpp.o  
[86/369] Building CXX object alg/CMakeFiles/alg.dir/llrasterize.cpp.o  
[87/369] Building CXX object gcore/CMakeFiles/gcore.dir/overview.cpp.o  
[88/369] Building CXX object alg/CMakeFiles/alg.dir/gdalrasterize.cpp.o  
[89/369] Building CXX object alg/CMakeFiles/alg.dir/gdal\_tps.cpp.o  
[90/369] Building C object alg/CMakeFiles/alg.dir/gdal\_crs.c.o  
[91/369] Building CXX object alg/CMakeFiles/alg.dir/gdalwarper.cpp.o  
[92/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdal\_rat.cpp.o  
[93/369] Building CXX object alg/CMakeFiles/alg.dir/thinplatespline.cpp.o  
[94/369] Building CXX object alg/CMakeFiles/alg.dir/gdal\_rpc.cpp.o  
[95/369] Building CXX object alg/CMakeFiles/alg.dir/gdalwarpoperation.cpp.o  
[96/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrct.cpp.o  
FAILED: ogr/CMakeFiles/ogr.dir/ogrct.cpp.o  
/usr/bin/c++ -DHAVE\_EXPAT -DHAVE\_GEOS=1 -DHAVE\_LIBZ -DHAVE\_PROJ -DHAVE\_ZLIB -DHAVE\_ZLIB\_H -DOGR\_ENABLED -DPROJ\_STATIC -DSTRICT -DZIP\_SUPPORT -I/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/build -I/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/port -I/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/gcore -I/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/ogr -I/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/ogr/ogrsf\_frmts -I/usr/capi -I/home/lidarstation/veloview/build2/install/include -fPIC -std=c++11 -fPIC -fno-strict-aliasing -O3 -DNDEBUG -std=gnu++11 -MD -MT ogr/CMakeFiles/ogr.dir/ogrct.cpp.o -MF ogr/CMakeFiles/ogr.dir/ogrct.cpp.o.d -o ogr/CMakeFiles/ogr.dir/ogrct.cpp.o -c /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/ogr/ogrct.cpp  
In file included from /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/ogr/ogrct.cpp:38:  
/usr/include/proj\_api.h:37:2: error: #error ‘To use the proj\_api.h you must define the macro ACCEPT\_USE\_OF\_DEPRECATED\_PROJ\_API\_H’  
37 | #error ‘To use the proj\_api.h you must define the macro ACCEPT\_USE\_OF\_DEPRECATED\_PROJ\_API\_H’  
| ^ ~~~~  
[97/369] Building CXX object alg/CMakeFiles/alg.dir/polygonize.cpp.o  
[98/369] Building CXX object ogr/CMakeFiles/ogr.dir/ograssemblepolygon.cpp.o  
[99/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrcurve.cpp.o  
[100/369] Building CXX object alg/CMakeFiles/alg.dir/gdal\_octave.cpp.o  
[101/369] Building CXX object alg/CMakeFiles/alg.dir/gdaltransformer.cpp.o  
[102/369] Building CXX object alg/CMakeFiles/alg.dir/rasterfill.cpp.o  
[103/369] Building CXX object alg/CMakeFiles/alg.dir/gdal\_simplesurf.cpp.o  
[104/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrfielddefn.cpp.o  
[105/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogr2gmlgeometry.cpp.o  
[106/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrgeomfielddefn.cpp.o  
[107/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrfeaturedefn.cpp.o  
[108/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrgeometry.cpp.o  
[109/369] Building CXX object ogr/CMakeFiles/ogr.dir/gml2ogrgeometry.cpp.o  
[110/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrfeaturestyle.cpp.o  
[111/369] Building CXX object ogr/CMakeFiles/ogr.dir/ogrfeature.cpp.o  
[112/369] Building CXX object alg/CMakeFiles/alg.dir/gdalwarpkernel.cpp.o  
[113/369] Building CXX object gcore/CMakeFiles/gcore.dir/gdalclientserver.cpp.o  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/gcore/gdalclientserver.cpp: In function ‘void MyChdirRootDirectory()’:  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/gcore/gdalclientserver.cpp:388:10: warning: ignoring return value of ‘int chdir(const char\*)’, declared with attribute warn\_unused\_result [-Wunused-result]  
388 | chdir("/");  
| ~~~^~~  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/gcore/gdalclientserver.cpp: In function ‘void MyChdir(const char\*)’:  
/home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/gdal/src/gcore/gdalclientserver.cpp:375:10: warning: ignoring return value of ‘int chdir(const char\*)’, declared with attribute warn\_unused\_result [-Wunused-result]  
375 | chdir(pszCWD);  
| ~~~^~~~~~  
ninja: build stopped: subcommand failed.  
CMake Error at /home/lidarstation/veloview/build2/lidarview-superbuild/common-superbuild/sb-gdal-build.cmake:47 (message):  
Failed with exit code 1

If I find a solution I will write it here, otherwise a big praise to the developers. The software runs really fast (using data from a HDL 64E S3).
