Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/29: Рейтинг темы: голосов - 29, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 02.12.2015
Сообщений: 63

Разработка компилятора на C++ под код с++

13.01.2017, 15:47. Показов 5824. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята мне нужно создать компилятор по виду как программа в которую пишешь с++ код и выбираешь ОС (Windows, MS-DOS, Linux и тд.), а сам компилятор компилирует прогу(код с++) под другую ОС и создает файлик с расширением той же ОС что выбрал. Может кто написать как это можно реализовать или накидать ссылок, именно в какой очередности сделать этот компилятор, потому как много гуглил как это можно сделать, но информации очень много только об создании компилятора под свой язык, либо что то очень замудренное. Не ищу халявы, просто описать как на ваше мнение это реализовать. Извиняюсь мб написал не в ту тему, потому как не очень пойму куда лучше написать.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.01.2017, 15:47
Ответы с готовыми решениями:

Установка компилятора под Windows 7
Я совсем новенькая в C++, что-то как-то писать умею только на Паскале Т_Т Но я бы очень хотела научиться и в моей голове уже есть мини...

Выбор компилятора под windows
Здавствуйте,хотел узнать ваше мнение по поводу выбора компилятора языка C++(бесплатного) под ОС Windows XP. Visual c++ не предлагать,...

Стартовый код компилятора VS
Программа написанная на C++ под отладкой показывает, много кода, который явно не включался в исходный код в отличие от программы...

24
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
16.01.2017, 20:54
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от vetalka2010 Посмотреть сообщение
Какой компилятор посоветуете написать(который по вашему мнению не очень сложный)
Компилятор скриптов для визуальных новелл. Возможности языка:
1) Сменить фоновую картинку.
2) Воспроизвести звук.
3) Сменить/убрать текст над картинкой.
4) Предложить пользователю выбор и куда ни будь этот выбор сохранить.
5) Условное ветвление, на основе ранее захомяченного выбора пользователя.
На такие блага цивилизации как встроенные мини-игры не замахиваемся.
Чтобы получить более точное представление - погоняйте произвольную визуальную новеллу и прикиньте в голове что у нее там под капотом.
0
 Аватар для Fulcrum_013
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
16.01.2017, 21:11
Цитата Сообщение от vetalka2010 Посмотреть сообщение
в которую пишешь с++ код и выбираешь ОС (Windows, MS-DOS, Linux и тд.), а сам компилятор компилирует прогу(код с++)
Компилятор то может быть и один, только со сменным кодогенератором. НАпример clang который компилит в промежуточное представление LLVM а оно уже практически куда угодно докомпилируется. А вот унифицированных сменных оберток API под каждую из осей наберется с гектар сырцов.
0
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
17.01.2017, 01:54
Цитата Сообщение от vetalka2010 Посмотреть сообщение
возможно у кого есть опыт в написании компилятора
Ну, в качестве одной из студенческих работ я при помощи LLVM реализовал компилятор некоторой части древненького Паскаля 1973 года.
Цитата Сообщение от vetalka2010 Посмотреть сообщение
есть советы в данном направлении
Советую ограничиться языком с простым синтаксисом, простым не в плане удобства написания кода, а вплане удобства его парсинга. Во вторых, можно реализовать только часть предполагаемого языка, ограничившись не самыми сложными конструкциями.
Как уже сказали раньше - пиши на ООП-языке (C++, Ява, python и т.д.). Парсер можно реализовать методом рекурсивного спуска. Генератор кода можно соорудить при помощи LLVM, для какого-нибудь простого языка можно вручную генерировать ассемблерный код. (В другой моей курсовой работе довольно простенький язык программирования транслировался в язык стековой машины ^^). Если лень вручную писать лексический анализатор, да описывать грамматику языка, то можно вооружиться Flex'ом и Bison'ом (или любым другим инструментом).
Все, что вспомнил по теме, я перечислил.
1
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
17.01.2017, 16:12

Не по теме:

Цитата Сообщение от Evg Посмотреть сообщение
По секрету могу сказать, что компиляторы пишут на Си (а не на Си++)
по секрету:
gcc уже давно на плюсы мигрировал.



Добавлено через 3 минуты

Не по теме:

