2016-03-15 2 views
-4

Я нашел программу на github. Я пытаюсь скомпилировать и запустить, но не могу понять, как и надеялся, что кто-то сможет пройти меня по шагам на нем. Это то, что я должен использовать для командной строки?Компиляция компилятора Найдена на GitHub

Программа размещена здесь Compiler. Это компилятор c-minus, нацеленный на Tiny Machine Virtual Machine. Я пытаюсь немного повеселиться. Инструкции о том, как компилировать и использовать, немного туманны для меня.

Я чрезвычайно новичок в этом деле, поэтому шаг за шагом, пошатнутые инструкции были бы очень признательны!

+1

Конечно, некоторые шампанское и устрицы тоже. Это не форум поддержки этого сайта. – Olaf

+0

@olaf, куда мне пойти, чтобы спросить/узнать, как тогда – Bob

+0

@immibis Я попытался перейти в командную строку, перейти в каталог и сделать то, что было сказано под 'Usage' в нижней части ссылки, которую я опубликовал – Bob

ответ

3

Если вы используете систему Линукс или MacOS, шаги довольно легко:

  • Clone проект с git clone https://github.com/koyabr/C-Compiler.git
  • cd C-Compiler
  • удалить файлы main и tm. Они не должны находиться под контролем источника
  • исправить файлы AST.h и AST.c, изменить слова ID на id.
  • пробег make

Патч требуется, поскольку flex генерирует препроцессора макросы, которые конфликтуют с именами аргументов функции в AST.c и AST.h

Этот игрушечный язык является основой компьютерных курсов в различных университетах, другие источники могут можно найти:

+0

Что мне делать с 'main' и' tm'? разве это не нужно, чтобы заставить его работать? – Bob

+0

'main' и' tm' являются исполняемыми файлами. Если вы не запускаете ту же платформу, что и автор, они не будут запускаться в вашей системе. Вы должны создать свою собственную версию из источников, запустив команду 'make'. Какую систему вы используете? – chqrlie

+0

Используйте последнюю ссылку, https://github.com/codedhead/cminus в visual studio 2010 (в 2015 году будут проблемы). Я просто подтверждаю, что он строит одним щелчком мыши. – zeromus

1

https://github.com/zeromus/C-Compiler


инструкции туманны, потому что это самый простой возможно программное обеспечение для создания, не требуя каких-либо инструкций, ни даже каких-либо работ - за исключением окон. Построение некоторых видов программного обеспечения чрезвычайно сложно в визуальной студии. Вам нужно найти общие рекомендации о том, как создать программное обеспечение unix в окнах, и отказаться от мечты об использовании визуальной студии.

Но так как я создаю программное обеспечение unix в окнах для отдыха, вот как я это сделал.

запустить инсталлятор х86 здесь https://www.cygwin.com/ поиска и включает в себя:

gcc-g++ flex bison make (all in the devel category) 

запустить установленную cygwin.bat; выполните следующие команды:

cd c:/path/to/c-compiler 
make 

поздравления, теперь у вас есть parse.c, parse.h и scan.c. Кроме того, у вас есть main.exe - если все, что вы хотите сделать, это запустить программу, все готово.

Последний шаг - ОСТАНОВИТЬСЯ! Не пытайтесь использовать визуальную студию.

Если вы настаиваете на взломе на нем в визуальной студии 2015 года, то у вас большие проблемы. Это требует навыков высокого уровня. Вы, по сути, спрашиваете, как буксировать лодку с мотоциклом. Это требует перестройки вашего мотоцикла в грузовик. Я напишу шаги, чтобы вы могли видеть, в какой степени вы находитесь.

Сделайте новое консольное приложение win32, проверьте пустой проект, снимите флажки SDL-проверок, перетащите все файлы .c и .h.

Теперь щелкните правой кнопкой мыши проект в обозревателе решений, сделать свойства, изменить конфигурацию, чтобы перейти к отладке, перейдите в C/C++, препроцессора и добавить

_CRT_SECURE_NO_WARNINGS;_CRT_INSECURE_NO_DEPRECATE 

для определения препроцессора.

Теперь, щелкните правой кнопкой мыши проект в проводнике решений, выполните свойства, измените конфигурацию, чтобы перейти к отладке, перейдите в c/C++, общий и добавьте. (только точка) для дополнительных включают каталоги

идите сюда Is there a replacement for unistd.h for Windows (Visual C)? и получите содержимое unistd.h. Создайте его рядом с созданной визуальной студией vcxproj.

Идите сюда http://www.codeproject.com/Articles/157001/Full-getopt-Port-for-Unicode-and-Multibyte-Microso, чтобы получить источники getopt. Да, вам нужно войти в систему. Кодепроект - это груда сосать.

Погрузите его вместе со своим vcxproj. Перетащите .h и .c в свой проект. Удалить tm.c из вашего проекта.

Теперь используйте визуальную студию для ее создания.

поздравления, у вас теперь есть компилятор.

ПОВТОРИТЬ ЭТО ВСЕ СНОВА С ДРУГИМИ ДИРЕКТОРАМИ; но удалите main.c в конце.

поздравления, у вас теперь есть машина.

Есть лучшие способы сделать все это, но они еще сложнее.

+0

Я использовал cygwin для другого класса, я попробовал это, и это то, что я получил «User @ User-HP/cygdrive/c/Users/User/Desktop/C-Compiler-master/C-Compiler-master $ make -bash : make: command не найден ' – Bob

+0

Извините, я оставил' make' из списка депо. В общем, если вы в cygwin, и он говорит, что команда X: не найдена, вы можете рассмотреть поиск X в установщике cygwin ....... – zeromus

+0

Я выбираю для 'src', а также' bin'? – Bob

Смежные вопросы