conda-forge / intel-compiler-repack-feedstock

A conda-smithy repository for intel-compiler-repack.
BSD 3-Clause "New" or "Revised" License
3 stars 7 forks source link

The Intel compiler breaks conda c++ compiler if installed #32

Closed leshikus closed 4 weeks ago

leshikus commented 4 months ago

Solution to issue cannot be found in the documentation.

Issue

The Intel compiler headers are written to $CONDA_PREFIX/include and take priority to x86_64-conda-linux-gnu-c++ compiler headers. For example, this it true for float.h header.

The problem is that this header works like an empty header on Linux when __INTEL_COMPILER is not set. For Windows it correctly includes system float.h header, for Linux it does not.

Installed packages

_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                  2_kmp_llvm    conda-forge
_sysroot_linux-64_curr_repodata_hack 3                   h69a702a_14    conda-forge
binutils_impl_linux-64    2.40                 hf600244_0    conda-forge
binutils_linux-64         2.40                 hdade7a5_3    conda-forge
bzip2                     1.0.8                hd590300_5    conda-forge
c-ares                    1.27.0               hd590300_0    conda-forge
ca-certificates           2024.2.2             hbcca054_0    conda-forge
cmake                     3.22.3               h5432695_0    conda-forge
dpcpp-cpp-rt              2024.0.0         h59595ed_49819    conda-forge
dpcpp_impl_linux-64       2024.0.0         h034604b_49819    conda-forge
expat                     2.6.2                h59595ed_0    conda-forge
gcc_impl_linux-64         11.4.0               h7aa1c59_5    conda-forge
gcc_linux-64              11.4.0               h0f0c6b6_3    conda-forge
gxx_impl_linux-64         11.4.0               h7aa1c59_5    conda-forge
gxx_linux-64              11.4.0               h2730b16_3    conda-forge
icu                       73.2                 h59595ed_0    conda-forge
intel-cmplr-lib-rt        2024.0.0         hfc55251_49819    conda-forge
intel-cmplr-lic-rt        2024.0.0         ha770c72_49819    conda-forge
intel-opencl-rt           2024.0.0         heb1d2f6_49819    conda-forge
kernel-headers_linux-64   3.10.0              h4a8ded7_14    conda-forge
keyutils                  1.6.1                h166bdaf_0    conda-forge
krb5                      1.21.2               h659d440_0    conda-forge
ld_impl_linux-64          2.40                 h41732ed_0    conda-forge
libcurl                   8.6.0                hca28451_0    conda-forge
libedit                   3.1.20191231         he28a2e2_2    conda-forge
libev                     4.33                 hd590300_2    conda-forge
libexpat                  2.6.2                h59595ed_0    conda-forge
libffi                    3.4.2                h7f98852_5    conda-forge
libgcc-devel_linux-64     11.4.0             h922705a_105    conda-forge
libgcc-ng                 13.2.0               h807b86a_5    conda-forge
libgomp                   13.2.0               h807b86a_5    conda-forge
libhwloc                  2.9.3           default_h554bfaf_1009    conda-forge
libiconv                  1.17                 hd590300_2    conda-forge
libnghttp2                1.58.0               h47da74e_1    conda-forge
libnsl                    2.0.1                hd590300_0    conda-forge
libsanitizer              11.4.0               h4dcbe23_5    conda-forge
libsqlite                 3.45.2               h2797004_0    conda-forge
libssh2                   1.11.0               h0841786_0    conda-forge
libstdcxx-devel_linux-64  11.4.0             h922705a_105    conda-forge
libstdcxx-ng              13.2.0               h7e041cc_5    conda-forge
libuuid                   2.38.1               h0b41bf4_0    conda-forge
libuv                     1.48.0               hd590300_0    conda-forge
libxcrypt                 4.4.36               hd590300_1    conda-forge
libxml2                   2.12.6               h232c23b_0    conda-forge
libzlib                   1.2.13               hd590300_5    conda-forge
llvm-openmp               18.1.1               h4dfa4b3_0    conda-forge
mkl                       2024.0.0         ha957f24_49657    conda-forge
ncurses                   6.4.20240210         h59595ed_0    conda-forge
ninja                     1.10.2               h4bd325d_1    conda-forge
ocl-icd                   2.3.2                hd590300_0    conda-forge
onednn                    3.3              omp_hc847620_3    conda-forge
onednn-devel              2024.0.0            intel_49521    intel
onemkl-sycl-blas          2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-datafitting   2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-dft           2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-lapack        2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-rng           2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-sparse        2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-stats         2024.0.0         ha957f24_49657    conda-forge
onemkl-sycl-vm            2024.0.0         ha957f24_49657    conda-forge
openssl                   3.2.1                hd590300_1    conda-forge
pip                       23.3.2             pyhd8ed1ab_0    conda-forge
python                    3.9.19          h0755675_0_cpython    conda-forge
readline                  8.2                  h8228510_1    conda-forge
rhash                     1.4.3                hd590300_2    conda-forge
setuptools                69.2.0             pyhd8ed1ab_0    conda-forge
sysroot_linux-64          2.17                h4a8ded7_14    conda-forge
tbb                       2021.11.0            h00ab1b0_1    conda-forge
tk                        8.6.13          noxft_h4845f30_101    conda-forge
tzdata                    2024a                h0c530f3_0    conda-forge
wheel                     0.42.0             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

Environment info

shell
active environment : triton
    active env location : /home/jovyan/.conda/envs/triton
            shell level : 4
       user config file : /home/jovyan/.condarc
 populated config files : /home/jovyan/.conda/.condarc
          conda version : 23.11.0
    conda-build version : not installed
         python version : 3.10.13.final.0
                 solver : libmamba (default)
       virtual packages : __archspec=1=sapphirerapids
                          __conda=23.11.0=0
                          __glibc=2.35=0
                          __linux=5.15.0=0
                          __unix=0=0
       base environment : /home/jovyan/.conda  (writable)
      conda av data dir : /home/jovyan/.conda/etc/conda
  conda av metadata url : None
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
          package cache : /home/jovyan/.conda/pkgs
       envs directories : /home/jovyan/.conda/envs
               platform : linux-64
             user-agent : conda/23.11.0 requests/2.31.0 CPython/3.10.13 Linux/5.15.0-94-generic ubuntu/22.04.3 glibc/2.35 solver/libmamba conda-libmamba-solver/23.12.0 libmambapy/1.5.5
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False
leshikus commented 4 months ago

This is pytorch build error, it adds -isystem $CONDA_PREFIX/include

leshikus commented 4 months ago

This is not pytorch. Something sets CPPFLAGS='-DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/jovyan/.conda/envs/triton/include' before the pytorch build. Digging further.

leshikus commented 4 months ago

This is done in activate.d/activate-gcc_linux-64.sh, thus this is a part of conda c++ compiler. Reopening.