Bug 2227391
| Summary: | libqhullcpp.a needs to be compiled with -fPIC | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 9 | Reporter: | Orion Poplawski <orion> |
| Component: | qhull | Assignee: | Matej Mužila <mmuzila> |
| Status: | NEW --- | QA Contact: | RHEL CS Apps Subsystem QE <rhel-cs-apps-subsystem-qe> |
| Severity: | medium | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 9.2 | CC: | nforro |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | --- | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | Type: | Bug | |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
This is fixed in Fedora: * Sun Oct 02 2022 Orion Poplawski <orion> - 1:7.2.1-11 - Compile libqhullcpp with -fPIC |
Description of problem: When trying to build gdl for EPEL9, I'm getting the following compile error: cd /builddir/build/BUILD/gdl-1.0.2/build-python/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/gdl.dir/link.txt --verbose=1 /usr/bin/g++ -fPIC -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fcommon -fopenmp -DNDEBUG -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -shared -o GDL.so CMakeFiles/gdl.dir/CFMTLexer.cpp.o CMakeFiles/gdl.dir/FMTIn.cpp.o CMakeFiles/gdl.dir/FMTLexer.cpp.o CMakeFiles/gdl.dir/FMTOut.cpp.o CMakeFiles/gdl.dir/FMTParser.cpp.o CMakeFiles/gdl.dir/GDLInterpreter.cpp.o CMakeFiles/gdl.dir/GDLLexer.cpp.o CMakeFiles/gdl.dir/GDLParser.cpp.o CMakeFiles/gdl.dir/GDLTreeParser.cpp.o CMakeFiles/gdl.dir/datatypes.cpp.o CMakeFiles/gdl.dir/convol.cpp.o CMakeFiles/gdl.dir/convol2.cpp.o CMakeFiles/gdl.dir/smooth.cpp.o CMakeFiles/gdl.dir/basic_op.cpp.o CMakeFiles/gdl.dir/basic_op_new.cpp.o CMakeFiles/gdl.dir/getas.cpp.o CMakeFiles/gdl.dir/basic_op_add.cpp.o CMakeFiles/gdl.dir/basic_op_sub.cpp.o CMakeFiles/gdl.dir/basic_op_mult.cpp.o CMakeFiles/gdl.dir/basic_op_div.cpp.o CMakeFiles/gdl.dir/default_io.cpp.o CMakeFiles/gdl.dir/ifmt.cpp.o CMakeFiles/gdl.dir/ofmt.cpp.o CMakeFiles/gdl.dir/datatypes_minmax.cpp.o CMakeFiles/gdl.dir/allix.cpp.o CMakeFiles/gdl.dir/arrayindex.cpp.o CMakeFiles/gdl.dir/assocdata.cpp.o CMakeFiles/gdl.dir/basegdl.cpp.o CMakeFiles/gdl.dir/basic_fun.cpp.o CMakeFiles/gdl.dir/basic_fun_cl.cpp.o CMakeFiles/gdl.dir/basic_fun_jmg.cpp.o CMakeFiles/gdl.dir/calendar.cpp.o CMakeFiles/gdl.dir/color.cpp.o CMakeFiles/gdl.dir/convert2.cpp.o CMakeFiles/gdl.dir/dcommon.cpp.o CMakeFiles/gdl.dir/dcompiler.cpp.o CMakeFiles/gdl.dir/dialog.cpp.o CMakeFiles/gdl.dir/dinterpreter.cpp.o CMakeFiles/gdl.dir/dnode.cpp.o CMakeFiles/gdl.dir/dpro.cpp.o CMakeFiles/gdl.dir/dSFMT/dSFMT.c.o CMakeFiles/gdl.dir/dstructdesc.cpp.o CMakeFiles/gdl.dir/dstructfactory.cxx.o CMakeFiles/gdl.dir/dstructgdl.cpp.o CMakeFiles/gdl.dir/dvar.cpp.o CMakeFiles/gdl.dir/envt.cpp.o CMakeFiles/gdl.dir/extrat.cpp.o CMakeFiles/gdl.dir/exists_fun.cpp.o CMakeFiles/gdl.dir/fftw.cpp.o CMakeFiles/gdl.dir/file.cpp.o CMakeFiles/gdl.dir/fmtnode.cpp.o CMakeFiles/gdl.dir/gdlarray.cpp.o CMakeFiles/gdl.dir/gdleventhandler.cpp.o CMakeFiles/gdl.dir/gdlexception.cpp.o CMakeFiles/gdl.dir/gdlgstream.cpp.o CMakeFiles/gdl.dir/gdlxstream.cpp.o CMakeFiles/gdl.dir/gdljournal.cpp.o CMakeFiles/gdl.dir/gdlhelp.cpp.o CMakeFiles/gdl.dir/gdlpsstream.cpp.o CMakeFiles/gdl.dir/gdlsvgstream.cpp.o CMakeFiles/gdl.dir/gdlwidget.cpp.o CMakeFiles/gdl.dir/gdlwidgeteventhandler.cpp.o CMakeFiles/gdl.dir/gdlwxstream.cpp.o CMakeFiles/gdl.dir/gdlzstream.cpp.o CMakeFiles/gdl.dir/getfmtast.cpp.o CMakeFiles/gdl.dir/graphicsdevice.cpp.o CMakeFiles/gdl.dir/basic_pro.cpp.o CMakeFiles/gdl.dir/basic_pro_jmg.cpp.o CMakeFiles/gdl.dir/brent.cpp.o CMakeFiles/gdl.dir/grib.cpp.o CMakeFiles/gdl.dir/gsl_fun.cpp.o CMakeFiles/gdl.dir/gsl_matrix.cpp.o CMakeFiles/gdl.dir/hash.cpp.o CMakeFiles/gdl.dir/hdf5_fun.cpp.o CMakeFiles/gdl.dir/hdf_fun.cpp.o CMakeFiles/gdl.dir/hdf_pro.cpp.o CMakeFiles/gdl.dir/histogram.cpp.o CMakeFiles/gdl.dir/image.cpp.o CMakeFiles/gdl.dir/initct.cpp.o CMakeFiles/gdl.dir/initsysvar.cpp.o CMakeFiles/gdl.dir/interpolate.cpp.o CMakeFiles/gdl.dir/interpol.cpp.o CMakeFiles/gdl.dir/io.cpp.o CMakeFiles/gdl.dir/labelregion.cpp.o CMakeFiles/gdl.dir/lapack.cpp.o CMakeFiles/gdl.dir/least_squares.cpp.o CMakeFiles/gdl.dir/libinit.cpp.o CMakeFiles/gdl.dir/libinit_ac.cpp.o CMakeFiles/gdl.dir/libinit_cl.cpp.o CMakeFiles/gdl.dir/libinit_gm.cpp.o CMakeFiles/gdl.dir/libinit_jmg.cpp.o CMakeFiles/gdl.dir/libinit_mes.cpp.o CMakeFiles/gdl.dir/libinit_ng.cpp.o CMakeFiles/gdl.dir/libinit_jp.cpp.o CMakeFiles/gdl.dir/libinit_exists.cpp.o CMakeFiles/gdl.dir/linearprogramming.cpp.o CMakeFiles/gdl.dir/list.cpp.o CMakeFiles/gdl.dir/magick_cl.cpp.o CMakeFiles/gdl.dir/math_fun.cpp.o CMakeFiles/gdl.dir/math_fun_ac.cpp.o CMakeFiles/gdl.dir/math_fun_gm.cpp.o CMakeFiles/gdl.dir/math_fun_jmg.cpp.o CMakeFiles/gdl.dir/math_fun_ng.cpp.o CMakeFiles/gdl.dir/math_utl.cpp.o CMakeFiles/gdl.dir/matrix_cholesky.cpp.o CMakeFiles/gdl.dir/matrix_invert.cpp.o CMakeFiles/gdl.dir/mpi.cpp.o CMakeFiles/gdl.dir/ncdf_att_cl.cpp.o CMakeFiles/gdl.dir/ncdf_cl.cpp.o CMakeFiles/gdl.dir/ncdf_dim_cl.cpp.o CMakeFiles/gdl.dir/ncdf_var_cl.cpp.o CMakeFiles/gdl.dir/ncdf4_group.cpp.o CMakeFiles/gdl.dir/newprognode.cpp.o CMakeFiles/gdl.dir/nullgdl.cpp.o CMakeFiles/gdl.dir/objects.cpp.o CMakeFiles/gdl.dir/overload.cpp.o CMakeFiles/gdl.dir/plotting_axis.cpp.o CMakeFiles/gdl.dir/plotting_contour.cpp.o CMakeFiles/gdl.dir/plotting_convert_coord.cpp.o CMakeFiles/gdl.dir/plotting_cursor.cpp.o CMakeFiles/gdl.dir/plotting_device.cpp.o CMakeFiles/gdl.dir/plotting_erase.cpp.o CMakeFiles/gdl.dir/plotting_image.cpp.o CMakeFiles/gdl.dir/plotting_misc.cpp.o CMakeFiles/gdl.dir/plotting_oplot.cpp.o CMakeFiles/gdl.dir/plotting_plot.cpp.o CMakeFiles/gdl.dir/plotting_plots.cpp.o CMakeFiles/gdl.dir/plotting_polyfill.cpp.o CMakeFiles/gdl.dir/plotting_shade_surf.cpp.o CMakeFiles/gdl.dir/plotting_surface.cpp.o CMakeFiles/gdl.dir/plotting_windows.cpp.o CMakeFiles/gdl.dir/plotting_xyouts.cpp.o CMakeFiles/gdl.dir/plotting.cpp.o CMakeFiles/gdl.dir/print.cpp.o CMakeFiles/gdl.dir/print_tree.cpp.o CMakeFiles/gdl.dir/prognode.cpp.o CMakeFiles/gdl.dir/prognode_lexpr.cpp.o CMakeFiles/gdl.dir/prognodeexpr.cpp.o CMakeFiles/gdl.dir/projections.cpp.o CMakeFiles/gdl.dir/randomgenerators.cpp.o CMakeFiles/gdl.dir/read.cpp.o CMakeFiles/gdl.dir/saverestore.cpp.o CMakeFiles/gdl.dir/semshm.cpp.o CMakeFiles/gdl.dir/sigfpehandler.cpp.o CMakeFiles/gdl.dir/sorting.cpp.o CMakeFiles/gdl.dir/str.cpp.o CMakeFiles/gdl.dir/terminfo.cpp.o CMakeFiles/gdl.dir/tiff.cxx.o CMakeFiles/gdl.dir/triangulation.cpp.o CMakeFiles/gdl.dir/typetraits.cpp.o CMakeFiles/gdl.dir/where.cpp.o CMakeFiles/gdl.dir/widget.cpp.o CMakeFiles/gdl.dir/Shapefiles.cpp.o CMakeFiles/gdl.dir/sax.cpp.o CMakeFiles/gdl.dir/qhull.cpp.o -lantlr -ldl -lncurses -lform -lreadline -lhistory -lz -lgsl -lgslcblas -ltirpc -lplplot -lplplotcxx -lpng -lz -fopenmp -pthread -lwx_baseu-3.2 -lwx_gtk3u_core-3.2 -lGraphicsMagick -lGraphicsMagick++ -ltiff -lgeotiff -lnetcdf -lmfhdf -ldf -lz -ljpeg -lhdf5 -lfftw3 -lfftw3f -lproj -lpython3.9 -ludunits2 -leccodes -Wl,-Bstatic -lqhullcpp -Wl,-Bdynamic -lqhull_r -lglpk -lshp -lexpat -lgsl -lgslcblas -ltirpc -lplplot -lplplotcxx -lpng -lwx_baseu-3.2 -lwx_gtk3u_core-3.2 -lGraphicsMagick -lGraphicsMagick++ -ltiff -lgeotiff -lnetcdf -lmfhdf -ldf -lz -ljpeg -lhdf5 -lfftw3 -lfftw3f -lproj -lpython3.9 -ludunits2 -leccodes -Wl,-Bstatic -lqhullcpp -Wl,-Bdynamic -lqhull_r -lglpk -lshp -lexpat /builddir/build/BUILD/gdl-1.0.2/src/minmax_include.cpp:353: warning: type 'struct .omp_data_s.435' violates the C++ One Definition Rule [-Wodr] 353 | #pragma omp parallel num_threads(GDL_NTHREADS) | /builddir/build/BUILD/gdl-1.0.2/src/where_inc.cpp:203: note: a different type is defined in another translation unit 203 | #pragma omp parallel num_threads(nchunk) //shared(partialCount,part) //if (nEl >= CpuTPOOL_MIN_ELTS && (CpuTPOOL_MAX_ELTS == 0 || CpuTPOOL_MAX_ELTS >= nEl)) | /builddir/build/BUILD/gdl-1.0.2/src/datatypes_minmax.cpp:77: note: the first difference of corresponding definitions is field 'start' 77 | SizeT start, SizeT stop, SizeT step, DLong valIx, bool useAbs) { | /builddir/build/BUILD/gdl-1.0.2/src/where_inc.cpp:174: note: a field with different name is defined in another translation unit 174 | void Data_<Sp>::Where(DLong* &ret, SizeT &passed_count, bool comp, DLong* &comp_ret) { | /builddir/build/BUILD/gdl-1.0.2/src/minmax_include.cpp:257: warning: type 'struct .omp_data_s.532' violates the C++ One Definition Rule [-Wodr] 257 | #pragma omp parallel num_threads(GDL_NTHREADS) | /builddir/build/BUILD/gdl-1.0.2/src/where_inc.cpp:47: note: a different type is defined in another translation unit 47 | #pragma omp parallel num_threads(nchunk) //shared(partialCount,part) //if (nEl >= CpuTPOOL_MIN_ELTS && (CpuTPOOL_MAX_ELTS == 0 || CpuTPOOL_MAX_ELTS >= nEl)) | /builddir/build/BUILD/gdl-1.0.2/src/datatypes_minmax.cpp:85: note: the first difference of corresponding definitions is field 'start' 85 | SizeT start, SizeT stop, SizeT step, DLong valIx, bool useAbs) { | /builddir/build/BUILD/gdl-1.0.2/src/where_inc.cpp:18: note: a field with different name is defined in another translation unit 18 | void Data_<Sp>::Where(DLong64* &ret, SizeT &passed_count, bool comp, DLong64* &comp_ret) { | /builddir/build/BUILD/gdl-1.0.2/src/minmax_include.cpp:353: warning: type 'struct .omp_data_s.533' violates the C++ One Definition Rule [-Wodr] 353 | #pragma omp parallel num_threads(GDL_NTHREADS) | /builddir/build/BUILD/gdl-1.0.2/src/where_inc.cpp:126: note: a different type is defined in another translation unit 126 | #pragma omp parallel num_threads(nchunk) //shared(partialCount,part) //if (nEl >= CpuTPOOL_MIN_ELTS && (CpuTPOOL_MAX_ELTS == 0 || CpuTPOOL_MAX_ELTS >= nEl)) | /builddir/build/BUILD/gdl-1.0.2/src/datatypes_minmax.cpp:85: note: the first difference of corresponding definitions is field 'start' 85 | SizeT start, SizeT stop, SizeT step, DLong valIx, bool useAbs) { | /builddir/build/BUILD/gdl-1.0.2/src/where_inc.cpp:18: note: a field with different name is defined in another translation unit 18 | void Data_<Sp>::Where(DLong64* &ret, SizeT &passed_count, bool comp, DLong64* &comp_ret) { | /builddir/build/BUILD/gdl-1.0.2/src/libinit.cpp: In function 'LibInit': /builddir/build/BUILD/gdl-1.0.2/src/libinit.cpp:74: note: variable tracking size limit exceeded with '-fvar-tracking-assignments', retrying without 74 | void LibInit() | /usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/11/../../../../lib64/libqhullcpp.a(QhullVertexSet.cpp.o): warning: relocation against `_ZTIN8orgQhull10QhullErrorE' in read-only section `.text.unlikely[.text.unlikely.group]' /usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/11/../../../../lib64/libqhullcpp.a(PointCoordinates.cpp.o): relocation R_X86_64_PC32 against symbol `_ZNKSt5ctypeIcE8do_widenEc' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: bad value collect2: error: ld returned 1 exit status Version-Release number of selected component (if applicable): 1:7.2.1-9.el9