Менеджер пакетов "from source" для Windows

dangerr

Как-то кто-то мне сказал, что мол portage можно установить на Windows и пользоваться ничуть не хуже, чем в Генту, однако гугл не особо много чего полезного выдал на эту тему... пожалуй самое близкое это новость, датированная 2005-м:

A group of Windows programmers is working on porting Gentoo's Portage over to Windows SFU. If you don't know already, Windows Services for UNIX is a full POSIX subsystem for Windows, enabling it to compile and run almost any software that will compile on BSD, Solaris, HP/UX, and Linux. Details to "emerge" soon.

Наверное проект загнулся, не успев стартануть. :(
Собственно, привязки именно к portage у меня особой нету... так что вопрос в том, существуют ли вообще такие системы? И может кто пробовал пользоваться?

dgaf

ты об этом?
http://gentooexperimental.org/nt/

igorpopkoff

Вообще, первое, что приходит в голову после твоего заголовка - это Cruise Control. Но очевидно, что это совсем не то, что тебе нужно, portage - это же менеджер пакетов. Что-то непонятно, что вообще должна эта программа делать, какие исходники под виндой собирать?

dangerr

Наверное да... только похоже, что там не только портаж, но и еще что-то ставится судя по описанию... Это вообще работает? Кто-нибудь пробовал ставить?
И еще интересно как оно подружится с 6-й версией NT-ядра и с 64 битами?

dgaf

ещё раз перечитай заголовок -)

dangerr

что вообще должна эта программа делать, какие исходники под виндой собирать?
Исходники как можно большего числа open-source программ, идущих под Windows с возможностью легкого изменения опций компиляции и оптимизацией под конкретный процессор.
если ты имеешь ввиду конкретные программы, то:
openoffice, firefox, qtiplot, gimp, inkscape, windjvu, freedownloadmanager, mplayer, putty, akkelpad, Infrarecorder, 7-zip, thudnerbird, clamwin, filezilla, filezilla-server, StarDict, openvpn, mediaplayerclassic, miranda, mp3DirectCut, maxima, Virtual Box.
З.Ы. Поменял название темы на более подходящее.

dangerr

GeNToo - Gentoo on the NT kernel

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

dgaf

нет, я про April Fools Day

dangerr

:crazy:

kruzer25

If you don't know already, Windows Services for UNIX is a full POSIX subsystem for Windows
На всякий случай - кроме серверных ОС оно работает только в XP Professional и Vista Enterprise/Ultimate.

kruzer25

Исходники как можно большего числа open-source программ, идущих под Windows с возможностью легкого изменения опций компиляции и оптимизацией под конкретный процессор
Зачем тогда тебе эта гентушная штука? Почему нельзя скомпилировать стандартным c++?
Кроме того, учти - если скомпилированное под SFU предназначено для работы в SFU (а наверняка так оно и есть, иначе ты бы просто поставил виртуалку с генту или чем-нибудь вроде, и компилил бы там под винду) - то ни одна из этих программ у тебя работать, скорее всего, не будет. Разве что ты туда же поставишь специальные иксы (их ещё поискать надо) и какой-нибудь WM. Потому что из коробки в SFU нет никакой графики, только консоль.
ЗЫ: Нет, я всё понимаю, оптимизация и всё такое... но зачем freedownloadmanager и прочие подобные пересобирать? Каких оптимизаций там тебе не хватает? У тебя freedownloadmanager жрёт процессор?

yroslavasako

Зачем тогда тебе эта гентушная штука? Почему нельзя скомпилировать стандартным c++?
А подумать самому? К тому же человек дал подсказку: написал список необходимых приложений.
скомпилируй плиз под винды mplayer и mencoder. А потом сравни количество затраченных усилий с банальным вызовом
USE="-включить все что можно" emerge mplayer
Я тебе коротко набрасаю план твоих действий. Под винды надо предварительно скачать десятки! сторонних либ (с разных местоположений и разными спсобами, какие вытаскиваются с фтп или http, некоторые лежат в svn скомпилить их, причем в этом списке есть либы, которые дружат друг с другом в только определенных версиях (тебе тоже придется обретать божественное знание методом проб и ошибок, не смей подглядывать в пакетные менеджеры). Потом запихнув скомпиленные либы и хедеры к ним в определенную папку, тебе можно будет, указав configure эту папку внешней для хедеров и либ, наконец-то статически собрать mplayer.
Это расплата за концепцию динамической линковки, неизобретения велоиспеда и сборки приложений "по кирпичикам". Без подручных средств эти кирпичики трудно собирать.

dgaf

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

kruzer25

Ещё раз.
Полученные бинарники будут под Win32 или под Interix?
Если под Interix - то ничего ему это не даст, никакой mplayer под interix-ом он запустить не сможет.
Если он может из Interix скомпилировать бинарники для Win32 - почему он не может точно так же скомпилировать бинарники для Win32 из-под какого-нибудь обычного длнукса?

yroslavasako

Полученные бинарники будут под Win32 или под Interix?
признаю, я не так верно воспринял твой пост. Interixу ничего не поможет.
Если под Interix - то ничего ему это не даст, никакой mplayer под interix-ом он запустить не сможет.
Ну mplayerу главное добраться до ring-0, а дальше проще, я у него видел в списке драйверов vo какой-то переделанный из драйвера видюхи. Главное чтобы система не мешала выводить :)

