Opened 8 years ago
Closed 8 years ago
#6769 closed defect (fixed)
configure option ' --with-ld-shared' causes calling of 'yes' looping indefinitely.
Reported by: | dreieck | Owned by: | warmerdam |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | default | Version: | 2.1.1 |
Severity: | normal | Keywords: | build, compilation, ld-shared |
Cc: |
Description (last modified by )
When I compile gdal 2.1.1 on my arch linux system (64 bit) and I have the option --with-ld-shared
passed to configure
, at some point the process yes
runs for indefinite time and consumes all available CPU power. Compilation does not continue, stdout
outputs the same message over and over.
Looking at the output of the compilation, at some point the command
yes /var/abs/local/own/gdal-custom/src/gdal-2.1.1/frmts/o/*.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/gcore/*.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/port/*.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/alg/*.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/commonutils.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdalinfo_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdal_translate_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdalwarp_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/ogr2ogr_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdaldem_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/nearblack_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdal_grid_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdal_rasterize_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/apps/gdalbuildvrt_lib.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/ogr/ogrsf_frmts/o/*.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/gnm/*.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/gnm/gnm_frmts/o/*.o ./ogr/ogrgeometryfactory.o ./ogr/ogrpoint.o ./ogr/ogrcurve.o ./ogr/ogrlinestring.o ./ogr/ogrlinearring.o ./ogr/ogrpolygon.o ./ogr/ogrutils.o ./ogr/ogrgeometry.o ./ogr/ogrgeometrycollection.o ./ogr/ogrmultipolygon.o ./ogr/ogrsurface.o ./ogr/ogrmultipoint.o ./ogr/ogrmultilinestring.o ./ogr/ogrcircularstring.o ./ogr/ogrcompoundcurve.o ./ogr/ogrcurvepolygon.o ./ogr/ogrcurvecollection.o ./ogr/ogrmulticurve.o ./ogr/ogrmultisurface.o ./ogr/ogr_api.o ./ogr/ogrfeature.o ./ogr/ogrfeaturedefn.o ./ogr/ogrfeaturequery.o ./ogr/ogrfeaturestyle.o ./ogr/ogrfielddefn.o ./ogr/ogrspatialreference.o ./ogr/ogr_srsnode.o ./ogr/ogr_srs_proj4.o ./ogr/ogr_fromepsg.o ./ogr/ogrct.o ./ogr/ogr_opt.o ./ogr/ogr_srs_esri.o ./ogr/ogr_srs_pci.o ./ogr/ogr_srs_usgs.o ./ogr/ogr_srs_dict.o ./ogr/ogr_srs_panorama.o ./ogr/ogr_srs_ozi.o ./ogr/ogr_srs_erm.o ./ogr/swq.o ./ogr/swq_expr_node.o ./ogr/swq_parser.o ./ogr/swq_select.o ./ogr/swq_op_registrar.o ./ogr/swq_op_general.o ./ogr/ogr_srs_validate.o ./ogr/ogr_srs_xml.o ./ogr/ograssemblepolygon.o ./ogr/ogr2gmlgeometry.o ./ogr/gml2ogrgeometry.o ./ogr/ogr_expat.o ./ogr/ogrpgeogeometry.o ./ogr/ogrgeomediageometry.o ./ogr/ogr_geocoding.o ./ogr/osr_cs_wkt.o ./ogr/osr_cs_wkt_parser.o ./ogr/ogrgeomfielddefn.o ./ogr/ograpispy.o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/libgdal.a -Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu -Wl,--as-needed -lcryptopp -larmadillo -lpodofo -lpoppler -lfreexl -L/usr/lib -lgeos_c -lwebp -lsqlite3 -lodbc -lodbcinst -lkmldom -lkmlbase -lkmlengine -lkmlconvenience -lminizip -luriparser -lexpat -lxerces-c -lpthread -L/usr/lib -lopenjp2 -lnetcdf -lhdf5 -lmfhdf -ldf -L/usr/include -L/usr/include/lib -lgif -lpng -lcfitsio -L/opt/grass/lib -lgrass_vector -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase -lgrass_raster -lgrass_imagery -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime -L/usr/lib -lpq -llzma -lz -lpthread -lm -lrt -ldl -lpcre -lcurl -L/usr/lib -lNCSEcw -lNCSEcwC -lNCSCnet -lNCSUtil -lxml2 -lz -llzma -lm -ldl -L/usr/lib -lmysqlclient -lpthread -lz -lm -ldl -lssl -lcrypto -L/usr/lib -lkea -L/usr/lib -lhdf5 -lhdf5_hl -lhdf5_cpp \ -o /var/abs/local/own/gdal-custom/src/gdal-2.1.1/libgdal.so
is issued where the compilation hang and looping output of yes
seems to occur.
While yes
loops, a look in a tree-like rendered ps
-output looks like (output of ps -e --cumulative --forest --headers --lines 60 k +comm -o "pid=----PID,size,%mem,%cpu,args=COMMAND----"
):
----PID SIZE %MEM %CPU COMMAND---- [...] 5438 2132 0.0 7.1 \_ /bin/bash -l 8356 540 0.0 0.2 | \_ /bin/sh ./build.sh 8358 2932 0.0 15.3 | \_ /usr/bin/bash /sbin/makepkg -f 3205 1372 0.0 7.3 | \_ make 5068 14352 0.2 1.9 | \_ make /var/abs/local/own/gdal-custom/src/gdal-2.1.1/libgdal.a /var/abs/local/own/gdal-custom/src/gdal-2.1.1/libgdal.so 5073 424 0.0 87.0 | \_ yes [...]
I use the following commands to build gdal (taken from the official Arch Linux PKGBUILD, and modified):
export CFLAGS="$CFLAGS -fno-strict-aliasing" # bug #23654 export LDFLAGS="$LDFLAGS -Wl,--as-needed" ./configure --enable-shared --disable-static --with-pic --with-gnu-ld --without-libtool --prefix=/usr \ --with-ld-shared \ --with-rename-internal-libtiff-symbols=yes --with-rename-internal-libgeotiff-symbols=yes \ --with-netcdf=/usr --with-libtiff=internal --with-sqlite3 --with-geotiff \ --with-mysql --with-python --with-curl=/usr/bin/curl-config --with-hdf5 --with-perl --with-geos \ --with-png --with-poppler --with-spatialite=dlopen --with-spatialite-soname=/usr/lib/libspatialite.so --with-openjpeg=/usr \ --with-libz --with-liblzma --with-pg=/usr/bin/pg_config --with-grass=/opt/grass --with-cfitsio --with-pcraster=internal --with-pcidsk=internal --with-jpeg=internal --with-gif=/usr/include --with-kea=/usr/bin/kea-config --with-jasper=no --without-fgdb --with-ecw=/usr --with-bsb --with-grib --with-gnm --with-mysql --with-expat=/usr --with-libkml --with-odbc --with-xml2=/usr/bin/xml2-config --with-webp --with-qhull=internal --with-freexl --with-libjson-c=internal --with-pam --with-podofo --without-php --with-java=/usr/lib/jvm/java-8-openjdk --with-jvm-lib-add-rpath=yes --with-armadillo --with-cryptopp # workaround for bug #13646 sed -i 's/PY_HAVE_SETUPTOOLS=1/PY_HAVE_SETUPTOOLS=/g' ./GDALmake.opt sed -i 's/EXE_DEP_LIBS/KILL_EXE_DEP_LIBS/' apps/GNUmakefile make make man
I attach the following additional information as files:
- The complete PKGBUILD to build the package in the way the error occurs,
- the log of
stdout
andstderr
(combined) when configuring and building the package that way, - the log of
stdout
andstderr
(combined) when configuring and succesfully building the package without--with-ld-shared
.
Attachments (3)
Change History (8)
by , 8 years ago
Attachment: | PKGBUILD.with-ld-shared added |
---|
by , 8 years ago
Attachment: | makepkg.with-ld-shared.log.xz added |
---|
Compile log (stdout and stderr) with '--with-ld-shared'.
by , 8 years ago
Attachment: | makepkg.not-with-ld-shared.log.xz added |
---|
Compile log (stdout and stderr) without '--with-ld-shared'.
comment:1 by , 8 years ago
Description: | modified (diff) |
---|
comment:2 by , 8 years ago
Description: | modified (diff) |
---|
comment:3 by , 8 years ago
Description: | modified (diff) |
---|
comment:4 by , 8 years ago
As far as I understand m4/acinclude.m4, --with-ld-shared is not supported. Only --with-ld-shared=/path/to/binary or --without-ld-shared are.
PKGBUILD with --with-ld-shared.