Использование clang-17 в среде condaC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Использование clang-17 в среде conda

Сообщение Anonymous »

Мне нужно использовать clang-17 для проекта. Дело в том, что у меня недостаточно прав для установки программного обеспечения. Поэтому я планировал использовать компилятор clang-17 в своей среде conda.
Я установил следующие пакеты:
< pre class="lang-bash Prettyprint-override">

Код: Выделить всё

(tfdev) user@host:/localdisk/user|> conda list
# packages in environment at /localdisk/user/opt/miniconda3/envs/tfdev:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
_sysroot_linux-64_curr_repodata_hack 3                   haa98f57_10
binutils_impl_linux-64    2.40                 ha885e6a_0    conda-forge
bzip2                     1.0.8                h5eee18b_6
ca-certificates           2024.3.11            h06a4308_0
clang-17                  17.0.6          default_h127d8a8_4    conda-forge
gcc                       13.2.0               hc7bed06_7    conda-forge
gcc_impl_linux-64         13.2.0               h9eb54c0_7    conda-forge
kernel-headers_linux-64   3.10.0              h57e8cba_10
ld_impl_linux-64          2.40                 h55db66e_0    conda-forge
libclang-cpp17            17.0.6          default_h127d8a8_4    conda-forge
libffi                    3.4.4                h6a678d5_1
libgcc                    7.2.0                h69d50b8_2    conda-forge
libgcc-devel_linux-64     13.2.0             hceb6213_107    conda-forge
libgcc-ng                 13.2.0               h77fa898_7    conda-forge
libgomp                   13.2.0               h77fa898_7    conda-forge
libllvm17                 17.0.6               hc9c083f_0
libsanitizer              13.2.0               h6ddb7a1_7    conda-forge
libstdcxx-ng              13.2.0               hc0a3c3a_7    conda-forge
libuuid                   1.41.5               h5eee18b_0
lz4-c                     1.9.4                h6a678d5_1
ncurses                   6.4                  h6a678d5_0
openssl                   3.0.13               h7f8727e_1
pip                       24.0            py311h06a4308_0
python                    3.11.9               h955ad1f_0
readline                  8.2                  h5eee18b_0
setuptools                69.5.1          py311h06a4308_0
sqlite                    3.45.3               h5eee18b_0
sysroot_linux-64          2.17                h57e8cba_10
tk                        8.6.14               h39e8969_0
tzdata                    2024a                h04d1e81_0
wheel                     0.43.0          py311h06a4308_0
xz                        5.4.6                h5eee18b_1
zlib                      1.2.13               h5eee18b_1
zstd                      1.5.5                hc292b87_2
Похоже, компилятор настроен правильно:

Код: Выделить всё

(tfdev) user@host:/localdisk/user|> which clang-17
/localdisk/user/opt/miniconda3/envs/tfdev/bin/clang-17
(tfdev) user@host:/localdisk/user|> clang-17 -v
clang version 17.0.6 (https://github.com/conda-forge/clangdev-feedstock 71dc3d053bf53a7cb6294eba448c059a3060dbe6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /localdisk/user/opt/miniconda3/envs/tfdev/bin
Found candidate GCC installation: /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0
Selected GCC installation: /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0
Candidate multilib: .;@m64
Selected multilib: .;@m64
Но когда я пытаюсь скомпилировать код C++, компилятор не может найти базовые заголовки:

Код: Выделить всё

(tfdev) user@host:/localdisk/user|> clang-17 -Wall -pedantic -v test.cpp -o test
clang version 17.0.6 (https://github.com/conda-forge/clangdev-feedstock 71dc3d053bf53a7cb6294eba448c059a3060dbe6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /localdisk/user/opt/miniconda3/envs/tfdev/bin
Found candidate GCC installation: /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0
Selected GCC installation: /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0
Candidate multilib: .;@m64
Selected multilib: .;@m64
"/localdisk/user/opt/miniconda3/envs/tfdev/bin/clang-17"  -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -dumpdir test- -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name test.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -debugger-tuning=gdb -v -fcoverage-compilation-dir=/localdisk/user -resource-dir /localdisk/user/opt/miniconda3/envs/tfdev/lib/clang/17 -internal-isystem /localdisk/user/opt/miniconda3/envs/tfdev/lib/clang/17/include -internal-isystem /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/sysroot/usr/local/include -internal-isystem /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/include -internal-externc-isystem /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/sysroot/include -internal-externc-isystem /localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/sysroot/usr/include -Wall -pedantic -fdeprecated-macro -fdebug-compilation-dir=/localdisk/user -ferror-limit 19 -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/test-2fdf35.o -x c++ test.cpp
clang -cc1 version 17.0.6 based upon LLVM 17.0.6 default target x86_64-unknown-linux-gnu
ignoring nonexistent directory "/localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/sysroot/usr/local/include"
ignoring nonexistent directory "/localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/include"
ignoring nonexistent directory "/localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/sysroot/include"
#include "..." search starts here:
#include  search starts here:
/localdisk/user/opt/miniconda3/envs/tfdev/lib/clang/17/include
/localdisk/user/opt/miniconda3/envs/tfdev/bin/../lib/gcc/x86_64-conda-linux-gnu/13.2.0/../../../../x86_64-conda-linux-gnu/sysroot/usr/include
End of search list.
test.cpp:1:10: fatal error: 'iostream' file not found
1 | #include 
|          ^~~~~~~~~~
1 error generated.

В коде ничего нет:

Код: Выделить всё

#include 

int main() {
return 0;
}
Как заставить это работать? Еще раз обратите внимание, что я не могу ничего установить на компьютер из-за разрешений.


Подробнее здесь: https://stackoverflow.com/questions/784 ... nvironment
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»