Цитата Сообщение от Renji Посмотреть сообщение
А смысл писать на языке, допускающем конструкцию вида double*test="test"? Ну, кроме "тщеславия маркетингового хода".
что то мне это навеяло:
Cреди программистов носит неофициальный титул «кроссплатформенного ассемблера». Ответственность за корректную работу программы целиком и полностью лежит на программисте, за что Си ненавидим быдлокодерами и, что важно, их начальством. Хорошо мотивированного project manager'а, писавшего когда-то в патлатой молодости на Java, легко можно ввести в ступор, предъявив часть проекта на Си.
Быдлокод на Си обычно чуть более, чем полностью состоит из переполняющихся буферов и битья памяти, а также является излюбленной мишенью для экспериментов кулхацкеров.
(ц)
:)

1
Форумчанин
Эксперт CЭксперт С++
 Аватар для MrGluck
8217 / 5048 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
17.01.2017, 17:35
Цитата Сообщение от Evg Посмотреть сообщение
три красные кнопки "скомпилировать под дос", "скомпилировать под виндовс", "скомпилировать под линукс"
А я думал, ему нужно одну "Сделать красиво".

Цитата Сообщение от vetalka2010 Посмотреть сообщение
по какому примеру лучше делать
Если вы всерьёз хотите заняться разработкой компилятора (а я на 99% уверен, что вам это не нужно и из оставшегося 1% на 99% уверен, что вы это бросите/не осилите), то есть классика - книга с драконом. «Компиляторы. Принципы, технологии и инструментарий» автора Альфред В. Ахо, Моника С. Лам, Рави Сети, Джеффри Д. Ульман.

Не по теме:

Добавлено через 2 минуты

Цитата Сообщение от hoggy Посмотреть сообщение
gcc уже давно на плюсы мигрировал.
Да, у Торвальдса по этому поводу знатно бомбило.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.01.2017, 17:35

Мой код вызывает аварийное завершение компилятора
Я использую компилятор Borland C++ 5.1 Выполнение след. кода вызывает аварийное завершение компилятора: #include <iostream.h> ...

Разработка примитивиного компилятора на C#
Доброго времени суток. Нужна помощь в написании для учебы. Пример написанного компилятора прикреплен в архиве. На основе его...

Разработка интерпретатора, а позже компилятора для C++
Суть проекта, разработка интерпретатора, позже кимпилятора для, ЯП C++. Проект некомерческий и направлен только на набор опыта в...

Что перспективнее - разработка игр под мобильные платформы или разработка embedded-систем
Доброго времени суток. Скажите пожалуйста, как вы думаете, что перспективней в будущем - разработка игр под мобильные платформы (Android,...

Ошибка в программе из под компилятора FPC
Люди помогите с кодом. При компиляции в FPC, программа завершает работу с ошибкой Runtime error 216, при компиляции кода в BP7 программа...


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0» https:/ / ibb. co/ NnkGpfMd Представленная интегрированная схема описывает непрерывную нелинейную. . .
сукцессия 13. Питон модель трехзонного мицелия, пока что в основном арбускулярного
anaschu 28.06.2026
## Разработка агентной модели микоризной сукцессии: от выявления артефактов к созданию комплексной системы ### Аннотация Представлено исследование по разработке агентной модели микоризной. . .
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики Контекст Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии Введение Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np class PlantAgent: def __init__(self, name, strategy, initial_biomass): self. name = name self. strategy = strategy # "greedy" (широколиственные) или. . .
сукцессия 9. Математика подлости: как растения предали грибных друзей
anaschu 27.06.2026
Статья 2. Глобальная фосфорная война: эволюционно-экономические механизмы распределения биомов Земли Введение: Экологический рынок как игра с нулевой суммой Традиционная экология долгое время. . .
сукцессия 8. Как я спорил с ИИ, которые - агенты растений и ненавистники грибов!
anaschu 27.06.2026
Статья 1. Хроники грибного восстания: как Сократов диалог разрушил академические догмы ИИ Введение: Синдром «цифрового учебника» Современные большие языковые модели (LLM) обладают колоссальным. . .
Главный вопрос моделирования сукцессии
anaschu 27.06.2026
главный вопрос. Если эктомикориза лучше добывает недоступный фосфор. И ее масса максимальна из всех. А широколиственный лес тоже имеет самую крутую биомассу. То почему не возникло их симбиоза? Это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru