Вход

Просмотр полной версии : Компиляция с помощью Minimalist PSPSDK for Windows


ErikPshat
17.04.2010, 08:53
Инструкция ну совсем для новичков
Кто решил скомпилировать программу впервые.

В общем установка в два простых этапа. Третий этап больше для тех, кто сам пишет программы.


1 этап - Скачивание исходников с SVN.



Для скачивания исходных кодов:



Качаем и устанавливаем TortoiseSVN (http://tortoisesvn.net/downloads) под вашу ОС (32 bit или 64 bit). По желанию, можно там-же взять русификатор.


Если качаем исходники с HG серверов, то устанавливаем TortoiseHG with Mercurial (http://tortoisehg.bitbucket.org/).



Создаём любую папку в любом месте на компе.


Нажимаем по этой папке правой кнопкой и выбираем "SVN Checkout...". Для HG серверов выбираем "TortoiseHG => Clone..."


В открывшемся окне вводим, например, следующий путь к SVN с исходниками и жмём "ОК":
https://valentine-hbl.googlecode.com/svn/trunk/


Всё, все исходники скачиваются в эту папку. И эта папка помечается специальным маркером.


Для обновления, просто нажимаем по этой папке правой кнопкой и выбираем "SVN Update".


Если хотите откатиться до старой ревизии, то нажимаем на папке правой кнопкой и выбираем "TortoiseSVN -> Update to revision...", вводите номер ревизии и "ОК".
Всё, нужная ревизия закачается взамен текущей.



2 этап - Компиляция из исходников.

Скачиваем последнюю версию PSP SDK для Windows: Minimalist PSPSDK for Windows (http://sourceforge.net/projects/minpspw/)


Запускаем установщик и в этом окне проставляем все галочки.
Галочку на "Visual Studio Support" ставим только, если у вас уже установлена программа Microsoft Visual Studio (http://rutracker.org/forum/viewtopic.php?t=3400202).

5325


После установки PSPSDK, просто проверяем, всё ли правильно у нас установилось.
Заходим в "Пуск => Выполнить...", пишем в окошке команду "cmd" и в открывшемся окне консоли вводим команду:

psp-gcc -v

Эта команда выводит на экран настройки и версию компилятора GCC.
Теперь проверим, что за версия исполняемого компилятора MAKE, вводим команду:

make -v

У вас должно отобразиться что-то наподобии этого
(красным - введённые первая и вторая команды; зелёным - ответы на команды)

5324

Если вывелось что-то не так или выдались ошибки, значит у вас что-то установилось не так.


Для примера, скачайте и разархвируйте архив с элементарными исходниками "HelloWorld.rar (https://www.pspx.ru/forum/attachment.php?attachmentid=5380)", которые мы попробуем скомпилировать.
В папке с исходниками, гле лежат "main.c" и "makefile", создаём обычный текстовой документ, в который вписываем путь к компилятору make.exe из комплекта SDK. Ну и ставим на паузу (pause), чтобы консольное окно после компиляции на закрывалось, иначе вы не увидите, удачно ли прошла компиляция или с ошибками:c:/pspsdk/bin/make
pauseТо же самое можно выполнить через консоль Windows или консоль Total Commander, введя команду вручную в консоли, предварительно пройдя путь в консоли до папки с исходниками.


Затем переименовываем у текстовика расширение (https://www.pspx.ru/forum/showthread.php?t=81480#21) *.txt на *.bat, превратив тем самым текстовик в исполняемую консольную программу, запускаем его.


Во время компиляции весь процесс вы будете наблюдать в чёрном консольном окне.


После завершения компиляции забираем скомпилированные файлы.

Полезные ссылки (https://www.pspx.ru/forum/showthread.php?t=83733).


Компиляция с помощью Microsoft Visual Studio.


Если, при установке "Minimalist PSPSDK for Windows", вы ставили галочку на "Visual Studio Support" и у вас была на тот момент установлена Microsoft Visual Studio, то вы можете писать и компилировать программы для PSP с помощью этой программы.
Но если вы не ставили галочку или не была на тот момент установлена программа от Майкрософт, то вам нужно будет заново переустановить PSPSDK, выставив нужную галочку.



Итак, запускаем Visual Studio, выставив конфигурацию С++ (это должны были попросить сделать ещё во время установки программы, но можно изменить потом)


Нажимаем "Файл => Создать => Проект" или сразу нажимаем на ссылку в стартовом окне программы "Создать проект..."

5383


Откроется новое окно настроек проекта. Слева из шаблонов выбираете "Visual C++ => Общие". Справа выделяете "Проект, использующий файл makefile" и нажимаете кнопку "ОК".

5381

Таким образом вы создаёте независимый проект, позволяющий использовать внешние системы сборки и их команды.


Теперь откроется мастер создания проекта.

5328


Нажмите кнопку "Далее" и в этом окне "Конфигурации отладки" необходимо ввести команды, используемые компилятором PSPSDK.

5329


Впишите следующие команды в соответствующие поля.
Сразу пердупержу вас, что перевод Visual Studio делал явно не программист, а какой-то романтический переводчик, поэтому о предназначении всех этих полей мне удалось догадаться только из английской версии программы.



Командная строка построения: - стандартная команда компиляции приложения.
make

Команды очистки: - стандартная команда очистки от ранее скомпилированных файлов из исходников.
make clean

Командная строка перестроения: - команда очистки от предыдущих компиляций и новая компиляция вчистую.
make clean && make

Вывод(для отладки): - указываем, что на выходе должно получиться.
EBOOT.PBP

Путь поиска включений: - путь к папке INCLUDE с файлами заголовков *.h PSPSDK, на основе которых компилируются приложения.
Вообще-то этот путь писать совсем не обязательно, т.к. он и так прописан в файле Makefile и данные берутся из него.
C:\pspsdk\psp\sdk\include

Принудительно включенные файлы: - путь к папке INCLUDE, прилагающимися с исходниками, содержащая уникальные для этой программы заголовочные файлы. Если такие файлы имеются, то они имеют приоритет перед стандартной папкой из PSPSDK.
Ваш путь к папке INCLUDE с исходниками



Нажимаем "Далее" и получаем аналогичное предыдущему - окно "Конфигурация выпуска".
Здесь, чтобы не вводить тоже самое повторно, оставляем галочку внизу на "Как в конфигурации отладки" и жмём кнопку "Готово".

5382


У вас появится пока ещё пустое окно или много пустых окон, которые все можно позакрывать.
А слева должно быть окно вашего проекта "Обозреватель решений".
Вам необходимо туда добавить файлы исходников, которые вы хотите скомпилировать.
Нажимаете слева в списке правой кнопкой мыши по папке "Файлы исходного кода"
Выбираете "Добавить => Существующий элемент..."

5384


Откроется папка, где находится ваш проект. Все ваши проекты по умолчанию создаются в папке ваших документов:
C:\Documents and Settings\Ваше_Имя_Компьютера\Мои документы\Visual Studio 2010\Projects\Название_Проекта\
В этой папке вы увидите уже созданные файлы проекта, они нужны для работы Visual Studio.

5385


Пока для компилирования для PSP там ничего нет.
Вам необходимо туда скопировать исходники, например HelloWorld (https://www.pspx.ru/forum/attachment.php?attachmentid=5380&stc=1&d=1324269929) из вложения.
Ну или создать в этой папке новые файлы main.c и makefile, если вы собираетесь писать программу с нуля.
А я, для примера, копирую исходники HelloWorld - это всего два файла main.c и makefile.
Выделяю исходники в этом же окне добавления и нажимаю кнопку "Добавить".

5386


После этого, файлы исходников появляются слева, где "Файлы исходного кода", а заодно происходит генерация вашего проекта.
Дважды щёлкните слева по main.c и он откроется в главном окне, где вы его можете редактировать.
А так же, при наведении на строчки кода или при редактировании, вам будут показываться всплывающие подсказки по синтаксису команд.

5387

5388


Если вы указывали ранее, при создании проекта, путь к папке INCLUDE PSPSDK, то слева в папке "Внешние зависимости" вы должны увидеть все заголовочные файлы этой папки.

5389


Теперь нажимайте, сверху в меню, зелёную стрелку "Начать отладку (F5)" и наблюдайте за процессом компиляции EBOOT.PBP.

5390


По окончании, скомпилированный EBOOT.PBP программы для PSP сохранится в той же папке проекта в документах. И после компиляции винда попытается его запустить, но так как это не экзешник Windows, то вывалится ошибка о невозможности запустить скомпилированный файл )))


Возле заветной зелёной стрелочки, в раскрывающемся списке вы можете выбирать либо "Debug" компиляцию, либо "Release" компиляцию. Разницы между ними никакой, просто дебаг предназначен для тестирования компиляции, а релиз предназначен для конечного релиза.
Но так как мы, при создании проекта, выставляли одинаковые команды и настройки в окнах "Конфигурации отладки" и "Конфигурации выпуска", что переводится, как Debug и Release, то и компиляция выходит одинаковая.


В меню "Построение" (Build) вам понадобятся следующие команды:



Построить решение (F7) - команда компиляции Build (make), то же самое, что "Начать отладку (F5)", только без запроса на подтверждение. Используется только при первичной компиляции, либо после очистки результатов предыдушей компиляции.


Перестроить решение - выполняет команду очистки предыдущей компиляции и последующей чистой компиляции (make clean && make)


Очистить решение - собственно сама команда очистки от предыдущих компиляций (make clean)



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

Удачи!


Интересные компиляторы:
Dev-C++ (http://bloodshed.net/dev/devcpp.html)
wxDev-C++ (http://wxdsgn.sourceforge.net/) - расширение к первому

Verdgilxxx007
08.07.2011, 23:12
Не могу PRO B8 компилировать помогите

frostegater
09.07.2011, 02:34
Verdgilxxx007, HowTo: Compile PRO CFW (http://code.google.com/p/procfw/wiki/Compiling)

Verdgilxxx007
09.07.2011, 12:12
Verdgilxxx007, HowTo: Compile PRO CFW (http://code.google.com/p/procfw/wiki/Compiling)

Frostegater, Спасибо

CRAZY-FIX
09.08.2011, 23:09
все получилось а есть способы сложней . есть да какие ?

Yoti
10.08.2011, 00:42
CRAZY-FIX,
мсье знает толк в извращениях? Ну, ты можешь поставить IDE, подключить к ней PSPSDK без мануалов - это будет немного сложнее =)

frostegater
10.08.2011, 07:07
CRAZY-FIX, дада.. к вижуалу прицепи!.. Тем более это лучше чем говняная Эклипся, что виснет на каждом шагу... (у меня точно).. я лучше мейкфайлы сам писать буду. А вообще я работаю в нотепад++ и подсветка синтаксиса просто класс.. не сравниться с любой IDE.

ErikPshat
19.12.2011, 11:31
В шапку дописал инструкцию, возможно кому-то пригодится:

3 этап - Компиляция с помощью Microsoft Visual Studio.

Если заметите недочёты, недосказанность или более простое решение, то прошу поправить или добавить.

agent0
31.03.2012, 13:43
Hello World из вложения скомпилировал батником. На psp go из внутренней памяти запускается нормально. Но с мемстика не запускается... Вешает psp-шку и hard reset. Это проблемы в чём? В коде или в моей psp/memory stick'e ?

PSPDev
11.05.2012, 20:53
А что же, тех, кто сидит не на винде нет? :)
Я вот люблю консоль(баш терминал), и люблю писать мейкфайл. Всякие графические штучки аля "Нажал и готово" мне не нравится. Почему - не знаю.
Кстати, сам не юзаю эти ваши IDE. gEdit хорошая вещь.

Yoti
12.05.2012, 02:41
PSPDev,
я его как-то на винде запускал - сразу так уныло выглядеть начал... Да и с кодировками у него проблемы. Как текстовый редактор он неплох, но вот как среда - ужасен.

frostegater
12.05.2012, 05:01
PSPDev, я тоже люблю писать мейкфайлы и писать код в notepad++. У notepad++ подсветка синтаксиса жирная, добротная) Студия отдыхает.

ErikPshat
12.05.2012, 15:19
gEdit хорошая вещь.Мда, как печально )))
Ну это все такие МАКоведы странные люди и понтовитые немного :)


frostegater, а чем EmEditor (http://www.pspx.ru/forum/showthread.php?t=91839) не понравился?
Я с Нотепада спрыгнул сразу после Эдитора.

PSPDev
12.05.2012, 16:40
Мда, как печально )))
Ну это все такие МАКоведы странные люди и понтовитые немного :)


frostegater, а чем EmEditor (http://www.pspx.ru/forum/showthread.php?t=91839) не понравился?
Я с Нотепада спрыгнул сразу после Эдитора.
Я не маковед, а линуксоид... Зеленый пока, не больше месяца, с Убунтой на борту(знаю, вторая винда так сказать), но освоюсь немного и переходить буду на другое что-нибудь. А gEdit в Ubunte действительно хороший, и вроде проблем с кодировкой не замечал. Notepad++ под линуху, как я понял нет, и поэтому использую связку gedit + плагины

ErikPshat
12.05.2012, 17:54
frostegater, а чем EmEditor (http://www.pspx.ru/forum/showthread.php?t=91839) не понравился?
Я с Нотепада спрыгнул сразу после Эдитора.
Кстати, у EmEditor есть куча специализированных файлов для подсветки синтаксиса: http://www.emeditor.com/modules/mydownloads/viewcat.php?cid=10

Например для Makefile (http://www.emeditor.com/modules/mydownloads/singlefile.php?cid=10&lid=47), C/C++ (http://www.emeditor.com/modules/mydownloads/singlefile.php?cid=10&lid=28) и дофига до кучи, которые можно отдельно скачать.

Notepad++ под линуху, как я понял нет, и поэтому использую связку gedit + плагиныНу как бы есть: http://devblog.info/tools/notepad-v-linux.html

Yoti
12.05.2012, 19:30
вроде проблем с кодировкой не замечал
Да ну? (https://www.google.ru/search?q=gedit+win1251)

PSPDev
12.05.2012, 19:31
Кстати, у EmEditor есть куча специализированных файлов для подсветки синтаксиса: http://www.emeditor.com/modules/mydownloads/viewcat.php?cid=10

Например для Makefile (http://www.emeditor.com/modules/mydownloads/singlefile.php?cid=10&lid=47), C/C++ (http://www.emeditor.com/modules/mydownloads/singlefile.php?cid=10&lid=28) и дофига до кучи, которые можно отдельно скачать.

Ну как бы есть: http://devblog.info/tools/notepad-v-linux.html
Оу, вайн не пользую :)
Это дело вкуса - мне нравится gedit. Если на него поставить плагины, ты можно расширить функционал не хуже того нотепад++ :)
А пускать его через вайн... нет, я такого не перенесу

PSPDev
20.05.2012, 12:55
Да ну? (https://www.google.ru/search?q=gedit+win1251)
http://www.dandr.su/2009/10/28/windows-1251-v-gedit/
Решение элементарно.
Да, мой брат - слоупок.

Yoti
20.05.2012, 14:13
PSPDev,
лично у меня там просто нет автодетекта. Так "элементарное" решение не такое уж элементарное.