Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20

Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2

03.10.2015, 18:48. Показов 10913. Ответов 57

Студворк — интернет-сервис помощи студентам
По мотивам этой темы:
Цитата Сообщение от DrOffset
Потом этот же компилятор (хоть mingw, хоть clang) можно и в Qt Creator подключить.
DrOffset, а как?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.10.2015, 18:48
Ответы с готовыми решениями:

Пытаемся прикрутить CMake к QtCreator под OS X
Доброе время суток, навеяло темой о самой лучшей IDE! И так собрался я подружить Qt и cmake (Qbs что то мне не пошел)! С начало полез...

Пытаемся подружить clang 3.6 и Code::Blocks 13.12 + MinGW под Windows 7
Скачал clang. Установил в корень диска С. То есть, путь получился такой: До этого у меня уже был установлен Code::Blocks 13.12 в...

Среда разработки под windows7-x64
посоветуйте пожалуйста нормальную среду разработки под windows7-x64

57
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:05  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от DrOffset Посмотреть сообщение
При первом запуске у тебя должно быть также.
DrOffset, вот только что сделал новый проект:
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
04.10.2015, 15:15
Лучший ответ Сообщение было отмечено gru74ik как решение

Решение

Цитата Сообщение от gru74ik Посмотреть сообщение
вот только что сделал новый проект
Попробуй генератор убрать (-G "MSYS Makefiles" из параметров). У меня это ни на что не влияет, но по идее генератор он сам подставит. Это как бы лишнее тут.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:17  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Попробуй генератор убрать (-G "MSYS Makefiles" из параметров). У меня это ни на что не влияет, но по идее генератор он сам подставит. Это как бы лишнее тут.
Ура!!!
Заработало!
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:22  [ТС]
DrOffset, обычный HelloWorld победили:
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:24  [ТС]
DrOffset, а код посложнее почему-то падает:
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:36  [ТС]
DrOffset, ну и где и как C++11 (ну или С++14) включать - тоже непонятно:
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
What a waste!
 Аватар для gray_fox
1612 / 1304 / 180
Регистрация: 21.04.2012
Сообщений: 2,735
04.10.2015, 15:39
Лучший ответ Сообщение было отмечено gru74ik как решение

Решение

Цитата Сообщение от gru74ik Посмотреть сообщение
DrOffset, ну и где и как C++11 (ну или С++14) включать - тоже непонятно
В параметры CMake:
Code
1
-DCMAKE_CXX_FLAGS="-std=c++11"
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
04.10.2015, 15:46
Лучший ответ Сообщение было отмечено gru74ik как решение

Решение

Цитата Сообщение от gru74ik Посмотреть сообщение
ну и где и как C++11 (ну или С++14) включать - тоже непонятно
В CMakeLists добавь:
set(CMAKE_VERBOSE_MAKEFILE 1)

