Cygwin установка пакетов

Содержание

Installing and Updating Cygwin Packages

Installing and Updating Cygwin for 64-bit versions of Windows

Run setup-x86_64.exe any time you want to update or install a Cygwin package for 64-bit windows. The signature for setup-x86_64.exe can be used to verify the validity of this binary using this public key.

Installing and Updating Cygwin for 32-bit versions of Windows

Run setup-x86.exe any time you want to update or install a Cygwin package for 32-bit windows. The signature for setup-x86.exe can be used to verify the validity of this binary using this public key.

General installation notes

When installing packages for the first time, does not install every package. Only the minimal base packages from the Cygwin distribution are installed by default, which takes up about 100 MB.

Clicking on categories and packages in the package installation screen allows you to select what is installed or updated.

Individual packages like bash, gcc, less, etc. are released independently of the Cygwin DLL, so the Cygwin DLL version is not useful as a general Cygwin release number. The utility tracks the versions of all installed components and provides the mechanism for installing or updating everything available from this site for Cygwin.

Once you’ve installed your desired subset of the Cygwin distribution, setup*.exe will remember what you selected so rerunning the program will update your system with any new package releases.

On Windows Vista and later, will check by default if it runs with administrative privileges and, if not, will try to elevate the process. If you want to avoid this behaviour and install under an unprivileged account just for your own usage, run with the option.

Q: Is there a command-line installer?

A: Yes and no. The program understands command-line arguments which allow you to control its behavior and choose individual packages to install. While this provides some functionality similar to such tools as or it is not as full-featured as those package managers.

Q: Why not use , , my favourite package manager, etc.?

A: The basic reason for not using a more full-featured package manager is that such a program would need full access to all of Cygwin’s POSIX functionality. That is, however, difficult to provide in a Cygwin-free environment, such as exists on first installation. Additionally, Windows does not easily allow overwriting of in-use executables so installing a new version of the Cygwin DLL while a package manager is using the DLL is problematic.

Сygwin = установка пакетов из консоли

Q: How do I install everything?

A: You do not want to do this! This will install an enormous number of packages that you will never use, including debuginfo and source for every package.

If you really must do this, clicking on the «Default» label next to the «All» category to change it to «Install» will mark every Cygwin package for installation. Be advised that this will download and install tens of gigabytes of files to your computer.

Q: How do I help improve setup?

A: See the setup project page for more information.

Cygwin

Get that Linux feeling — on Windows

NextPreviousContents


19. Сборка программ

19.1 Как собрать программу из исходников? Как установить программу из tar.gz/tar.bz2?

Скорее всего в tar.gz/tar.bz2 лежит не программа, а ее исходники (иногда исходники с собранной программой).

Прежде чем ее ставить, нам необходимо ее собрать. Для этого нужно выполнить (не бросайтесь сразу это делать):

root@linux# ./configure root@linux# make root@linux# make install

Если после любого из пунктов возникли сообщения об ошибках, значит не все вышло так, как хотелось. Можно попробовать `./configure —help` для вывода опций настройки и попробовать использовать некоторые из них.

Поскольку при таком способе установки информация о том, что ставилось и куда, остается только в памяти админа (которая частенько еще какая временная :), лучше для контроля этого процесса использовать checkinstall — http://checkinstall.izto.org, или похожие программы (почему выше и мы говорили не выполнять команды сразу).

После того, как вы ее установите (прочитав документацию) и настроите ее конфиг, на этапе установки программного обеспечения вместо sudo make install будете писать sudo checkinstall. Checkinstall соберет «настоящий» пакет для указанной (tgz, rpm и deb в зависимости от настроек), установит его в систему и поместит в указанный в конфигурационном файле каталог (удобно для централизованного обновления нескольких машин). Удаление установленных таким образом программ осуществляется стандартными средствами дистрибутива, например, removepkg для Slackware.

Также будет полезным прочитать о том, как уменьшить размер бинарных файлов.

Если вы пренебрегли нашим советом и собрали и поставили программу не используя специальных утилит (или своего менеджера пакетов), тогда нужно заново распаковать исходники (ведь вы после сборки наверняка удалили папку, в которой собирали программу), сконфигурировать ее с теми же параметрами (напрягайте память), но вместо сделать . Если повезет, то все удалится.

19.2 Как удалить программу, собранную из исходников?

A: Это неоднозначный вопрос. Дело в том, что если вы просто собрали программу с помощью

root@linux# ./configure root@linux# make root@linux# make install

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

Для того, чтобы удалить программу, нужно зайти в каталог ее исходников, из которого она собиралась, и сделать make uninstall.

Если каталог не сохранился, распакуйте исходники, сделайте с теми же параметрами, с которыми собирали программу, и выполните .

А чтобы не полагаться на приличия автора, рекомендуется посмотреть предыдущий вопрос,

Внимание: в rpm-based дистрибутивах собирайте программы из srpm или с использованием spec-файлов (для создания rpm). Не превращайте свою систему в помойку из программ.

19.3 Почему после сборки через `./configure; make; make install` у программ получается большой размер?

По умолчанию программы собираются с отладочной информацией. Это, соответственно, увеличивает их размер, но на быстродействие и занимаемую оперативную память не влияет.

Можно собрать программу без отладочной информации, указав

./configure —disable-debug

Удалить секции с отладочной информацией из уже собранной программы можно командой

user@linux# strip progfile

Посмотреть, что вышло можно командой

user@linux# file progfile

она напишет — stripped или not stripped.

Можно сделать более правильно:

find . | xargs file | grep «executable» | grep ELF | cut -f 1 -d : | xargs strip —strip-unneeded find . | xargs file | grep «shared object» | grep ELF | cut -f 1 -d : | xargs strip —strip-unneeded

19.4 Что прописать в настройках rpm, чтобы для всех собираемых программ выполнялся strip?

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

%debug_package %{nil} %_missing_doc_files_terminate_build 0 %_unpackaged_files_terminate_build 0 %__os_install_post \ /usr/lib/rpm/redhat/brp-compress \ /usr/lib/rpm/redhat/brp-strip %{__strip} \ /usr/lib/rpm/redhat/brp-strip-shared %{__strip} \ /usr/lib/rpm/redhat/brp-strip-static-archive %{__strip} \ /usr/lib/rpm/redhat/brp-strip-comment-note %{__strip} %{__objdump} \ %{nil} В будущем при смене версии rpm, не придется ничего править в самих макросах из rpm.

19.5 Что делать если configure говорит, что xxx не установлен, а на самом деле он установлен?

Для сборки нужны заголовочные файлы(headers). Во многих дистрибутивах библиотеки(программы) поделены на два пакета — xxx и xxx-devel(rh-based) и xxx-dev(debian).

Соответственно нужно поставить xxx-devel (xxx-dev).

Примечание — в пакетах Slackware всё вместе (ну, кроме xfree86-devel).

19.6 Какой командой собираются rpm из src.rpm (srpm)?

Для redhat < 8.0, ASP Linux < 9 и Mandrake —

root@linux# rpm —rebuild название_пакета.src.rpm

Для redhat > 8.0, Fedora Core и ASP Linux = 9 —

root@linux# rpmbuild —rebuild название_пакета.src.rpm

Для Alt Linux:

root@linux# rpm-build — rebuild название_пакета.src.rpm

Если вместо ожидаемого результата, на экран выводится список параметров командной строки, нужно установить rpm-devel.

Ну а если все получилось, то пакеты будут лежать в /usr/src/название_дистрибутива/BUILD/название_архитектуры_процессора, например

/usr/src/redhat/BUILD/i386.

19.7 Как включить магические клавиши (magic keys)? (sysrq)

Читайте статью — фактически это пошаговое руководство.

http://gazette.lrn.ru/lg81/vikas.html

19.8 Помогите собрать ядро

Помогаем:

Хорошая, свежая документация

Русское пошаговое описание для новичков

Если у вас rpm-based дистрибутив, тогда прочитайте сначала этот вопрос.

19.9 Как собрать ядро из src.rpm? Как собрать собственное ядро из src.rpm? (На примере ядра Fedora Core)

Поскольку у меня (jackill) Fedora Core, то рассматривать мы будем именно ядра Fedora Core. Для других дистрибутивов чуть-чуть будут отличаться пути в и, возможно, названия spec-файлов.

Самый простой случай

Мы скачали пакет вида kernel-2.x.x-1.xxx.src.rpm. Нас устраивает конфигурация по умолчанию, но не устраивает сборка под i386. Поэтому пишем:

root@localhost# rpmbuild —rebuild —target=i686

и забираем из /usr/src/redhat/RPMS/i686 наши ядра (обычное и smp).

Собираем собственное ядро

Распакуем srpm:

root@localhost# rpm -i kernel-2.x.x-1.xxx.src.rpm

Далее перейдем в каталог /usr/src/redhat/SPECS и распакуем сами исходники, наложив при этом все патчи:

root@localhost# rpmbuild -bp —target=i686 kernel-2.x.spec

Теперь переходим в папку /usr/src/redhat/BUILD/kernel-2.x/linux-2.6/

Это исходники ядра с соответствующим конфигом. Здесь выполним две команды:

root@localhost# make oldconfig root@localhost# make menuconfig

Теперь мы можем выставить желаемые параметры. В качестве помощи можете воспользоваться этим разделом. Я обычно включаю поддержку NTFS, выбираю свой тип процессора, убираю поддержку 4ГБ памяти, ставлю соответствующие параметры для samba, а если машина в домене MS Windows 2003, то добавляю поддержку CIFS, а лишнее убиваю.

После того, как вы закончили выставлять параметры, мы переименовываем наш файл конфигурации , например в и переписываем в папку /usr/src/redhat/SOURCES.

Далее в kernel-2.x.spec выставляем какое нам нужно собрать ядро (обычное или smp), нужно ли собирать пакет с исходниками и пакет с документацией:

Summary: The Linux kernel (the core of the Linux operating system) # What parts do we want to build? We must build at least one kernel. # These are the kernels that are built IF the architecture allows it. %define buildup 1 %define buildsmp 0 %define buildsource 1 %define builddoc 0

После строим как обычно.

Если нужно добавить патч

Алгоритм простой:

Накладываем этот патч на распакованные исходники, конфигурируем ядро, переписываем так же получившийся конфиг, затем прописываем патч в kernel.spec (в двух местах: в одном сам патч, например , во втором способ его наложения, например, — все увидите и сделаете по аналогии).

Если после этого на сборке ядро вылетает, придется сделать для всех файлов конфигурации (повод научиться писать скрипты ;), или убить все конфиги, кроме нужного вам, после чего повторить сборку.

Правда все просто?

19.10 Как накладывать патчи? Как накладывать патчи на ядро? (patch, diff)? Как убирать патчи?

Вообще было бы неплохо просто сделать и все стало бы ясно (кстати, сделайте). А как накладывать патчи на ядро написано в самом README к ядру. Тем не менее.

Несжатый патч

p1 — уровень. Т.е. я захожу в каталог, где непосредственно находятся нужные мне файлы, копирую туда патч и оттуда запускаю эту команду.

p0 — нулевой уровень вложенности

Сжатый патч

Это патчи вида mypatch.gz и mypatch.bz2, соответственно:

bzip2 -dc mypatch.bz2 | patch -p0 gzip -cd mypatch.gz | patch -p0

Чтобы убрать патч, нужно добавить в команду patch ключик

19.11 Нужно ли накладывать промежуточные патчи на ядро?

Пример. Есть ядро версии 2.6.6. Надо получить ядро 2.6.9. Нужно ли накладывать ли patch-2.6.7 и patch-2.6.8? Нужно.

19.12 Где взять патч на SUPERMOUNT?

Это ссылка на домашнюю страницу проекта, однако она какая-то мертвая.

Зато очень живая страница товарища Con Kolivas. В своих патчсетах он использует supermount. И все, что он использует, можно по отдельности забрать отсюда.

19.13 При сборке ядра `make menuconfig` ругается, что ncurses не установлен.

Установите ncurses-devel (ncurses-dev) или как он там называется в вашем дистрибутиве.

Устанавливаем Cygwin

19.14 Зачем собирать модули? Почему бы не сделать монолит?

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

У модулей, однако, есть преимущество. Модулю можно передать параметры. Яркий пример — модуль bttv. Модули можно выгружать.

19.15 После перекомпиляции ядра mplayer стал вылетать с segmentation fault. Куда копать?

Можно попробовать включить в ядре параметр CONFIG_BSD_PROCESS_ACCT пересобрать его.

19.16 Как правильно собрать Gnome из исходников?

Можно использовать garnome.

19.17 Как собрать KDE из исходников?

Есть два варианта. Можно собрать KDE, используя утилиту konstruct.

Можно собрать из исходников. Порядок описан здесь.

Вкратце:

  1. Проверяете требования к собираемой вами версии на www.kde.org
  2. Собираете в такой последовательности:
    • arts
    • kdelibs
    • kdebase
    • kdepim (если хотите получить kmail)
  3. Далее можно собирать как угодно (если обратного не требует пакет)

19.18 Как собрать socks-cap с помощью gcc-3.3.x и выше?

Придется наложить патч:

— socks5/lib/confutil.c.orig 2004-11-05 20:05:57.582886240 +0300 +++ socks5/lib/confutil.c 2004-11-05 20:00:07.250144912 +0300 @@ -1156,7 +1156,7 @@ *cnt = j; *intfc = pintfc; — free(ibuf); + if(ibuf) free(ibuf); //check McMCC #else strcpy(pintfc[j].name, ibuf[i].ifr_name); pintfc[j].up = lsLookupIntfc(s, NET_STAT, &ibuf[i]);

Спасибо McMCC

19.19 Как собрать Open Office 2 из исходников?

Вот инструкция по сборке:

http://tools.openoffice.org/dev_docs/build_linux.html

19.20 Как принудительно указать для сетевой карты скорость?

Довольно полная таблица по параметрам карточек, которые можно прописать в (для 2.4.х) или в (для 2.6.х).

http://www.startcom.org/docs/en/Reference Guide StartCom Enterprise Linux 3.0.x/s1-modules-ethernet.html

Для карт realtek 8139 можно указать параметр media=0x0030

К тому же есть инструменты ethertools и mii.


NextPreviousContents

Как установить компоненты cygwin из командной строки?

Создаем свою сборку Windows 10. 3 часть

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

Хочу отметить, что в первой части мы поставили, уже ADK, но так как вышел Redstone и у Microsoft теперь для каждой десятки свой ADK, показываю, где и как скачать нужный, у кого уже стоит, просто пролистайте чуть ниже и переходите к пункту с WinPE.

Источник http://pyatilistnik.org/sozdaem-svoyu-sborku-windows-10-3-chast/

ivan Semin x0


vmware, vps, windows, vsphere, linux, Windows Server, VMWare vCenter, ESX, Debian, CentOS, Ubuntu, sql server

Добавить комментарий

Закрыть меню