MyRuLib MacOS

Материал из LinTest Wiki
Перейти к: навигация, поиск

Для начала установить Command Line Tools for Xcode, который нужно скачать на странице Downloads for Apple Develoters (требуется регистрация).

Потом либо собирать все необходимое вручную, но проще установить менеджер пакетов macports и запустить:

sudo port install wxWidgets xml2 icu freetype

Далее, скачав и распаковав myrulib-0.21.tar.gz, нужно отредактировать GNUmakefile

на 47-й строке поменять:

WX_PORT ?= gtk2 на WX_PORT ?= mac

на 72-й строке удалить:

$(WX_CONFIG_DEBUG_FLAG)

Запускаем компиляцию:

make

Если выйдет ошибка WxSQLite3/wxsqlite3.cpp:2059: error: ‘sqlite3_open_v2’ was not declared in this scope в файле wxsqlite3.cpp на 40-й строке попробуйте поменять #include "sqlite3.h" на #include "../SQLite3/sqlite3.h" и снова:

make

После удачного компилирования, полученную программу myrulib в папке build нужно запаковать в ".app" чтобы можно было выбрать окно программы (подробнее здесь faqmac.htm). Для этого можно создать папки:

mkdir -p MyRuLib.app/Contents/MacOS

добавить файл с именем "info.plist" подобного содержания

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleExecutable</key>
	<string>myrulib</string>
	<key>CFBundleIdentifier</key>
	<string>ru.lintest.MyRuLib</string>
	<key>CFBundleName</key>
	<string>MyRuLib</string>
	<key>CFBundleIconFile</key>
	<string>myrulib</string>
	<key>CFBundleDevelopmentRegion</key>
	<string>ru</string>
</dict>
</plist>

в папку MyRuLib.app/Contents/

и переместить myrulib в папку MyRuLib.app/Contents/MacOS/.

Или просто создать cocoa приложение в xcode и заменить Contents/MacOS/[файл].



Можно сконвертировать "Icon Composer.app" home-128x128.png в myrulib.icns переместить myrulib.icns в папку MyRuLib.app/Contents/Resources/.

Если содержание вашего Info.plist отличается от того что выше, то нужно добавить

<key>CFBundleIconFile</key>
<string>myrulib</string>[/code]

Все.

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты
Проекты