kruzer25

Ну mplayerу главное добраться до ring-0, а дальше проще, я у него видел в списке драйверов vo какой-то переделанный из драйвера видюхи. Главное чтобы система не мешала выводить
ОК, про mplayer - верю.
А остальные графические?
Хотя есть, вроде бы, какие-то x-клиенты для interix, и их можно использовать вместе с x-сервером cygwin-а... но легче уж тогда пользоваться нативными виндовыми приложениями.

dangerr

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

kruzer25

я хочу получать бинарники подобные тем, что лежат на оффсайтах программ, но с оптимизацией и возможностью выбора опций сборки
Ага, то есть, бинарники Win32.
Почему ты думаешь, что в Interix тебе легче будет получить эти бинарники, чем в Linux? Interix как платформа для сборки приложений под третью систему (Win32) теоретически ничем не отличается от Linux. А практически - отличается очень сильно, потому что то, что достижимо в большинстве дистрибутивов Linux введением одной команды, в Interix повлечёт за собой многочасовой или многодневный секс по причине отсутствия кучи вещей, которые в Linux есть, а в POSIX - нет.
Если ты думаешь, что тебе как-то поможет, что Interix общается с ядром Windows, как и Win32 - вынужден тебя разочаровать, тебе это ничего не даст. Это всего лишь возможность получить POSIX-совместимое окружение без установки ещё одной ОС. К Win32 оно относится так же, как и любая другая ОС, поставленная в виртуальную машину, с некоторыми не имеющими значения в данном случае отличиями - прямая работа с ядром Windows (т.е. никаких потерь производительности на виртуализации) и работа с теми же ФС/пользователями/сетью/другими разделяемыми ресурсами, что и Win32 (да и это с оговорками - например, звука там не будет, а с X надо будет трахаться и ставить Cygwin).

kruzer25

Мне не важно гентушная она будет, виндовая или еще какая...
А если неважно - в чём проблема? Ставь генту, и собирай в генту гентушные бинарники, интерикс-то тебе зачем понадобился?
Или тебе всё-таки под виндой хочется запускать эти бинарники? Так под виндой, знаешь ли, гентушные бинарники не запустятся, да и интериксовские будут работать только в интериксе (со всеми описанными выше ограничениями - никакого звука, никакого видео, никаких окон Windows итд).

yroslavasako

