RJVB / lnxports

A "local port repository" for use with MacPorts on Linux, overriding ports from the main repository.
4 stars 1 forks source link

libgcc13 build failure: `error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory` #25

Open barracuda156 opened 2 months ago

barracuda156 commented 2 months ago

Looks like no more libiconv failure, but now the build does not find isl all of a sudden:

/bin/sh /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/../move-if-change tmp-fixinc_list fixinc_list
echo timestamp > s-fixinc_list
/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./prev-gcc/xg++ -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./prev-gcc/ -B/opt/local/riscv64-unknown-linux-gnu/bin/ -nostdinc++ -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/src/.libs -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs  -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/include/riscv64-unknown-linux-gnu  -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/include  -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libstdc++-v3/libsupc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs -no-pie   -Os -DIN_GCC -fPIC    -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Wconditionally-supported -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc  -o cc1 c/c-lang.o c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-fold.o c/gimple-parser.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-ubsan.o c-family/known-headers.o c-family/c-attribs.o c-family/c-warn.o c-family/c-spellcheck.o glibc-c.o \
  cc1-checksum.o libbackend.a main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a   ../libbacktrace/.libs/libbacktrace.a ../libiberty/pic/libiberty.a ../libdecnumber/libdecnumber.a  -L/opt/local/lib -lisl -L/opt/local/lib -L/opt/local/lib -L/opt/local/lib -lmpc -lmpfr -lgmp -rdynamic  -lz -L/opt/local/lib -lzstd 
/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./prev-gcc/xg++ -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./prev-gcc/ -B/opt/local/riscv64-unknown-linux-gnu/bin/ -nostdinc++ -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/src/.libs -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs  -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/include/riscv64-unknown-linux-gnu  -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/include  -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libstdc++-v3/libsupc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-riscv64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs -no-pie   -Os -DIN_GCC -fPIC    -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Wconditionally-supported -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc  -o cc1plus \
      cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/class.o cp/constexpr.o cp/constraint.o cp/coroutines.o cp/cp-gimplify.o cp/cp-objcp-common.o cp/cp-ubsan.o cp/cvt.o cp/contracts.o cp/cxx-pretty-print.o cp/decl.o cp/decl2.o cp/dump.o cp/error.o cp/except.o cp/expr.o cp/friend.o cp/init.o cp/lambda.o cp/lex.o cp/logic.o cp/mangle.o cp/mapper-client.o cp/mapper-resolver.o cp/method.o cp/module.o cp/name-lookup.o cp/optimize.o cp/parser.o cp/pt.o cp/ptree.o cp/rtti.o cp/search.o cp/semantics.o cp/tree.o cp/typeck.o cp/typeck2.o cp/vtable-class-hierarchy.o attribs.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-ubsan.o c-family/known-headers.o c-family/c-attribs.o c-family/c-warn.o c-family/c-spellcheck.o glibc-c.o cc1plus-checksum.o libbackend.a main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a ../libcody/libcody.a  \
        libcommon.a ../libcpp/libcpp.a   ../libbacktrace/.libs/libbacktrace.a ../libiberty/pic/libiberty.a ../libdecnumber/libdecnumber.a  -L/opt/local/lib -lisl -L/opt/local/lib -L/opt/local/lib -L/opt/local/lib -lmpc -lmpfr -lgmp -rdynamic  -lz -L/opt/local/lib -lzstd 
echo | /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/ -fno-checking -E -dM - | \
  sed -n -e 's/^#define \([^_][a-zA-Z0-9_]*\).*/\1/p' \
         -e 's/^#define \(_[^_A-Z][a-zA-Z0-9_]*\).*/\1/p' | \
  sort -u > tmp-macro_list
/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/cc1: error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory
/bin/sh /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/../move-if-change tmp-macro_list macro_list
echo timestamp > s-macro_list
rm -rf include-fixed; mkdir include-fixed
chmod a+rx include-fixed
if [ -d ../prev-gcc ]; then \
  cd ../prev-gcc && \
  /opt/local/bin/gmake real-install-headers-tar DESTDIR=`pwd`/../gcc/ \
    libsubdir=. ; \