include(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
if(COMPILER_SUPPORTS_CXX11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
elseif(COMPILER_SUPPORTS_CXX0X)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
else()
message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
endif()
Должно выводить при сборке следующее:

Заодно проверим правильно ли у тебя все подключилось.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:49  [ТС]
DrOffset, gray_fox, работает!

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
#include <vector>
#include <algorithm>
#include <ctime>
 
typedef std::vector<int> Ivec;
typedef std::vector<int>::iterator Iter;
 
void fill_rand(Ivec & arr);
void show(Ivec &arr);
 
int main()
{
    const int ARR_SIZE = 24;
    Ivec myarray(ARR_SIZE);
    fill_rand(myarray);
    show(myarray);
    Iter max_it = std::max_element(myarray.begin(),myarray.end());
    Iter min_it = std::min_element(myarray.begin(),myarray.end());
    std::cout << "Maximal element is " << *max_it << "\n";
    std::cout << "Minimal element is " << *min_it << "\n";
    myarray.erase(max_it);
    myarray.erase(min_it);
    myarray.shrink_to_fit();
    show(myarray);
    return 0;
}
 
void fill_rand(Ivec & arr)
{
    srand(unsigned(time(0)));
 
    for (std::size_t i = 0; i < arr.size(); ++i)
        arr.at(i) = (10 + rand()%90);
}
 
void show(Ivec & arr)
{
    for (auto each_element : arr)
        std::cout << each_element << " ";
    std::cout << "\n";
}
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:54  [ТС]
gray_fox, у меня в итоге в параметрах такая писанина получилась:
-DCMAKE_CXX_FLAGS="-std=c++14" -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++
0
What a waste!
 Аватар для gray_fox
1612 / 1304 / 180
Регистрация: 21.04.2012
Сообщений: 2,735
04.10.2015, 15:57
gru74ik, лучше добавить сразу в CMakeLists, как писал DrOffset.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 15:59  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Заодно проверим правильно ли у тебя все подключилось.
DrOffset, вот сообщения:
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 16:07  [ТС]
Цитата Сообщение от gray_fox Посмотреть сообщение
gru74ik, лучше добавить сразу в CMakeLists, как писал DrOffset.
gray_fox, так и сделал.

Добавлено через 7 минут
Цитата Сообщение от DrOffset Посмотреть сообщение
В CMakeLists добавь
DrOffset, а можно же немножко расширить список параметров?
set(CMAKE_VERBOSE_MAKEFILE 1)

include(CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-std=c++1z" COMPILER_SUPPORTS_CXX1Z)
CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX14)
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
if(COMPILER_SUPPORTS_CXX1Z)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++1z")
elseif(COMPILER_SUPPORTS_CXX14)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
elseif(COMPILER_SUPPORTS_CXX11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
elseif(COMPILER_SUPPORTS_CXX0X)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
else()
message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
endif()
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
04.10.2015, 16:09
Цитата Сообщение от gru74ik Посмотреть сообщение
а можно же немножко расширить список параметров?
Конечно.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 16:12  [ТС]
DrOffset, получается!
Благодарю, дорогой друг! Без тебя ничего бы не получилось.
Миниатюры
Пытаемся прикрутить Clang к QtCreator под Windows7 x64 посредством MSYS2  
0
19505 / 10108 / 2463
Регистрация: 30.01.2014
Сообщений: 17,828
04.10.2015, 16:14
Цитата Сообщение от gru74ik Посмотреть сообщение
Благодарю, дорогой друг!
Не за что
verbose,
set(CMAKE_VERBOSE_MAKEFILE 1)
кстати, можешь убрать. Я его для теста только вписал.
1
What a waste!
 Аватар для gray_fox
1612 / 1304 / 180
Регистрация: 21.04.2012
Сообщений: 2,735
04.10.2015, 16:17
Цитата Сообщение от gru74ik Посмотреть сообщение
DrOffset, а можно же немножко расширить список параметров?
А смысл? Если ваш проект собирается с с++11, то -std=c++11 достаточно; если же нужен например с++14, то тогда не нужно вообще давать возможность собирать с -std=с++11.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
04.10.2015, 16:19  [ТС]
Цитата Сообщение от gray_fox Посмотреть сообщение
А смысл? Если ваш проект собирается с с++11, то -std=c++11 достаточно; если же нужен например с++14, то тогда не нужно вообще давать возможность собирать с -std=с++11.
Ну просто проверка поддержки разных стандартов. А так-то, да.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.10.2015, 16:19

Выбор SSD под Windows7 x64 Ultimate
Доброго времени суток форумчане. Прошу помочь в выборе SSD под систему. Обьём от 90Гб до 120Гб. Бюджет около 7000р Особенно интересует...

X32-VS-X64-VS-Clang
Добрый день. Форум поддержки RadStudio, утверждает ,что компилятор CLANG в XE10, отлично оптимизирует, что приводит к ускорению...

Купили древний картомат пытаемся воскресить под свои цели
Суть вопроса в том, что имеется картомат служивший для продажи карт оплаты мобильного телефона,вставляем свои карты он их не видит,может...

VirtualBox: можно ли установить гостевую Windows7 под хостовой системой Windows7?
можно ли установить Virtual Box с операционкой Windows 7 в реальную среду Windows 7 чтобы работать в виртуалке и ничего не повредить в...

Windows7 x64 0x0000006b
Здравствуйте! При запуске Windows вылетает BSOD с ошибкой 0x0000006b (0xFFFFFFFFC0000034, 0x0000000000000002, 0x0000000000000000,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
58
Ответ Создать тему
Опции темы

Новые блоги и статьи
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru