Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH-2G(i)

Вопросы о SMH-2G(i) Здесь всё, что касается работы контроллера SMH-2G(i).

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.01.2017, 15:17   #1
Amidamaru
Новичок
 
Регистрация: Jan 2017
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Создание проекта С++

Добрый день. Я новичок в С++. Пытаюсь создать новый проект на C++ для контроллера, делаю все по инструкции: SMH2GI Программирование на С Руководство. Не могу скомпилировать полученный проект, ничего в нем не создавал и не изменял, в нем только вечный цикл. Виртуалку брал с вашего сайта. Компилятор выдает следующую ошибку: gcc trying to exec 'cc1plus': execvp: Нет такого файла или каталога. Судя по всему проект C++ пытается скомпилироваться компитятором G, а не G++. Проект Demo компилируется нормально, но там отличаются makefile-ы. Подскажите почему в новом проекте создался не верный makefile и как его поправить. Боюсь простое copy-paste makefile-а не сработает. Заранее благодарю.
Amidamaru вне форума   Ответить с цитированием
Старый 24.01.2017, 18:55   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от Amidamaru Посмотреть сообщение
Добрый день. Я новичок в С++. Пытаюсь создать новый проект на C++ для контроллера, делаю все по инструкции: SMH2GI Программирование на С Руководство. Не могу скомпилировать полученный проект, ничего в нем не создавал и не изменял, в нем только вечный цикл. Виртуалку брал с вашего сайта. Компилятор выдает следующую ошибку: gcc trying to exec 'cc1plus': execvp: Нет такого файла или каталога. Судя по всему проект C++ пытается скомпилироваться компитятором G, а не G++. Проект Demo компилируется нормально, но там отличаются makefile-ы. Подскажите почему в новом проекте создался не верный makefile и как его поправить. Боюсь простое copy-paste makefile-а не сработает. Заранее благодарю.
Пути до компилятора поправьте в мейк-файле и свойствах проекта.

Правильный путь: /opt/arm2008q3/arm-none-linux-gnueabi/bin


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.01.2017, 19:17   #3
Amidamaru
Новичок
 
Регистрация: Jan 2017
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Спасибо. Попробую завтра на работе. Ещё есть вопрос относительно С++ на контроллере. Глобальные переменные в программе C++ сохраняются в энергонезависимой памяти, наподобие механизма ARRAY в SMLogix, или их значения сбросятся после перезапуска контроллера?
Amidamaru вне форума   Ответить с цитированием
Старый 24.01.2017, 19:23   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от Amidamaru Посмотреть сообщение
Спасибо. Попробую завтра на работе. Ещё есть вопрос относительно С++ на контроллере. Глобальные переменные в программе C++ сохраняются в энергонезависимой памяти, наподобие механизма ARRAY в SMLogix, или их значения сбросятся после перезапуска контроллера?
Конечно же нет.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.01.2017, 19:31   #5
Amidamaru
Новичок
 
Регистрация: Jan 2017
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Извините за мою непонтяливость, но "Конечно нет" это: Глобальные переменные НЕ сохраняются в постоянной памяти, или же они НЕ сбрасываются после перезапуска контроллера?
Amidamaru вне форума   Ответить с цитированием
Старый 24.01.2017, 20:07   #6
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от Amidamaru Посмотреть сообщение
Извините за мою непонтяливость, но "Конечно нет" это: Глобальные переменные НЕ сохраняются в постоянной памяти, или же они НЕ сбрасываются после перезапуска контроллера?

Си/C++ - это язык третьего поколения. А это значит, что компилятор вас "за ручку" водить не будет. Всё делаете сами.

Сами память выделяете, сами очищаете её. Сами сохраняете туда значения и читаете их оттуда. И в файл сохраняете, если вам надо. Вовремя сохраняете - это отдельная история. С проверкой, записалось ли и обработкой всех ошибок записи. Причём сохранение в файл - это не то, чтобы "выплюнул куда-то данные и забыл". Это нужно открыть устройство, проверить носитель, проверить файловую систему, проверить возможность записи и наличие свободного места. И только потом создавать или модифицировать файл. Который потом корректно закрывать, скидывать буферы (тоже вовремя!). И если на каком-то шаге будет отказ, а он обязательно будет рано или поздно, этот отказ нужно корректно разрулить.

Судя по вашим вопросам, вы с какого-то ЯВУ одного из последних поколений пришли. Где шаг вправо-влево считается побегом, а прыжок на месте - провокацией. И всё выполнение происходит в "песочнице" с сохранением состояния программы при её закрывании.

Си/C++ не такой.

Он не то, чтобы на нашем контроллере не такой. Или в Линуксе не такой. Он по жизни не такой. Особенно Си.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.01.2017, 20:17   #7
Amidamaru
Новичок
 
Регистрация: Jan 2017
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Это все конечно очень интересно, но от начала программирования меня отделят только один вопрос, сбросятся ли глобальные переменные в программе на С++ или нет?
Amidamaru вне форума   Ответить с цитированием
Старый 24.01.2017, 20:37   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от Amidamaru Посмотреть сообщение
Это все конечно очень интересно, но от начала программирования меня отделят только один вопрос, сбросятся ли глобальные переменные в программе на С++ или нет?
Они перестанут существовать.

В вашей терминологии это да, сбросятся.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 24.01.2017, 21:03   #9
Amidamaru
Новичок
 
Регистрация: Jan 2017
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Спасибо=)
Amidamaru вне форума   Ответить с цитированием
Старый 26.01.2017, 09:14   #10
Amidamaru
Новичок
 
Регистрация: Jan 2017
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Решилось путем создания makefile в ручную, по той же инструкции.
Amidamaru вне форума   Ответить с цитированием
Старый 09.02.2017, 07:48   #11
terrabit
Новичок
 
Регистрация: Feb 2017
Сообщения: 19
Благодарил(а): 1 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Добрый день!
Начал осваивать программирование контроллера «SMH 2Gi» на С++ по руководству. При попытке создания проекта в NetBeans (как описано в руководстве) получаю ошибку следующего содержания:

/usr/bin/gcc -c -g3 -gdwarf-2 -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -o main.o main.cpp
gcc: error trying to exec 'cc1plus': execvp: Нет такого файла или каталога
make: *** [main.o] Ошибка 1

MAKE FAILED (значение выхода 2, общее время: 172мс)


Все предыдущие пункты делал так же по руководству. Подскажите, в какую сторону копать.
terrabit вне форума   Ответить с цитированием
Старый 09.02.2017, 12:40   #12
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от terrabit Посмотреть сообщение
Добрый день!
Начал осваивать программирование контроллера «SMH 2Gi» на С++ по руководству. При попытке создания проекта в NetBeans (как описано в руководстве) получаю ошибку следующего содержания:

/usr/bin/gcc -c -g3 -gdwarf-2 -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -o main.o main.cpp
gcc: error trying to exec 'cc1plus': execvp: Нет такого файла или каталога
make: *** [main.o] Ошибка 1

MAKE FAILED (значение выхода 2, общее время: 172мс)


Все предыдущие пункты делал так же по руководству. Подскажите, в какую сторону копать.
Написано же:

gcc: error trying to exec 'cc1plus': execvp: Нет такого файла или каталога


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 10.02.2017, 05:42   #13
terrabit
Новичок
 
Регистрация: Feb 2017
Сообщения: 19
Благодарил(а): 1 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата:
Сообщение от Arsie Посмотреть сообщение
Написано же:

gcc: error trying to exec 'cc1plus': execvp: Нет такого файла или каталога
Ладно, согласен, некорректно задал вопрос... А почему его нет, где взять и куда положить?
terrabit вне форума   Ответить с цитированием
Старый 10.02.2017, 13:31   #14
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от terrabit Посмотреть сообщение
Ладно, согласен, некорректно задал вопрос... А почему его нет, где взять и куда положить?
У меня компилятор лежит в /opt/arm2008q3/arm-none-linux-gnueabi/bin/gcc

Qt я не использую.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 13.02.2017, 11:31   #15
plotnik
Новичок
 
Регистрация: Jan 2017
Сообщения: 10
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата:
Сообщение от Arsie Посмотреть сообщение
У меня компилятор лежит в /opt/arm2008q3/arm-none-linux-gnueabi/bin/gcc

Qt я не использую.
Хорошо, компилятор у Вас в /opt/arm2008q3/arm-none-linux-gnueabi/bin/gcc. А где у вас лежит для него препроцессор?
plotnik вне форума   Ответить с цитированием
Старый 13.02.2017, 11:45   #16
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от plotnik Посмотреть сообщение
Хорошо, компилятор у Вас в /opt/arm2008q3/arm-none-linux-gnueabi/bin/gcc. А где у вас лежит для него препроцессор?
Картинка.
Миниатюры
Нажмите на картинку для увеличения

Название:  Безымянный.png
Просмотров: 141
Размер:  172.5 Кбайт  


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 14.02.2017, 07:20   #17
terrabit
Новичок
 
Регистрация: Feb 2017
Сообщения: 19
Благодарил(а): 1 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата:
Сообщение от Arsie Посмотреть сообщение
Картинка.
Выставил адреса, как показано на скриншоте. Даже установил g++. Ошибка всё равно сохраняется. Прошу сильно не ругаться, т.к. в программировании я чайник.
terrabit вне форума   Ответить с цитированием
Старый 14.02.2017, 11:19   #18
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от terrabit Посмотреть сообщение
Выставил адреса, как показано на скриншоте. Даже установил g++. Ошибка всё равно сохраняется. Прошу сильно не ругаться, т.к. в программировании я чайник.
С++ не является предоставляемой нами средой программирования.

Также мы не в силах оказывать техническую поддержку в этом направлении. Линукс и С++ существуют несколько десятков лет, в интернете достаточно материалов для самостоятельного изучения. Тем более, что вы программирования пока ещё и не касались.

По SMLogix будут вопросы - обращайтесь, обязательно поможем!


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 21.07.2023, 13:40   #19
RomanBRIZ
Member
 
Регистрация: Jun 2021
Сообщения: 91
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Столкнулся с такой же проблемой: error trying to exec 'cc1plus':
Что бы его загрузить командой:
sudo apt-get install g++
Требуется пароль...
Пароль сегнетикс не подходит.
Какой пароль рут?
ПС. Программу планируется писать для Матрикс.
RomanBRIZ вне форума   Ответить с цитированием
Старый 21.07.2023, 14:09   #20
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от RomanBRIZ Посмотреть сообщение
Столкнулся с такой же проблемой: error trying to exec 'cc1plus':
Что бы его загрузить командой:
sudo apt-get install g++
Требуется пароль...
Пароль сегнетикс не подходит.
Какой пароль рут?
ПС. Программу планируется писать для Матрикс.
Если контроллер новый, то сегнетикс. Если не новый, то тот, который поставлен при загрузке проекта.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 21.07.2023, 14:17   #21
RomanBRIZ
Member
 
Регистрация: Jun 2021
Сообщения: 91
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

Имелось ввиду пароль для виртуальной машины. Ведь среда разработки в которой возникает проблема с сс1плюс находится в виртуальной машине.
RomanBRIZ вне форума   Ответить с цитированием
Старый 21.07.2023, 14:21   #22
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Создание проекта С++

Цитата
Сообщение от RomanBRIZ Посмотреть сообщение
Имелось ввиду пароль для виртуальной машины. Ведь среда разработки в которой возникает проблема с сс1плюс находится в виртуальной машине.
"1"


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 21.07.2023, 14:29   #23
RomanBRIZ
Member
 
Регистрация: Jun 2021
Сообщения: 91
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Создание проекта С++

RomanBRIZ вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение готового проекта (пароувлажнитель на "всегда" вместо "зимой") Dmitry_S SMConstructor (вентиляция) 7 28.06.2022 17:09
Ошибка создании временного проекта (решено) homerjey SMLogix 2 08.09.2019 02:08
Перенос настроек SMConfig из проекта в проект max7222 SMConnect & SMConfig 2 20.07.2017 11:55
Ошибка загрузки проекта (решено) PA3JlUBHOE Вопросы о SMH-2G 5 13.03.2017 21:41
Проблема с загрузкой проекта в контроллер kryna SMLogix 10 28.12.2016 19:55


Часовой пояс GMT +4, время: 01:25.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2023