Как установить clang на макоси?
От: vsb Казахстан  
Дата: 03.11.22 14:11
Оценка:
Встроенный не подходит.

Скачал с сайта clang+llvm-15.0.2-arm64-apple-darwin21.0.tar.xz распаковал. Если не использовать стандартную библиотеку, то работает, .o файлы компилирует. Если написать #include <stdio.h> то уже не находит. В каталоге /Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include нужный хедер лежит.

Если руками прописать, то компилируется но выводит кучу предупреждений.

Как правильно сделать? Чтобы ничего не прописывать, чтобы clang просто работал.
% cat test.c
#include <stdio.h>

int main(void)
{
    puts("Hello, world");
    return 0;
}

% ../tmp/clang+llvm-15.0.2-arm64-apple-darwin21.0/bin/clang test.c -I/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include -L/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/lib
In file included from test.c:1:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include/stdio.h:64:
/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include/_stdio.h:93:16: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
        unsigned char   *_base;
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include/_stdio.h:93:16: note: insert '_Nullable' if the pointer may be null
        unsigned char   *_base;
                        ^
                          _Nullable 

и очень много подобных предупреждений

13 warnings generated.

% ./a.out
Hello, world
Re: Как установить clang на макоси?
От: kov_serg Россия  
Дата: 03.11.22 14:31
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Встроенный не подходит.


vsb>Скачал с сайта clang+llvm-15.0.2-arm64-apple-darwin21.0.tar.xz распаковал. Если не использовать стандартную библиотеку, то работает, .o файлы компилирует. Если написать #include <stdio.h> то уже не находит. В каталоге /Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include нужный хедер лежит.


vsb>Если руками прописать, то компилируется но выводит кучу предупреждений.

-Wno-nullability-completeness ?

vsb>Как правильно сделать? Чтобы ничего не прописывать, чтобы clang просто работал.

Хз. Обычно brew install llvm
Re[2]: Как установить clang на макоси?
От: vsb Казахстан  
Дата: 03.11.22 17:00
Оценка:
Здравствуйте, kov_serg, Вы писали:

vsb>>Встроенный не подходит.


vsb>>Скачал с сайта clang+llvm-15.0.2-arm64-apple-darwin21.0.tar.xz распаковал. Если не использовать стандартную библиотеку, то работает, .o файлы компилирует. Если написать #include <stdio.h> то уже не находит. В каталоге /Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/usr/include нужный хедер лежит.


vsb>>Если руками прописать, то компилируется но выводит кучу предупреждений.

_>-Wno-nullability-completeness ?

Не, мне надо как-то сделать чтобы вообще без всяких флагов работал, как встроенный.

vsb>>Как правильно сделать? Чтобы ничего не прописывать, чтобы clang просто работал.

_>Хз. Обычно brew install llvm

Не пользуюсь этим. Мне надо проще, без всяких установок. Распаковали и все. Может какой env ему нужен.
Re[3]: Как установить clang на макоси?
От: LaptevVV Россия  
Дата: 04.11.22 05:17
Оценка:
vsb>>>Как правильно сделать? Чтобы ничего не прописывать, чтобы clang просто работал.
_>>Хз. Обычно brew install llvm
vsb>Не пользуюсь этим. Мне надо проще, без всяких установок. Распаковали и все. Может какой env ему нужен.
Дык этот брю, небось, пути-то прописывает.
А при распаковке пути не прописаны.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Как установить clang на макоси?
От: Dair Россия  
Дата: 11.11.22 08:50
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Встроенный не подходит.

Во что встроенный?

В Xcode встроенный не подойдёт?
Re[2]: Как установить clang на макоси?
От: vsb Казахстан  
Дата: 11.11.22 08:56
Оценка: 2 (1)
Здравствуйте, Dair, Вы писали:

vsb>>Встроенный не подходит.

D>Во что встроенный?

D>В Xcode встроенный не подойдёт?


Да, не подойдёт. Впрочем я решил вопрос радикально — отказался от использования стандартной библиотеки. Хотя ради проформы все равно интересно было бы понять.
Re[3]: Как установить clang на макоси?
От: Dair Россия  
Дата: 11.11.22 11:08
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>>>Встроенный не подходит.

D>>В Xcode встроенный не подойдёт?

vsb>Да, не подойдёт.


А почему?

vsb> Впрочем я решил вопрос радикально — отказался от использования стандартной библиотеки. Хотя ради проформы все равно интересно было бы понять.


В самом деле радикально.
Re[4]: Как установить clang на макоси?
От: vsb Казахстан  
Дата: 11.11.22 11:19
Оценка: 2 (1)
Здравствуйте, Dair, Вы писали:

vsb>>>>Встроенный не подходит.

D>>>В Xcode встроенный не подойдёт?

vsb>>Да, не подойдёт.


D>А почему?


Он --target=wasm32 не умеет.

vsb>> Впрочем я решил вопрос радикально — отказался от использования стандартной библиотеки. Хотя ради проформы все равно интересно было бы понять.


D>В самом деле радикально.


Ну с webassembly мне показалось это правильней, кода у меня там немного, а чего там линкер налинкует, непонятно. Пару функций переписать недолго. С emscripten ковырялся, там какая-то жесть генерится.
Re[3]: Как установить clang на макоси?
От: wl. Россия  
Дата: 15.11.22 05:14
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Не пользуюсь этим. Мне надо проще, без всяких установок. Распаковали и все. Может какой env ему нужен.


так и скачай оффрелиз https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.2/clang+llvm-15.0.2-arm64-apple-darwin21.0.tar.xz либо
https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.2/clang+llvm-15.0.2-x86_64-apple-darwin.tar.xz — в зависимости от проца
пути можно не прописывать, напиши какой-нибудь makefile простенький, и в нём уже пути к компиляторам, линкерам, инклюдам и либам
Отредактировано 15.11.2022 5:15 wl. . Предыдущая версия .
Re[4]: Как установить clang на макоси?
От: vsb Казахстан  
Дата: 15.11.22 08:51
Оценка:
Здравствуйте, wl., Вы писали:

vsb>>Не пользуюсь этим. Мне надо проще, без всяких установок. Распаковали и все. Может какой env ему нужен.


wl.>так и скачай оффрелиз https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.2/clang+llvm-15.0.2-arm64-apple-darwin21.0.tar.xz либо

wl.>https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.2/clang+llvm-15.0.2-x86_64-apple-darwin.tar.xz — в зависимости от проца
wl.>пути можно не прописывать, напиши какой-нибудь makefile простенький, и в нём уже пути к компиляторам, линкерам, инклюдам и либам

Так и сделал но вопрос же в том, как сделать, чтобы не прописывать в командной строке путь к стандартной библиотеке.
Re[5]: Как установить clang на макоси?
От: wl. Россия  
Дата: 15.11.22 10:13
Оценка:
Здравствуйте, vsb, Вы писали:

wl.>>пути можно не прописывать, напиши какой-нибудь makefile простенький, и в нём уже пути к компиляторам, линкерам, инклюдам и либам

vsb>Так и сделал но вопрос же в том, как сделать, чтобы не прописывать в командной строке путь к стандартной библиотеке.

Когда ставишь через brew, он пишет что-то такое:

If you need to have llvm@8 first in your PATH, run:
echo 'export PATH="/usr/local/opt/llvm@8/bin:$PATH"' >> /Users/kingdelee/.bash_profile

For compilers to find llvm@8 you may need to set:
export LDFLAGS="-L/usr/local/opt/llvm@8/lib"
export CPPFLAGS="-I/usr/local/opt/llvm@8/include"

попробуй прописать со своими путями
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.