else \
  set -e; for ml in `cat fixinc_list`; do \
    sysroot_headers_suffix=`echo ${ml} | sed -e 's/;.*$//'`; \
    multi_dir=`echo ${ml} | sed -e 's/^[^;]*;//'`; \
    fix_dir=include-fixed${multi_dir}; \
    if ! false && test ! -d `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`; then \
      echo The directory that should contain system headers does not exist: >&2 ; \
      echo "  `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`" >&2 ; \
      tooldir_sysinc=`echo "/opt/local/lib/libgcc/gcc/riscv64-unknown-linux-gnu/13.2.0/../../../../../riscv64-unknown-linux-gnu/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \
      if test "x`echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`" = "x${tooldir_sysinc}"; \
      then sleep 1; else exit 1; fi; \
    fi; \
    /bin/sh /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/../mkinstalldirs ${fix_dir}; \
    chmod a+rx ${fix_dir} || true; \
    (TARGET_MACHINE='riscv64-unknown-linux-gnu'; srcdir=`cd /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc; ${PWDCMD-pwd}`; \
      SHELL='/bin/sh'; MACRO_LIST=`${PWDCMD-pwd}`/macro_list ; \
      gcc_dir=`${PWDCMD-pwd}` ; \
      export TARGET_MACHINE srcdir SHELL MACRO_LIST && \
      cd ../build-riscv64-unknown-linux-gnu/fixincludes && \
      /bin/sh ./fixinc.sh "${gcc_dir}/${fix_dir}" \
        `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`  ); \
  done; \
fi
gmake[4]: Entering directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-gcc'
(cd `${PWDCMD-pwd}`/include-fixed ; \
 tar -cf - .; exit 0) | (cd /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-gcc/../gcc/./include-fixed; tar xpf - )
gmake[4]: Leaving directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/prev-gcc'
echo timestamp > stmp-fixinc
if [ -d include ] ; then true; else mkdir include; chmod a+rx include; fi
if [ -d include-fixed ] ; then true; else mkdir include-fixed; chmod a+rx include-fixed; fi
for file in .. /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/float.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/iso646.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdarg.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdbool.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stddef.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/varargs.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdfix.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdnoreturn.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdalign.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdatomic.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/config/riscv/riscv_vector.h; do \
  if [ X$file != X.. ]; then \
    realfile=`echo $file | sed -e 's|.*/\([^/]*\)$|\1|'`; \
    echo timestamp > include/$realfile; \
    rm -f include/$realfile; \
    cp $file include; \
    chmod a+r include/$realfile; \
  fi; \
done
for file in .. ; do \
  if [ X$file != X.. ]; then \
            mv include/$file include/x_$file; \
            echo "#include_next <$file>" >include/$file; \
            cat include/x_$file >>include/$file; \
            rm -f include/x_$file; \
    chmod a+r include/$file; \
  fi; \
done
for file in .. ; do \
  if [ X$file != X.. ]; then \
    echo "#include_next <$file>" >>include/$file; \
    chmod a+r include/$file; \
  fi; \
done
rm -f include/stdint.h
if [ wrap = wrap ]; then \
  rm -f include/stdint-gcc.h; \
  cp /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdint-gcc.h include/stdint-gcc.h; \
  chmod a+r include/stdint-gcc.h; \
  cp /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdint-wrap.h include/stdint.h; \
  chmod a+r include/stdint.h; \
elif [ wrap = provide ]; then \
  cp /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/ginclude/stdint-gcc.h include/stdint.h; \
  chmod a+r include/stdint.h; \
fi
set -e; for ml in `cat fixinc_list`; do \
  sysroot_headers_suffix=`echo ${ml} | sed -e 's/;.*$//'`; \
  multi_dir=`echo ${ml} | sed -e 's/^[^;]*;//'`; \
  include_dir=include${multi_dir}; \
  if [ -f `echo /usr/include | sed -e :a -e 's,[^/]*/\.\.\/,,' -e ta`/limits.h ] ; then \
    cat /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/limitx.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/glimits.h /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/limity.h > tmp-xlimits.h; \
  else \
    cat /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/glimits.h > tmp-xlimits.h; \
  fi; \
  /bin/sh /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/../mkinstalldirs ${include_dir}; \
  chmod a+rx ${include_dir} || true; \
  /bin/sh /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/../move-if-change \
    tmp-xlimits.h  tmp-limits.h; \
  rm -f ${include_dir}/limits.h; \
  cp -p tmp-limits.h ${include_dir}/limits.h; \
  chmod a+r ${include_dir}/limits.h; \
  cp /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/gsyslimits.h ${include_dir}/syslimits.h; \
done
if [ xstmp-fixinc != x ]; then \
  rm -f include-fixed/README; \
  cp /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/../fixincludes/README-fixinc include-fixed/README; \
  chmod a+r include-fixed/README; \
fi;
echo timestamp > stmp-int-hdrs
/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/ -fno-checking -xc -nostdinc /dev/null -S -o /dev/null -fself-test=/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/testsuite/selftests
/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/cc1: error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory
gmake[3]: *** [/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/gcc/c/Make-lang.in:128: s-selftest-c] Error 1
gmake[3]: *** Waiting for unfinished jobs....
rm gcc.pod gfortran.pod
gmake[3]: Leaving directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/gcc'
gmake[2]: *** [Makefile:5011: all-stage2-gcc] Error 2
gmake[2]: Leaving directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build'
gmake[1]: *** [Makefile:25730: stage2-bubble] Error 2
gmake[1]: Leaving directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build'
gmake: *** [Makefile:25953: bootstrap-lean] Error 2

Of course, isl is installed though:

sh-5.1# port contents isl-devel
Port isl-devel @0.26_0 contains:
  /opt/local/include/isl/aff.h
  /opt/local/include/isl/aff_type.h
  /opt/local/include/isl/arg.h
  /opt/local/include/isl/ast.h
  /opt/local/include/isl/ast_build.h
  /opt/local/include/isl/ast_type.h
  /opt/local/include/isl/constraint.h
  /opt/local/include/isl/cpp.h
  /opt/local/include/isl/ctx.h
  /opt/local/include/isl/fixed_box.h
  /opt/local/include/isl/flow.h
  /opt/local/include/isl/hash.h
  /opt/local/include/isl/hmap.h
  /opt/local/include/isl/hmap_templ.c
  /opt/local/include/isl/id.h
  /opt/local/include/isl/id_to_ast_expr.h
  /opt/local/include/isl/id_to_id.h
  /opt/local/include/isl/id_to_pw_aff.h
  /opt/local/include/isl/id_type.h
  /opt/local/include/isl/ilp.h
  /opt/local/include/isl/list.h
  /opt/local/include/isl/local_space.h
  /opt/local/include/isl/lp.h
  /opt/local/include/isl/map.h
  /opt/local/include/isl/map_to_basic_set.h
  /opt/local/include/isl/map_type.h
  /opt/local/include/isl/mat.h
  /opt/local/include/isl/maybe.h
  /opt/local/include/isl/maybe_ast_expr.h
  /opt/local/include/isl/maybe_basic_set.h
  /opt/local/include/isl/maybe_id.h
  /opt/local/include/isl/maybe_pw_aff.h
  /opt/local/include/isl/maybe_templ.h
  /opt/local/include/isl/multi.h
  /opt/local/include/isl/obj.h
  /opt/local/include/isl/options.h
  /opt/local/include/isl/point.h
  /opt/local/include/isl/polynomial.h
  /opt/local/include/isl/polynomial_type.h
  /opt/local/include/isl/printer.h
  /opt/local/include/isl/printer_type.h
  /opt/local/include/isl/schedule.h
  /opt/local/include/isl/schedule_node.h
  /opt/local/include/isl/schedule_type.h
  /opt/local/include/isl/set.h
  /opt/local/include/isl/set_type.h
  /opt/local/include/isl/space.h
  /opt/local/include/isl/space_type.h
  /opt/local/include/isl/stdint.h
  /opt/local/include/isl/stream.h
  /opt/local/include/isl/stride_info.h
  /opt/local/include/isl/typed_cpp.h
  /opt/local/include/isl/union_map.h
  /opt/local/include/isl/union_map_type.h
  /opt/local/include/isl/union_set.h
  /opt/local/include/isl/union_set_type.h
  /opt/local/include/isl/val.h
  /opt/local/include/isl/val_gmp.h
  /opt/local/include/isl/val_type.h
  /opt/local/include/isl/vec.h
  /opt/local/include/isl/version.h
  /opt/local/include/isl/vertices.h
  /opt/local/lib/libisl.a
  /opt/local/lib/libisl.la
  /opt/local/lib/libisl.so
  /opt/local/lib/libisl.so.23
  /opt/local/lib/libisl.so.23.3.0
  /opt/local/lib/libisl.so.23.3.0-gdb.py
  /opt/local/lib/pkgconfig/isl.pc
sh-5.1# port -v installed isl-devel
The following ports are currently installed:
  isl-devel @0.26_0 (active) requested_variants='' platform='linux 3' archs='riscv64' date='2024-09-06T10:43:36+0000'

The only change I made of the portfile was to remove dependency on libiconv in a few places.

RJVB commented 2 months ago

Another mystery. The only simple and logical explanation would be that something is wrong with your libisl symlinks. As far as I can tell libtool is not involved here so the libisl.la file shouldn't be able to mess things up but you could still have a look.

Is there a reason you use the isl-devel port? I haven't tested with that one!

barracuda156 commented 2 months ago

@RJVB 0.24 is archaic LOL

I use 0.26 on all my machines and it works fine (with modern gcc, gcc6 does not build against it). Of course, those are Macs; I’m unaware of its status elsewhere.

But I can try with 0.24.

RJVB commented 2 months ago

On Tuesday September 10 2024 04:06:05 Sergey Fedorov wrote:

@RJVB 0.24 is archaic LOL

I see I built gcc12 against isl 0.18, and it works fine too. Isl seems to be some kind of subset of the Atlas library but for integers. I can't really understand what a compiler would need that kind of functionality for but I'm guessing the features it does need haven't really evolved for a while. "Well preserved", as we say in evolutionary theory.

RJVB commented 2 months ago

René J.V. Bertin wrote on 20240910::13:13:08 re: "Re: [RJVB/lnxports] libgcc13 build failure: error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory (Issue #25)"

I can't really understand what a compiler would need that kind of functionality for but I'm guessing the features it does need haven't really evolved for a while.

I just tested that idea by installing port:isl18 and port:isl @.***), and then pointing libisl.so.15 to libisl.so.23 so that my current gcc build uses the newer isl version.

Then I rebuilt port:isl itself (with gcc12 this time) and ran the tests. No errors.

barracuda156 commented 2 months ago

Just as an update on the matter, it also failed with 0.24.

RJVB commented 2 months ago

And did you check the installed files to be certain that the linker isn't actually right that the libisl library is missing?

barracuda156 commented 2 months ago

And did you check the installed files to be certain that the linker isn't actually right that the libisl library is missing?

Yes, isl is present, of course.

BTW, I have checked specs of my bundled GCC, and interestingly it is configured to avoid isl:

sh-5.1# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/riscv64-pine64-linux/11.3.0/lto-wrapper
Target: riscv64-pine64-linux
Configured with: ../../../../../work-shared/gcc-11.3.0-r0/gcc-11.3.0/configure --build=x86_64-linux --host=riscv64-pine64-linux --target=riscv64-pine64-linux --prefix=/usr --exec_prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share --sysconfdir=/etc --sharedstatedir=/com --localstatedir=/var --libdir=/usr/lib --includedir=/usr/include --oldincludedir=/usr/include --infodir=/usr/share/info --mandir=/usr/share/man --disable-silent-rules --disable-dependency-tracking --with-libtool-sysroot=/ --with-gnu-ld --enable-shared --enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-default-pie --enable-c99 --enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch --program-prefix=riscv64-pine64-linux- --without-local-prefix --disable-install-libiberty --disable-libssp --enable-libitm --enable-lto --disable-bootstrap --with-system-zlib --with-linker-hash-style=gnu --enable-linker-build-id --with-ppl=no --with-cloog=no --enable-checking=release --enable-cheaders=c_global --without-isl --with-build-sysroot=/ --enable-standard-branch-protection --disable-static --enable-nls --with-glibc-version=2.28 --enable-initfini-array --enable-__cxa_atexit
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.3.0 (GCC)

P. S. isl 0.24:

sh-5.1# port installed isl
The following ports are currently installed:
  isl @0.24_1 (active)
sh-5.1# port contents isl
Port isl @0.24_1 contains:
  /opt/local/include/isl/aff.h
  /opt/local/include/isl/aff_type.h
  /opt/local/include/isl/arg.h
  /opt/local/include/isl/ast.h
  /opt/local/include/isl/ast_build.h
  /opt/local/include/isl/ast_type.h
  /opt/local/include/isl/constraint.h
  /opt/local/include/isl/cpp.h
  /opt/local/include/isl/ctx.h
  /opt/local/include/isl/fixed_box.h
  /opt/local/include/isl/flow.h
  /opt/local/include/isl/hash.h
  /opt/local/include/isl/hmap.h
  /opt/local/include/isl/hmap_templ.c
  /opt/local/include/isl/id.h
  /opt/local/include/isl/id_to_ast_expr.h
  /opt/local/include/isl/id_to_id.h
  /opt/local/include/isl/id_to_pw_aff.h
  /opt/local/include/isl/id_type.h
  /opt/local/include/isl/ilp.h
  /opt/local/include/isl/list.h
  /opt/local/include/isl/local_space.h
  /opt/local/include/isl/lp.h
  /opt/local/include/isl/map.h
  /opt/local/include/isl/map_to_basic_set.h
  /opt/local/include/isl/map_type.h
  /opt/local/include/isl/mat.h
  /opt/local/include/isl/maybe.h
  /opt/local/include/isl/maybe_ast_expr.h
  /opt/local/include/isl/maybe_basic_set.h
  /opt/local/include/isl/maybe_id.h
  /opt/local/include/isl/maybe_pw_aff.h
  /opt/local/include/isl/maybe_templ.h
  /opt/local/include/isl/multi.h
  /opt/local/include/isl/obj.h
  /opt/local/include/isl/options.h
  /opt/local/include/isl/point.h
  /opt/local/include/isl/polynomial.h
  /opt/local/include/isl/polynomial_type.h
  /opt/local/include/isl/printer.h
  /opt/local/include/isl/printer_type.h
  /opt/local/include/isl/schedule.h
  /opt/local/include/isl/schedule_node.h
  /opt/local/include/isl/schedule_type.h
  /opt/local/include/isl/set.h
  /opt/local/include/isl/set_type.h
  /opt/local/include/isl/space.h
  /opt/local/include/isl/space_type.h
  /opt/local/include/isl/stdint.h
  /opt/local/include/isl/stream.h
  /opt/local/include/isl/stride_info.h
  /opt/local/include/isl/typed_cpp.h
  /opt/local/include/isl/union_map.h
  /opt/local/include/isl/union_map_type.h
  /opt/local/include/isl/union_set.h
  /opt/local/include/isl/union_set_type.h
  /opt/local/include/isl/val.h
  /opt/local/include/isl/val_gmp.h
  /opt/local/include/isl/val_type.h
  /opt/local/include/isl/vec.h
  /opt/local/include/isl/version.h
  /opt/local/include/isl/vertices.h
  /opt/local/lib/libisl.a
  /opt/local/lib/libisl.la
  /opt/local/lib/libisl.so
  /opt/local/lib/libisl.so.23
  /opt/local/lib/libisl.so.23.1.0
  /opt/local/lib/libisl.so.23.1.0-gdb.py
  /opt/local/lib/pkgconfig/isl.pc
  /opt/local/share/doc/isl/macports.isl.configure.cmd
  /opt/local/share/doc/isl/macports.isl.configure.log
RJVB commented 2 months ago

On Tuesday September 17 2024 13:32:25 Sergey Fedorov wrote:

Yes, isl is present, of course.

I meant if you did an actual ls -l of the /opt/local/lib/libisl.so* files.

BTW, I have checked specs of my bundled GCC, and interestingly it is configured to avoid isl:

You can always try that but you won't get loop optimisations apparently.

The alternative is to hack the contrib/download_prerequisites script (in the echo_archives function) so it only downloads and unpacks the isl sources. They will then be built and linked statically. If that doesn't work you have surely found of bug. Cf. https://stackoverflow.com/a/33736022/1460868

barracuda156 commented 2 months ago

Building with isl disabled, I got to here, where it failed. Is this header something Linuxy?

libtool: compile:  /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I.. -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/riscv64-pine64-linux -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14 -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os -MT sanitizer_platform_limits_openbsd.lo -MD -MP -MF .deps/sanitizer_platform_limits_openbsd.Tpo -c /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_openbsd.cpp -o sanitizer_platform_limits_openbsd.o >/dev/null 2>&1
mv -f .deps/sanitizer_platform_limits_linux.Tpo .deps/sanitizer_platform_limits_linux.Plo
/bin/sh ../libtool  --tag=CXX   --mode=compile /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include   -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS  -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I..  -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system  -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include     -I../../libstdc++-v3/include/riscv64-pine64-linux     -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14  -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os  -MT sanitizer_platform_limits_posix.lo -MD -MP -MF .deps/sanitizer_platform_limits_posix.Tpo -c -o sanitizer_platform_limits_posix.lo /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
mv -f .deps/sanitizer_platform_limits_openbsd.Tpo .deps/sanitizer_platform_limits_openbsd.Plo
/bin/sh ../libtool  --tag=CXX   --mode=compile /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include   -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS  -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I..  -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system  -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include     -I../../libstdc++-v3/include/riscv64-pine64-linux     -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14  -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os  -MT sanitizer_platform_limits_solaris.lo -MD -MP -MF .deps/sanitizer_platform_limits_solaris.Tpo -c -o sanitizer_platform_limits_solaris.lo /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_solaris.cpp
libtool: compile:  /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I.. -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/riscv64-pine64-linux -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14 -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os -MT sanitizer_platform_limits_posix.lo -MD -MP -MF .deps/sanitizer_platform_limits_posix.Tpo -c /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp  -fPIC -DPIC -o .libs/sanitizer_platform_limits_posix.o
libtool: compile:  /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I.. -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/riscv64-pine64-linux -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14 -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os -MT sanitizer_platform_limits_solaris.lo -MD -MP -MF .deps/sanitizer_platform_limits_solaris.Tpo -c /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_solaris.cpp  -fPIC -DPIC -o .libs/sanitizer_platform_limits_solaris.o
yes
checking for round... mv -f .deps/method-ml.Tpo .deps/method-ml.Plo
/bin/sh ./libtool  --tag=CC   --mode=link /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/ -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include   -fchecking=1 -ftls-model=initial-exec -Wall -Werror  -Wc,-pthread  -g -Os    -Wl,-O1    -o libitm.la -version-info 1:0:0 -Wl,--version-script,/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libitm/libitm.map -rpath /opt/local/lib/libgcc aatree.lo alloc.lo alloc_c.lo alloc_cpp.lo barrier.lo beginend.lo clone.lo eh_cpp.lo local.lo query.lo retry.lo rwlock.lo useraction.lo util.lo sjlj.lo tls.lo method-serial.lo method-gl.lo method-ml.lo   futex.lo  
libtool: compile:  /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I.. -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/riscv64-pine64-linux -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14 -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os -MT sanitizer_platform_limits_solaris.lo -MD -MP -MF .deps/sanitizer_platform_limits_solaris.Tpo -c /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_solaris.cpp -o sanitizer_platform_limits_solaris.o >/dev/null 2>&1
mv -f .deps/sanitizer_platform_limits_solaris.Tpo .deps/sanitizer_platform_limits_solaris.Plo
/bin/sh ../libtool  --tag=CXX   --mode=compile /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include   -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS  -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I..  -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system  -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include     -I../../libstdc++-v3/include/riscv64-pine64-linux     -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14  -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os  -MT sanitizer_posix.lo -MD -MP -MF .deps/sanitizer_posix.Tpo -c -o sanitizer_posix.lo /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_posix.cpp
libtool: compile:  /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc/xgcc -shared-libgcc -B/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/./gcc -nostdinc++ -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/src/.libs -L/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/riscv64-pine64-linux/libstdc++-v3/libsupc++/.libs -B/opt/local/riscv64-pine64-linux/bin/ -B/opt/local/riscv64-pine64-linux/lib/ -isystem /opt/local/riscv64-pine64-linux/include -isystem /opt/local/riscv64-pine64-linux/sys-include -fchecking=1 -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_RPC_XDR_H=0 -DHAVE_TIRPC_RPC_XDR_H=0 -I. -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common -I.. -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer -isystem /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/include/system -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/riscv64-pine64-linux -I/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++14 -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../libbacktrace -I ../libbacktrace -I /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/../include -include /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/libbacktrace/backtrace-rename.h -g -Os -MT sanitizer_posix.lo -MD -MP -MF .deps/sanitizer_posix.Tpo -c /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_posix.cpp  -fPIC -DPIC -o .libs/sanitizer_posix.o
/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/gcc-13.2.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:180:10: fatal error: crypt.h: No such file or directory
  180 | #include <crypt.h>
      |          ^~~~~~~~~
compilation terminated.
gmake[4]: *** [Makefile:614: sanitizer_platform_limits_posix.lo] Error 1
gmake[4]: *** Waiting for unfinished jobs...
RJVB commented 2 months ago

180 | #include

On my system that header is provided by the libc6-dev package. Annoyingly that means that I have no way to provide that particular header, but the question even arises if your distro is using glibc, see e.g. the readme at https://github.com/zerovm/glibc (a "port" that claims to be part of the GCC toolchain?!). Do you have a libcrypt.so or libcrypt-x.y.so.* somewhere in your system libraries?

I may have found an implementation of the function(s) itself here: https://www.w3.org/Library/src/vms/ but it seems to be lacking the crypt.h header .

You can use the dlsym utility from my legacy-tools repo to see if any of the libraries from your libc package provide the crypt function. If so, it should be possible to find the corresponding crypt.h header somewhere.

Alternatively: this is used in libsanitizer. Do you plan to use that feature at all? If not, you'll probably save time by disabling it via configure (looks like you'd need to delete the libsanitizer directory for that).

FWIW: I never tried to use it but just doing a dlopen(2) on the tsan libraries gives me errors suggesting my kernel doesn't have the required built-in support, so next time I may certainly try to disable this feature myself.

barracuda156 commented 2 months ago

@RJVB We are almost there :)

Disabling isl, libiconv and sanitizer (via your new variant), libgcc13 builds, but fails at destroot:

gmake[1]: Nothing to be done for 'install-info'.
gmake[1]: Leaving directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build/libcc1'
gmake: Leaving directory '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/build'
ls: cannot access '/opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/destroot/opt/local/lib/lib64': No such file or directory
Command failed: ls -l /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/destroot/opt/local/lib/lib64 
Exit code: 2
Error: Failed to destroot libgcc13: command execution failed
RJVB commented 2 months ago

On Thursday September 19 2024 08:52:42 Sergey Fedorov wrote:

Command failed: ls -l /opt/local/var/macports/build/_home_svacchanda_lnxports_lang_gcc13/libgcc13/work/destroot/opt/local/lib/lib64

Oops, yes, that directory apparently doesn't always exist. Fixed.

barracuda156 commented 2 months ago

@RJVB By the way, aren't sanitizers disabled by --disable-target-libsanitizer and/or --disable-libsanitizer?

RJVB commented 2 months ago

On Thursday September 19 2024 09:56:00 Sergey Fedorov wrote:

@RJVB By the way, aren't sanitizers disabled by --disable-target-libsanitizer and/or --disable-libsanitizer?

Possibly, but configure --help didn't list those options and looking at configure.ac suggested that the way is to remove the directory

barracuda156 commented 2 months ago

Rebuilding now, hopefully this time it works.

RJVB commented 2 months ago

You shouldn't have had to rebuild completely, the only change was to the post-destroot. I have a port-redo-install-phase script for this kind of situation, in macstrop!

barracuda156 commented 2 months ago

Too late now, but good to know. It is pretty annoying that the official base does not support it (yeah, it can be hacked, I know, but still).

RJVB commented 2 months ago

I didn't have to hack "base" at all for this, except for registering successfully applied patches in the statefile. I just reverse engineered how the state mechanism works.

The port-check-conflicts Tcl script is a different situation: that one actually uses "base" (and is very useful too).