Форум программистов, компьютерный форум, киберфорум
sourcerer
Войти
Регистрация
Восстановить пароль
Рейтинг: 5.00. Голосов: 2.

Как прикрутить clang к IDE под виндой (пошаговое руководство)

Запись от sourcerer размещена 01.04.2015 в 20:17
Обновил(-а) sourcerer 24.10.2015 в 21:27
Метки c++, clang, codeblocks, howto, msys2

Я расскажу на примере Code::Blocks. Для других IDE надо будет просто в окошке свойств в Toolchain прописать путь к MSYS2 (но, я немного забежал вперёд, об это чуть позже). Итак, приступим.

Для 32-битной винды:

1-й этап (см. рис. step_1):
  1. идём на страницу проекта MSYS2
  2. скачиваем программу
  3. устанавливаем
  4. запускаем MSYS2 с ярлыка из меню Пуск -> MSYS2 32bit -> MinGW-w64 Win32 Shell
  5. открывается окошко терминала (консоли)
  6. в нём печатаем:
    Цитата:
    pacman -Sy
  7. жмём Enter
  8. ждём, пока программа синхронизирует базы данных пакетов
  9. после того, как снова появилось приглашение вводить текст (значок $ и после него мигающий курсор), вводим следующую команду:
    Цитата:
    pacman --needed -S bash pacman pacman-mirrors msys2-runtime
  10. жмём Enter
  11. на запрос
    Цитата:
    :: Приступить к установке? [Y/n]
    отвечаем утвердительно (то есть Y)
  12. ждём, пока программа установит всё необходимое
  13. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    exit
  14. программа закрывается

2-й этап (см. рис. step_2):
  1. идём в папку, в которую установили MSYS2 (по умолчанию это c:\msys32\ )
  2. запускаем файл autorebase.bat
  3. запускаем MSYS2 с ярлыка из меню Пуск -> MSYS2 32bit -> MinGW-w64 Win32 Shell
  4. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    pacman -Su
  5. жмём Enter
  6. на запрос
    Цитата:
    :: Приступить к установке? [Y/n]
    отвечаем утвердительно (то есть Y)
  7. ждём, пока программа установит всё необходимое
  8. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    pacman -S mingw-w64-i686-clang
  9. жмём Enter
  10. на запрос
    Цитата:
    :: Приступить к установке? [Y/n]
    отвечаем утвердительно (то есть Y)
  11. ждём, пока программа установит всё необходимое
  12. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    exit
  13. программа закрывается

3-й этап:
  1. открываем Code::Blocks
  2. идём в Settings -> Compiler
  3. открывается окно Global Compiler Settings
  4. в выпадающем меню Selected compiler выбираем LLVM Clang Compiler
  5. переходим во вкладку Search Directories
  6. видим там три дополнительные вкладки: Compiler, Linker, Resource compiler
  7. нам нужна первая их этих трёх
  8. переходим в неё, жмём кнопку Add
  9. в выскочившем окошке вбиваем путь c:\msys32\mingw32\include\
  10. жмём OK
  11. видим рядом с вкладкой Search Directories вкладку под названием Toolchain executables
  12. переходим в неё
  13. окошке Compiler's installation directory прописываем путь C:\msys32\mingw32
  14. жмём OK

Для 64-битной винды:

1-й этап:
  1. идём на страницу проекта MSYS2
  2. скачиваем MSYS2 для 64-битной винды
  3. устанавливаем
  4. запускаем MSYS2 с ярлыка из меню Пуск -> MSYS2 64bit -> MinGW-w64 Win64 Shell
  5. открывается окошко терминала (консоли)
  6. в нём печатаем:
    Цитата:
    pacman -Sy
  7. жмём Enter
  8. ждём, пока программа синхронизирует базы данных пакетов
  9. после того, как снова появилось приглашение вводить текст (значок $ и после него мигающий курсор), вводим следующую команду:
    Цитата:
    pacman --needed -S bash pacman pacman-mirrors msys2-runtime
  10. жмём Enter
  11. на запрос
    Цитата:
    :: Приступить к установке? [Y/n]
    отвечаем утвердительно (то есть Y)
  12. ждём, пока программа установит всё необходимое
  13. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    exit
  14. программа закрывается

2-й этап:
  1. запускаем MSYS2 с ярлыка из меню Пуск -> MSYS2 64bit -> MinGW-w64 Win64 Shell
  2. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    pacman -Su
  3. жмём Enter
  4. на запрос
    Цитата:
    :: Приступить к установке? [Y/n]
    отвечаем утвердительно (то есть Y)
  5. ждём, пока программа установит всё необходимое
  6. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    pacman -S mingw-w64-x86_64-clang
  7. жмём Enter
  8. на запрос
    Цитата:
    :: Приступить к установке? [Y/n]
    отвечаем утвердительно (то есть Y)
  9. ждём, пока программа установит всё необходимое
  10. после того, как появилось приглашение, вводим следующую команду:
    Цитата:
    exit
  11. программа закрывается

