Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to version 17 #135

Closed
rkaminsk opened this issue Nov 9, 2023 · 5 comments
Closed

Update to version 17 #135

rkaminsk opened this issue Nov 9, 2023 · 5 comments
Labels

Comments

@rkaminsk
Copy link

rkaminsk commented Nov 9, 2023

Comment:

Could this be updated to version 17? llvm and clang are available in version 17 and without a matching libcxx it is not possible (out of the box) to use flags like `-stdlib=libc++.

Maybe there is also some other issue.

Running

clang++ -stdlib=libc++ test.cc
x86_64-conda-linux-gnu-ld: cannot find -lc++: No such file or directory
clang++: error: linker command failed with exit code 1 (use -v to see invocation)

fails. The effective linker command is:

$CONDA_PREFIX/bin/x86_64-conda-linux-gnu-ld"
  --sysroot=$CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot -pie --hash-style=gnu
  --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -o a.out
  $CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/usr/lib/../lib64/Scrt1.o
  $CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/usr/lib/../lib64/crti.o
  $CONDA_PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/11.3.0/crtbeginS.o
  -L$CONDA_PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/11.3.0
  -L$CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/lib/../lib64
  -L$CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/usr/lib/../lib64
  -L$CONDA_PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/11.3.0/../../../../x86_64-conda-linux-gnu/lib
  -L$CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/lib
  -L$CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/usr/lib /tmp/test-b113f0.o
  -lc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc
  $CONDA_PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/11.3.0/crtendS.o
  $CONDA_PREFIX/x86_64-conda-linux-gnu/sysroot/usr/lib/../lib64/crtn.o

Running

clang++ -L$CONDA_PREFIX/lib -stdlib=libc++ test.cc

succeeds.

I would expect the compiler to find libraries in the prefix directory without further configuration.

I have the following packages installed:

clang ➜ conda list    
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
binutils                  2.39                 hdd6e379_1    conda-forge
binutils_impl_linux-64    2.39                 he00db2b_1    conda-forge
binutils_linux-64         2.39                h5fc0e48_13    conda-forge
boost                     1.82.0               h781c19f_6    conda-forge
bzip2                     1.0.8                hd590300_5    conda-forge
c-ares                    1.21.0               hd590300_0    conda-forge
c-compiler                1.5.2                h0b41bf4_0    conda-forge
ca-certificates           2023.7.22            hbcca054_0    conda-forge
cfgv                      3.3.1                    pypi_0    pypi
clang                     17.0.4               ha0738ec_0    conda-forge
clang-17                  17.0.4          default_h1cdf331_0    conda-forge
clang-format              17.0.4          default_h1cdf331_0    conda-forge
clang-format-17           17.0.4          default_h1cdf331_0    conda-forge
clang-tools               17.0.4          default_h1cdf331_0    conda-forge
clangxx                   17.0.4          default_h1cdf331_0    conda-forge
cmake                     3.27.6               hcfe8598_0    conda-forge
compiler-rt               17.0.4               h00ab1b0_0    conda-forge
compiler-rt_linux-64      17.0.4               h00ab1b0_0    conda-forge
cxx-compiler              1.5.2                hf52228f_0    conda-forge
distlib                   0.3.6                    pypi_0    pypi
filelock                  3.12.0                   pypi_0    pypi
gcc                       11.3.0              h02d0930_13    conda-forge
gcc_impl_linux-64         11.3.0              hab1b70f_19    conda-forge
gcc_linux-64              11.3.0              he6f903b_13    conda-forge
gdb                       12.1            py311h467ab62_0    conda-forge
gf2x                      1.3.0                ha476b99_2    conda-forge
gmp                       6.2.1                h58526e2_0    conda-forge
gperftools                2.10                 h09c0d1c_0    conda-forge
greenlet                  2.0.2                    pypi_0    pypi
gxx                       11.3.0              h02d0930_13    conda-forge
gxx_impl_linux-64         11.3.0              hab1b70f_19    conda-forge
gxx_linux-64              11.3.0              hc203a17_13    conda-forge
icu                       73.2                 h59595ed_0    conda-forge
identify                  2.5.24                   pypi_0    pypi
include-what-you-use      0.20                 h59595ed_0    conda-forge
kernel-headers_linux-64   2.6.32              he073ed8_16    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
krb5                      1.21.2               h659d440_0    conda-forge
ld_impl_linux-64          2.39                 hcc3a1bd_1    conda-forge
libblas                   3.9.0           19_linux64_openblas    conda-forge
libboost                  1.82.0               h6fcfa73_6    conda-forge
libboost-devel            1.82.0               h00ab1b0_6    conda-forge
libboost-headers          1.82.0               ha770c72_6    conda-forge
libboost-python           1.82.0          py311h92ebd52_6    conda-forge
libboost-python-devel     1.82.0          py311h781c19f_6    conda-forge
libcblas                  3.9.0           19_linux64_openblas    conda-forge
libclang-cpp16            16.0.6          default_h1cdf331_1    conda-forge
libclang-cpp17            17.0.4          default_h1cdf331_0    conda-forge
libclang13                17.0.4          default_h4d60ac6_0    conda-forge
libcurl                   8.4.0                hca28451_0    conda-forge
libcxx                    16.0.6               h00ab1b0_0    conda-forge
libcxxabi                 16.0.6               ha770c72_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 h516909a_1    conda-forge
libexpat                  2.5.0                hcb278e6_1    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libflint                  3.0.0           h5f2e117_ntl_100    conda-forge
libgcc-devel_linux-64     11.3.0              h210ce93_19    conda-forge
libgcc-ng                 13.2.0               h807b86a_2    conda-forge
libgfortran-ng            13.2.0               h69a702a_2    conda-forge
libgfortran5              13.2.0               ha4646dd_2    conda-forge
libgomp                   13.2.0               h807b86a_2    conda-forge
libiconv                  1.17                 h166bdaf_0    conda-forge
liblapack                 3.9.0           19_linux64_openblas    conda-forge
libllvm16                 16.0.6               h5cf9203_2    conda-forge
libllvm17                 17.0.4               h5cf9203_0    conda-forge
libnghttp2                1.58.0               h47da74e_0    conda-forge
libnsl                    2.0.1                hd590300_0    conda-forge
libopenblas               0.3.24          pthreads_h413a1c8_0    conda-forge
libsanitizer              11.3.0              h239ccf8_19    conda-forge
libsqlite                 3.44.0               h2797004_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-devel_linux-64  11.3.0              h210ce93_19    conda-forge
libstdcxx-ng              13.2.0               h7e041cc_2    conda-forge
libunwind                 1.6.2                h9c3ff4c_0    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libuv                     1.46.0               hd590300_0    conda-forge
libxml2                   2.11.5               h232c23b_1    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
lld                       17.0.4               hcfcaf08_0    conda-forge
mpfr                      4.2.1                h9458935_0    conda-forge
msgpack                   1.0.5                    pypi_0    pypi
ncurses                   6.4                  h59595ed_2    conda-forge
neovim-remote             2.5.1                    pypi_0    pypi
nodeenv                   1.8.0                    pypi_0    pypi
ntl                       11.4.3               hef3c4d3_1    conda-forge
numpy                     1.26.0          py311h64a7726_0    conda-forge
openssl                   3.1.4                hd590300_0    conda-forge
perl                      5.32.1          4_hd590300_perl5    conda-forge
pip                       23.3.1             pyhd8ed1ab_0    conda-forge
platformdirs              3.5.1                    pypi_0    pypi
pre-commit                3.3.2                    pypi_0    pypi
psutil                    5.9.5                    pypi_0    pypi
pygments                  2.16.1             pyhd8ed1ab_0    conda-forge
pynvim                    0.4.3                    pypi_0    pypi
python                    3.11.6          hab00c5b_0_cpython    conda-forge
python_abi                3.11                    4_cp311    conda-forge
pyyaml                    6.0                      pypi_0    pypi
readline                  8.2                  h8228510_1    conda-forge
rhash                     1.4.4                hd590300_0    conda-forge
setuptools                68.2.2             pyhd8ed1ab_0    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
sysroot_linux-64          2.12                he073ed8_16    conda-forge
tk                        8.6.13          noxft_h4845f30_101    conda-forge
tzdata                    2023c                h71feb2d_0    conda-forge
valgrind                  3.21.0               hcd5def8_0    conda-forge
virtualenv                20.23.0                  pypi_0    pypi
wheel                     0.41.3             pyhd8ed1ab_0    conda-forge
xz                        5.2.6                h166bdaf_0    conda-forge
zlib                      1.2.13               hd590300_5    conda-forge
zstd                      1.5.5                hfc55251_0    conda-forge
@h-vetinari
Copy link
Member

See discussion in #131

@rkaminsk
Copy link
Author

Thanks, feel free to close.

@tadejsv
Copy link
Member

tadejsv commented Feb 8, 2024

@h-vetinari Am I correct in assuming that the blockers have now been removed and a release of new version could follow soon?

@h-vetinari
Copy link
Member

I'm working on it, but it requires a big infrastructure transformation and is still going to take a while

@h-vetinari
Copy link
Member

Closed as of today 🥳

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants