Новое на форуме

PowerShot SX160 ->
[23.01.17 03:20] WillieWhomy
Русский Хелп по а... ->
[22.01.17 21:12] Frankabunk
Чем отличается те... ->
[22.01.17 21:11] Frankabunk
Canon PowerShot S... ->
[22.01.17 21:10] Frankabunk
Посоветуйте какой... ->
[22.01.17 21:08] Frankabunk
PowerShot A810 ->
[21.01.17 11:01] Charlesgeace
RawColorLikeJpeg ->
[19.01.17 23:51] JamesPaync
Powershot G11 ->
[17.01.17 16:53] KennethKa
Главная » Статьи » Программирование

Print
Сборка CHDK под Windows
Данная статья основана на моём опыте, а он как известно берётся не из воздуха, а из таких же статей, написанных кем-то ранее. Так что возможны сходства с другими статьями на эту тематику. В частности, я начинал разбираться по статье Grand'а "Сборка прошивки под Windows". За неё ему огромное спасибо. Итак приступим.
Вы решили скомпилировать CHDK из исходников, что же для этого нужно?

А нужно вам будет сделать следующее:
  1. Настроить рабочую среду
  2. Установить среду разработки
  3. Скачать исходники CHDK
  4. Скомпилировать CHDK
Теперь всё по порядку.

1. Настройка рабочей среды

Мы будем пользоваться следующей структурой каталогов.
В любом каталоге (где вам удобно) создаём папку CHDK. В ней создаём две подпапки: gcc и src
Должно получиться следующее:

 CHDK
    |--- GCC
    |----SRC


На этом пока всё. Наполнение этой структуры будем выполнять в следующих пунктах.

2. Установка среды разработки

Поскольку в камерах Canon используется процессор с архитектурой ARM, а компилировать мы будем на обычной машине на базе процессора x86, нам понадобится кросскомпилятор.Кросскомпилятор - это компилятор, способный работать на одном процессоре, а код генерировать для другого.Выбор не такой уж и большой, пользоваться будем GCC for ARM.Скачать компилятор и необходимые инструменты можно отсюда:
Среда разработки для CHDK (GCC 3.4.6 for ARM/Win32)

Необходимо распаковать содержимое архива в папку \CHDK\GCC

Примечание:
Ходят слухи что данная среда разработки не работает под Windows Vista. Поскольку сам я этой ОС не пользуюсь (и не планирую пользоваться), ни подтвердить ни опровергнуть это я не могу. Под Windows XP SP2 всё отлично работает.

3. Скачивание исходников CHDK

Есть два варианта получения исходников в зависимости от того, что вы планируете с ними дальше делать.
  • Если вы просто хотите собрать прошивку, исходники можно скачать в виде zip архива.
  • Если же вы планируете участвовать в разработке и постоянно обновлять свою версию в соответствии с обновлениями на сервере, при этом не теряя собственных изменений, настоятельно рекомендуется использовать SVN.
Вариант первый:
ZIP архив с исходниками можно скачать отсюда: Assembla - chdk - trunk
В самом низу страницы ссылка : "Zip Archive"
Распаковываем содержимое архива в "CHDK\SRC"

Вариант второй:
Забираем исходники CHDK с сервера SVN. Самый простой способ сделать это под Windows - установить TortoiseSVN.
Скачать его можно здесь: TortoiseSVN downloads
А здесь описание работы TortoiseSVN_ru
Локализацию можно скачать здесь: TortoiseSVN: Supported Languages & Credits
Устанавливаем TortoiseSVN.
После установки TortoiseSVN открываем проводник Windows, идём в созданный ранее каталог "CHDK", и на папке "CHDK\SRC" вызываем контекстное меню.
В меню выбираем "SVN Checkout" или "SVN Извлечь" для русской версии. В появившемся окне в поле "URL of repository"("URL в хранилище") вводим "https://tools.assembla.com/svn/chdk/trunk" без кавычек. Жмём "ОK" и ждём пока исходники скачаются с сервера.

Примечание:
Если вы используете прокси-сервер, необходимо настроить его параметры. Сделать это можно выбрав в контекстном меню "TortoiseSVN->Settings->Network" или ("TortoiseSVN->Настройки->Сеть").

Наконец-то, исходники скачаны и всё готово. Осталось скомпилировать.

4. Компиляция CHDK

Переходим в папку "CHDK" и создаём файл build.bat. В него пишем следующее:
@echo off
set ROOT=%CD%
set PATH=%ROOT%\GCC\BIN;%PATH%
cd %ROOT%\SRC
if not exist BIN md BIN
gmake PLATFORM=a610 PLATFORMSUB=100f fir
cd %ROOT%

В той же папке создаём файл clean.bat
В него пишем следующее: 
@echo off
set ROOT=%CD%
set PATH=%ROOT%\GCC\BIN;%PATH%
cd %ROOT%\SRC
if exist BIN rd /s /q BIN
gmake PLATFORM=a610 PLATFORMSUB=100f clean
cd %ROOT%


В обоих файлах указана камера A610 firmware 1.00f. Вам необходимо заменить в предпоследней строке обоих файлов параметр PLATFORM на модель вашей камеры, и параметр PLATFORMSUB на версию прошивки вашей камеры. Всё. Теперь можно компилировать CHDK. Для компиляции запустите файл build.bat. Скомпилированная прошивка будет помещена в папку "CHDK\SRC\BIN". Для очистки запустите clean.bat (файл прошивки также будет удалён).
Вот и всё.
Категория: Программирование | Добавил: cppasm (07.10.09)
Просмотров: 10047 | Комментарии: 14 | Рейтинг: 0.0/0
Всего комментариев: 12
Mika   (25.01.14 20:25)   Комментарий # 12
Mika
Поправил

Chairman72   (25.01.14 13:58)   Комментарий # 11
Нет аватара
Что за бестолковая инструкция?

По "первому варианту" получается структура каталогов:
e:\CHDK\SRC\trunk\все остальное
По "второму варианту"
e:\CHDK\SRC\chdk\все остальное
Подозреваю, что то тут не так ...

lisssss   (16.01.13 00:18)   Комментарий # 9
Нет аватара
что то тут не так
Создаёться пустая папка BIN в \CHDK\SRC и всё .
Может кто подскажет что тут не так?

Mika   (16.01.13 16:56)   Комментарий # 10
Mika
Постучитесь в личку автору статьи...

lisssss   (14.01.13 14:27)   Комментарий # 6
Нет аватара
Не чего не получаеться не CHDK\SRC\trunk
не CHDK\SRC\содержимое папки trunk
Появляеться пустая папка BIN в CHDK\SRC и всё
Пробывал и в ХР и в вин 7
подскажите как сделатьКомпиляцию CHDK sad

lisssss   (14.01.13 13:14)   Комментарий # 5
Нет аватара
Распаковываем содержимое архива в "CHDK\SRC"
тоесть должно получиться "CHDK\SRC\trunk"
или "CHDK\SRC\содержимое папки trunk"

bvv-cp   (23.06.10 14:04)   Комментарий # 4
Нет аватара
Хорошая статья, но есть 1 замечание.
Не мог добиться стабильной работы gcc (постоянно вылетал sh.exe с ошибкой) на 3-х компьютерах с Windows XP SP2/3 (система переустанавливалась с 0, результат 0 smile ). Решилось изменением настроек "быстродействия" :
Добавте, может кому еще пригодится. Сам уйму времени потратил на эксперементы.

lisssss   (14.01.13 14:31)   Комментарий # 7
Нет аватара
Решилось изменением настроек "быстродействия"
как изменение менял уточни

bvv-cp   (14.01.13 14:59)   Комментарий # 8
Нет аватара
Свойства системы -> Дополнительно -> Быстродействие [Параметры] -> Дополнительно

Сменить поиграть с переключателями (скриншот не сохранился, увы)

cppasm   (29.01.10 00:40)   Комментарий # 2
Нет аватара
Здесь описан процесс компиляции ГОТОВЫХ ИСХОДНИКОВ.
В PLATFORM и PLATFORMSUB указывается прошивку для какой камеры компилировать.
Но для начала надо чтобы было ЧТО компилировать.
Нужно портировать системно-зависимые части кода под твою камеру.
Короче ты слабо себе представляешь объём работы.
Для того чтобы собрать прошивку для новой камеры НЕ достаточно поменять два слова в скрипте сборки.

Figase   (26.01.10 03:36)   Комментарий # 1
Нет аватара
Если все так просто? почему до сих пор нет прошивки на sx 20 ? Всего лишь нужно прописать модель камеры и прошивка готова? помогите пожалуста скомпилировать для 1.02B cry

pethead   (01.05.10 10:24)   Комментарий # 3
pethead
если бы так было, были бы прописаны вообще все модели, даже нереальные. smile

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Поиск

v