скомпилируй плиз под винды mplayer
Попробовал заняться на выходных. Выходный потрачены, результата ноль - я свалился на первой же необходимой внешней либе - freetype2. Установил cygwin, со второго раза установил mingw (первый раза часа три искал почему на него никак не встает связка automake,autoconf,libtool кое как собрал эту связку для msys и cygwin. Достижения на этом и закончились. Разобраться в автоконфе мне не удалось - это просто адское изобретение, "кирпичики"-библиотеки оборачиваются для совместимости размеров специальным многослойным враппером с ножками, чтобы модули сами брели по направлению к сборке и складывались в очередной кошмар архитектора, каковым безусловно является freetype2. Начиная с того, что у него есть несколько целей сборки: amiga ansi atari beos cygwin dos hurd mac netware os2 symbian unix vms win32 и в моем случае рекомендовано собирать unix. Ну ладно, со второго раза после того как не собрался первый я догадлся доки почитать. Страшно другое, этот пакет очень сильно использует autoconf, и у него что-то не сходится. Не знаю каким образом, но он так и не смог найти установленного libtool, говорит, что макрос LT_INIT(win32-dll) ему не известен

vall

надо брать готовые autotools для mingw.
cygwin для сохранения рассудка вообще трогать не рекомендуется.

yroslavasako

надо брать готовые autotools для mingw.
сайт mingw: это так просто, что если вам не терпится, то можете скомпилить сами, нам же пока недосуг. Далее следует ссылка на gnuшные проекты, предложение скачать сырцы и сделать ./configure --prefix=mingw && make && make install. А вообще после инсталла по их методике больше половины тестов make -k check в либтулзах не проходится. А недавно попытался еще раз устновить (переставить - вдруг заработает) automake - так он вообще вошел в цикл, начал выполнять цель instal-all-recursive и так из нее и не вышел :grin:
Отзовитесь те, кто ставил libtool версии 2.4.4 (минимальное требование) и выше под винду и кому удалось это успешно.

tokuchu

Про portage не знаю - что-то вроде делали.
А ещё pkgsrc под винду тоже портировано. Это из NetBSD, кажется.

yroslavasako

прогнал check на mingw, теперь на цигвине гоняю. Как вы думаете, стоит им на мыло логи скинуть?

kruzer25

А ещё pkgsrc под винду тоже портировано. Это из NetBSD, кажется.
Это легко - у SFU/SUA, вроде, как раз ноги из NetBSD растут.
Что интереснее - под Interix портировали дебиан! И проект даже довольно жив (последнее обновление - в конце июня 2008 года).
http://www.debian-interix.net/

yroslavasako

кстати, у самих дебинов стоит ссылка на аналогичный проект гентузоидов: http://forums.gentoo.org/viewtopic-t-319691-postdays-0-posto...

kruzer25

GeNToo был первоапрельской шуткой гентушников, а в том треде, на который ты дал ссылку - какой-то студент немного поковырялся с попыткой всё собрать в SFU, у него возникли какие-то проблемы, и он на всё это забил. Забил два года назад.

dangerr

C чего вообще все (особенно Пенартур) решили, что мне нужно что-то, что будет делать бинарники, работающие под cygwin/minGW/interix? Среди перечисленный мной программ почти половина, такие, которые написаны нативно для Windows: akelpad, windjvu, putty, filezilla-server, mediaplayerclassic, miranda, mp3DirectCut, Infrarecorder, 7-zip, clamwin
Их тоже надо под posix-расширением для windows собирать?
з.ы. да и такие вещи как openoffice, firefox, openvpn, virtualbox, мне почему-то кажется, имеют различия между win и unix версиями на уровне исходников.

dangerr

А ещё pkgsrc под винду тоже портировано. Это из NetBSD, кажется.
А ты сам пробовал ставить случайно?

kruzer25

C чего вообще все (особенно Пенартур) решили, что мне нужно что-то, что будет делать бинарники, работающие под cygwin/minGW/interix?
С того, что ты вдруг решил собирать эти бинарники под интериксом.
Как я тут уже говорил, никаких плюсов у интерикса перед линуксом в том, чтобы собирать бинарники под Win32, нет.
Возможно, могут быть какие-то преимущества при сборке нативных бинарников (т.е. под интерикс).
Ещё раз: зачем тебе вообще интерикс? Почему бы не поставить в виртуальную машину свой любимый линукс и собирать нужные win32-бинарники там, без всякого секса?

yroslavasako

C чего вообще все (особенно Пенартур) решили, что мне нужно что-то, что будет делать бинарники, работающие под minGW. Среди перечисленный мной программ почти половина, такие, которые написаны нативно для Windows
Думаю, тебе будет небесполезно узнать, что mingw компилит именно нативные виндовые приложения, и явялется самым популярным опенсорс компилятором под винду. Тот же Filezilla, который ты перечеслял, использует именно mingw, проверено на личном опыте. Мне кажется, что и остальные C++ проекты написаны из расчета, что будут компилироваться mingw, хотя некоторые предлагают выбор, тот же freetype можно компилить майкрософтовской студией, не знаю уж зачем такая build был добавлен в список

yroslavasako

Почему бы не поставить в виртуальную машину свой любимый линукс и собирать нужные win32-бинарники там, без всякого секса?
Попробуй сначала, если такой умный. Думаю, очень быстро узнаешь, какая это жопа.

kruzer25

Попробуй сначала, если такой умный. Думаю, очень быстро узнаешь, какая это жопа.
То есть, ты пробовал собирать Win32-бинарники под линуксом, очень быстро узнал, какая это жопа, и решил попробовать линукс заменить на интерикс? :lol:

dangerr

С того, что ты вдруг решил собирать эти бинарники под интериксом.

Что за манера? Уже который раз ты пытаешься выдать слова, которых я не говорил за мои.
Как я тут уже говорил, никаких плюсов у интерикса перед линуксом в том, чтобы собирать бинарники под Win32, нет.

Между interix и linux ничего общего я вообще не вижу. Interix - это posix-систему для ядра NT, а Linux - это другое ядро, на основе которого делают обычно другую posix-систему.
свой любимый линукс

Я не люблю Linux
И еще раз вопрос: где еще кроме как под виндой я смогу собрать например miranda?

kruzer25

И еще раз вопрос: где еще кроме как под виндой я смогу собрать например miranda?
Кажется, до тебя ещё не дошло.
В чём, по-твоему, разница в сборке приложений для целевой платформы Win32 под интериксом и под линуксом?
Забудь про то, что интерикс и та винда, которой ты пользуешься каждый день, работают через одно и то же NT Kernel. Тебе это никогда не пригодится. Пользовательским приложениям насрать на этот NT Kernel, они работают через Win32 (если мы говорим про обычные виндовые приложения). Интерикс от этого Win32 гораздо дальше, чем от линукса. Приложения, предназначенные для линукса, в большинстве случаев (во многих - после интенсивного допиливания, но тем не менее) можно собрать под Interix + SFU для этого самого Interix + SFU (в некоторых случаях даже только для Interix, без SFU). Приложения, предназначенные для винды, для интерикса ты собрать не сможешь практически никогда (если это не Hello World для командной строки).
С ткаким же успехом ты можешь спросить, как параллельно поставить на компьютер винду и линукс, чтобы под линуксом проги для винды собирать. Ведь на другой комп линукс нельзя поставить, ка кэто - бинарники ведь для другого компа соберутся, а не для того, который тебе нужен. Вот и тут так, только вместо "этот комп"/"другой комп" у тебя "NT Kernel"/"Linux", а вместо "винда"/"линукс" - "Win32"/"Interix".

dangerr

Ладно, minGW оттуда стоит убрать. :)
Инфа в русской вики дала мне слишком мало понимания что это.... однако, я не хотел бы ограничиваться программами, компилируемыми с помощью minGW.