3-й этап:
  1. открываем Code::Blocks
  2. идём в Settings -> Compiler
  3. открывается окно Global Compiler Settings
  4. в выпадающем меню Selected compiler выбираем LLVM Clang Compiler
  5. переходим во вкладку Search Directories
  6. видим там три дополнительные вкладки: Compiler, Linker, Resource compiler
  7. нам нужна первая их этих трёх
  8. переходим в неё, жмём кнопку Add
  9. в выскочившем окошке вбиваем путь c:\msys64\mingw64\include\
  10. жмём OK
  11. видим рядом с вкладкой Search Directories вкладку под названием Toolchain executables
  12. переходим в неё
  13. окошке Compiler's installation directory прописываем путь C:\msys64\mingw64
  14. жмём OK

P.S. Благодарности:
Хочу поблагодарить моего друга DrOffset'а, без которого я вряд ли бы догадался использовать MSYS2 и вряд ли бы смог с ней разобраться.
Также хочу поблагодарить разработчиков MSYS2 за их труд, подаривший людям замечательную возможность работать в среде Windows в *nix-манере с помощью простого и удобного инструментария.
Благодарю разработчиков Code::Blocks, Boost и всех, кто трудился над созданием и совершенствованием C++ - без них многое было бы гораздо сложнее, а кое-что, наверное, невозможно вовсе.
Миниатюры
Нажмите на изображение для увеличения
Название: step_1.JPG
Просмотров: 380
Размер:	155.0 Кб
ID:	3135   Нажмите на изображение для увеличения
Название: step_2.JPG
Просмотров: 426
Размер:	72.5 Кб
ID:	3136  
Размещено в howto
Просмотров 2864 Комментарии 6
Всего комментариев 6
Комментарии
  1. Старый комментарий
    Еще бы надо прописать разницу между msys2 и msys2-base.
    А то не совсем ясно, какую качать.
    Запись от ValeryLaptev размещена 11.11.2016 в 19:48 ValeryLaptev вне форума
  2. Старый комментарий
    Ужас.
    Столько действий что бы просто добавить компилятор Clang в Code::Blocks !
    Да еще попробуй сам сделай ! Без помощи не риально !
    MSYS2 32bit загрузила больше 1 гига всякой гадости.
    Ставилось минут 20.
    Решил посмотреть размер папки MSYS2. Размер был скромный ! 3 гига 148 метров.
    На трёхдюймовую дискету как раз влезает ))

    Мягко говоря не приятное впечатление от всего этого безобразия и установки Clang в Code::Blocks.
    Мрак.
    Запись от ronniko размещена 25.01.2019 в 12:35 ronniko вне форума
  3. Старый комментарий
    Решил проверить как работает Clang в Code::Blocks и скомпилить с++:
    C++
    1
    2
    3
    4
    5
    6
    7
    
    #include <iostream>
    using namespace std;
     
    int main(){
        cout << "Hello world!" << endl;
        return 0;
    }
    Выдало:
    ||=== Build: Release in console (compiler: LLVM Clang Compiler) ===|
    ||warning: argument unused during compilation: '-s' [-Wunused-command-line-argument]|
    ||error: linker command failed with exit code 1104 (use -v to see invocation)|
    ||=== Build failed: 1 error(s), 1 warning(s) (0 minute(s), 0 second(s)) ===|

    PS: Моей радости не было конца и края ! А веселые и задорные слова сами вырывались из уст !
    Запись от ronniko размещена 25.01.2019 в 13:10 ronniko вне форума
  4. Старый комментарий
    Для себя сделал вывод.
    Или ставить Code blocks с mingw (будет 300 метров)
    Или не мучатся и ставить сразу Visual studio 2014 (она к стати делает Release exe малого размера ).
    Visual studio 2014 установленная весит 3 гига 600 метров.

    PS: Code blocks можно запутаться когда стоят разные версии того же Clang. Это создает много лишних телодвижений.
    Запись от ronniko размещена 25.01.2019 в 14:50 ronniko вне форума
  5. Старый комментарий
    Аватар для Avazart
    Нафига Вам вообще сдались кодеблохи и минГиви ? Вот смысл?
    Как по мне лучше использовать QtCreator + Qt + MSVC. И гуи и консоль и меньше мороки с прикручиванием других либ.
    Запись от Avazart размещена 25.01.2019 в 18:25 Avazart на форуме
  6. Старый комментарий
    Я например скачав 300 метров Code::Blocks подумал как классно.
    И думал что clang так же легко и быстро прикрутить к Code::Blocks
    А оно вон как вышло.

    Так что я купился на малый размер Code::Blocks и быструю установку.
    А потом начались сюрпризы.
    Запись от ronniko размещена 28.01.2019 в 10:06 ronniko вне форума
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.