Как запустить OpenKore

Материал из Руководство по OpenKore
Перейти к навигации Перейти к поиску

(НЕ) поддерживаемые дистрибутивы Linux и ОС

OpenKore не работает на некоторых дистрибутивах live CD, потому что в них нет минимального необходимого ПО. На следующих дистрибутивах OpenKore не работает:

  • Knoppix
  • elxLinux

OpenKore гарантированно работает на:

  • Fedora
  • Ubuntu
  • FreeBSD
  • MacOS X
  • Solaris 8
  • Windows 2000, XP, 2003, 7, 8, 8.1, 10

Бот также работает на 64-битных linux и windows системах.

Быстрый запуск

Предполагается, что у Вас уже установлена ОС.

Windows

OS X

Версия 10.8.2

  • Получите Apple ID если у Вас его ещё нет (нужно загрузить только инструменты командной строки для Xcode с сайта Apple).
  • Станьте разработчиком Apple (нужно загрузить только инструменты командной строки для Xcode с сайта Apple).
  • Установите инструменты командной строки для Xcode.
  • Установите Homebrew. Запустите brew doctor и др. если Homebrew попросит.
  • Установите readline выполнив команду: brew install readline.
  • Запустите openkore.pl.

Требования

До запуска OpenKore убедитесь, что у вас установлены следующие компоненты

Компилятор C/C++


У вас должен быть установлен компилятор C или C++ (требуется только для компиляции XSTools). GCC по умолчанию установлен во многих дистрибутивах Linux, но, некоторые люди устанавливают Linux без GCC.

Чтобы проверить, установлен ли у вас компилятор C++, откройте терминал и введите:

g++ -v

Если вы не получили сообщение об ошибке, значит у вас уже есть компилятор C++, и вы можете перейти к следующему шагу. Если компилятор C++ отсутствует, то ознакомьтесь с таблицей ниже:

ОС/Дистрибутив Примечание
Windows Компиляции XSTools не требуется. Дистрибутив OpenKore содержит в себе XSTools.dll, скомпилированую под версию perl 5.12
Fedora/RHEL/CentOS Откройте терминал и введите: su -c 'yum install gcc-c++'
Ubuntu Откройте терминал и введите: sudo apt-get install build-essential g++
Debian Откройте терминал и введите: su -c 'apt-get install build-essential g++'
(Open)Suse Откройте терминал и введите: su -c 'yast -i gcc-c++'
Arch Для i686, откройте терминал и введите: su -c 'pacman -S base-devel'

Для x86_64: su -c 'pacman -S multilib-devel'

Другие Linux дистрибутивы Найдите пакеты gcc, and gcc-c++ or g++ самостоятельно.
MacOS X Установите Command Line Tools для Xcode

Дополнительная информация: http://www.tech-recipes.com/mac_system_administration_tips726.html

Perl


У вас должен быть установлен Perl версии 5.12 или выше (для Windows требуется только верси 5.12 x32). Более ранние версии могут не поддерживаться! Чтобы проверить, установлен ли у вас Perl, введите:

perl -v | find "version" # для windows
perl -v | grep perl      # для linux

Если вы видите версию Perl, значит, он установлен. Если версия соответствует рекомендуемой, то переходите к следующему шагу. Если вы получили сообщение об ошибке, значит, он не установлен. Тогда ознакомьтесь с таблицей ниже:

ОС/Дистрибутив Примечание
Windows Установите Strawberry Perl или ActivePerl
Fedora/RHEL/CentOS Откройте терминал и введите: su -c 'yum install perl'
Ubuntu Откройте терминал и введите: sudo apt-get install perl
Debian Откройте терминал и введите: su -c 'apt-get install perl-base'
Arch Откройте терминал и введите: su -c 'pacman -S perl'
Другие Linux дистрибутивы Скачайте с http://www.perl.org/
FreeBSD Perl 5.8 скорее всего установлен по умолчанию.

Иначе откройте терминал и введите: ssu -c 'pkg_add -r perl5.8'

MacOS X Прочитайте http://developer.apple.com/internet/opensource/perl.html

Модуль Perl: Time::HiRes


У вас должен быть установлен модуль Time::HiRes. Вы можете проверить это командой:

perl -e "use Time::HiRes;"      # для windows
perl -e 'use Time::HiRes;'      # для linux

Если выводится пустое сообщение, то модуль установлен, и вы можете перейти к следующему шагу. Если вы получили сообщение об ошибке, значит, он не установлен. Тогда ознакомьтесь с таблицей ниже:

ОС/Дистрибутив Примечание
Fedora/RHEL/CentOS Open a terminal and type:
su -c 'yum install perl-Time-HiRes'
Debian Open a terminal and type:
su -c 'apt-get install libtime-hires-perl'
FreeBSD Open a terminal and type:
su -c 'pkg_add -r p5-Time-HiRes'
Arch Open a terminal and type:
su -c 'pacman -S perl-time-hires'
Other operating systems or Linux distributions Download the Time::HiRes source code from CPAN and compile and install it.

If you have CPAN:

cpan Time::HiRes
Windows with ActivePerl Install via ppm.


Perl module: Compress::Zlib


You need the Compress::Zlib Perl module. You can check whether you already have it by typing

perl -e 'use Compress::Zlib;'

If nothing happens, then it is installed, and you can skip to the next paragraph. If you get an error, then it is not installed, and you should read the following table.

OS/distribution Instructions
Ubuntu Open a terminal and type:
sudo apt-get install libcompress-zlib-perl
FreeBSD Open a terminal and type:
su -c 'pkg_add -r p5-Compress-Zlib
Arch Install perl-io-compress from the Arch User Repository.
Other operating systems or Linux distributions Download the Compress::Zlib source code from CPAN and compile and install it.

If you have CPAN:

cpan Compress::Zlib
Windows with ActivePerl Install via ppm.


GNU readline


  • Required only for Console::Unix interface.
  • Not required on Windows.
  • Use --interface=Console::Simple, Console::Curses or Wx if readline isn't available.

GNU readline and its associated development package must be installed. You need at least version 5.0. To check whether you have a recent enough version of GNU readline, follow the following instructions:

  1. Copy and past the following text into a text editor:
#include <stdio.h>
#include <readline/readline.h>
	#if !defined(RL_READLINE_VERSION)
     	 #error "You do not have the GNU readline development headers installed!"
	#elif RL_READLINE_VERSION < 0x0500
     	 #error "Your version of GNU readline is too old. Please install version 5.0 or higher."
#endif

Note. The file must end with an empty line

  1. Save the file as readlinetest.c in your home folder.
  2. Open a terminal and type:
gcc -c ~/readlinetest.c

If you do not see any output, then that means you have GNU readline correctly installed, and you can skip to the next paragraph. If you do see an error message, then read the following table.

OS/distribution Instructions
Fedora/RHEL/CentOS Open a terminal and type:
su -c 'yum install readline-devel'
Debian / Ubuntu 12.04 Open a terminal and type:
su -c 'apt-get install libreadline5-dev'
Ubuntu 14.04 Open a terminal and type:
sudo apt-get install libreadline6-dev
Arch Open a terminal and type:
su -c 'pacman -S readline'
OS X Install readline with brew:
brew install readline
FreeBSD ...
Other operating systems or Linux distributions You must compile readline and install readline from source.


  1. Download the readline source code from the GNU FTP. You should download the latest version (at the time this page is written, the latest version is readline-5.1.tar.gz). Save the file to your home folder.
  2. Open a terminal, and type:
tar xzvf readline-X.X.tar.gz && cd readline-X.X

Where X.X is the version of the file you downloaded/

  1. Type:
./configure && make && su -c 'make install'

MacOS X note. Do not install Readline from Fink! That won't work.

Python


Python must be installed (this is only required to compile XSTools). To check whether you have it, type:

echo 'print "Python is installed"' | python

If you get the message "Python is installed", then Python is installed, and you can skip to the next paragraph. If Python is not installed, then read the following table.

OS/distribution Instructions
Fedora/RHEL/CentOS Open a terminal and type:
su -c 'yum install python'
Ubuntu Open a terminal and type:
sudo apt-get install python
Debian Open a terminal and type:
su -c 'apt-get install python'
FreeBSD Open a terminal and type
su -c 'pkg_add -r python'
Arch Open a terminal and type:
su -c 'pacman -S python2'
MacOS X Download Python here.
Windows Necessary only if you need to recompile XSTools for some reason. Download Python here


Curl development libraries


The Curl development libraries are needed to compile OpenKore. To check whether you have it, type:

curl-config --version

If you get "command not found" as error message, you need to install libcurl:

OS/distribution Instructions
Fedora/RHEL/CentOS Open a terminal and type:
su -c 'yum install curl-devel'
Ubuntu First, search for the libcurl package using the package manager.

Open a terminal and type:

apt-cache search libcurl

Then install the latest version with this command:

sudo apt-get install libcurlx-dev

Where 'x' is the version number as found by the 'apt-cache search' command.

Debian First, search for the libcurl package using the package manager.

Open a terminal and type:

apt-cache search libcurl

Then install the latest version with this command:

su -c 'apt-get install libcurlx-dev'

Where 'x' is the version number as found by the 'apt-cache search' command.

FreeBSD Open a terminal and type:
su -c 'pkg_add -r curl'
Arch Open a terminal and type:
su -c 'pacman -S curl'
Other operating systems or Linux distributions Install libcurl from source by downloading it from the Curl homepage.

Perl module: Win32::Console

(only for Windows Console interface)

  • ActivePerl: Install via ppm.
  • Others: Install via your Perl's package manager or CPAN.

Running OpenKore

Download


First, download the OpenKore source code from github.com.

Extract


Extract the archives as instructed on the download page.

Run


Open a terminal. Go the OpenKore folder. Type:

perl ./openkore.pl

And you're done. OpenKore will automatically try to compile XSTools.so, an internally used library. If compilation fails, please check the Common problems. If you still cannot, report the error on our forum.

Аргументы командной строки

--help

покажет актуальную информацию об аргументах командной строки


Common problems

Missing headers


Common reason why compilation fails is because of missing headers. Look in the compilation messages. Do you see a message somewhere that looks like this?

foo.h: No such file or directory

If so, then that means you didn't install all the libraries that OpenKore needs! Please go through Preparation again.

hash_fun.h


In file included from src/auto/XSTools/utils/perl/Benchmark.xs:1: src/auto/XSTools/utils/perl/../dense_hash_map.h:93:66: error: ext/hash_fun.h: No such file or directory

Open src/auto/XSTools/utils/sparseconfig.h, find:

#define HASH_FUN_H <ext/hash_fun.h>

and replace with:

#define HASH_FUN_H <backward/hash_fun.h>

scons: *** SCons version 2.0.1 does not run under Python version 3.2.2.


Open the file called Makefile, and replace every

python 

with

python2

Leave everything else as is. Make sure you have any python-2.x installed if you encounter errors (3.0 is current).

scons: *** [src/auto/XSTools/utils/perl/Benchmark.os] Error 1


Open the file src/auto/XSTools/utils/densehashtable.h and look for

#include "sparseconfig.h"

After that, insert the following on a new line:

#include <stddef.h>

Openkore should compile now.

Precompiled binaries

On Windows, you can use precompiled binaries, which contain perl interpreter and all modules and libraries needed.