dangerr

Приложения, предназначенные для винды, для интерикса ты собрать не сможешь практически никогда (если это не Hello World для командной строки).
Если я правильно перевел это на русский язык:
Приложения, написанные под win32api, а не posix, не возможно собрать под posix-систему, такую как GNU/Linux или Interix/NT

то третий или чевертый раз повторю, что я хочу собирать приложения нативно под win32 (а вообще-то под 64). Чтобы они работали не через костыль в виде Interix, а по-нормальному. Если это конечно posix-приложение (такое как mplayer то тут понятное дело без костылей не обойтись.

kruzer25

то третий или чевертый раз повторю, что я хочу собирать приложения нативно под win32
То есть, целевая платформа, на которой должен запускаться скомпилированный бинарник - win32.
Блять, ну и нахуя ты тут всем мозг ебёшь интериксом? Что тебе даст этот интерикс? Нихуя интерикс не отличается от линукса, только в худшую сторону - тем, что под него нихуя нет; И ТЫ, БЛЯТЬ, ПОД ИНТЕРИКСОМ СМОЖЕШЬ СОБИРАТЬ ПРИЛОЖЕНИЯ НЕ ДЛЯ ИНТЕРИКСА ТОЛЬКО С БОЛЬШИМ ГЕМОРРОЕМ, ЧЕМ ПОД ЛИНУКСОМ!
Тебе в твою тупую башку уже весь этот тред пытаются вдолбить, что ИНТЕРИКС _ ЭТО НЕ WIN32!
До тебя это дойдёт или нет?

tokuchu

А ещё pkgsrc под винду тоже портировано. Это из NetBSD, кажется.
А ты сам пробовал ставить случайно?
Не пробовал. Ты спрашивал про системы - я тебе ответил про то, что слышал. Такая информация наверное лучше, чем никакой.
Кстати, вроде КОНТРА что-то про это писал в своё время.

Ivan8209

> Наверное проект загнулся, не успев стартануть.
Специально для таких энтузиастов некто Todd Vierling поддерживает
ту часть pkgsrc, которая там для того, чтобы оно работало на Interix,
т. е. твоей винде. Когда я это проверял, оно и вправду работало.
Если же оно по какой-то непонятной причине не работает, ты можешь
сообщить об этом в соответствующие органы.
---
"This user is BSD-compliant."
Оставить комментарий
Имя или ник:
Комментарий: