Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Ruby to EXE, Опишите последовательность действий! 
:(
    Опции темы
Cinot
  Дата 15.12.2008, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



Насколько я понял, есть 2 программы для преобразования проекта на Ruby в один исполняемый файл: rubyscript2exe и exerb. Есть ещё allinoneruby, но я не понял, что он делает.
Наверняка, почти все здесь использовали эти (или другие?) программы для создания exe-шника для Windows. Поделитель, пожалуйста, опытом, конкретными примерами, последовательностью действий - никак не могу разобраться!
Нужно как-то "засунуть" в EXE все библиотеки, иконки и т.д., чтобы программа запускалась на любом компьютере с Windows.
PM MAIL   Вверх
doomik
Дата 15.12.2008, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Одинокий волк
**


Профиль
Группа: Участник
Сообщений: 360
Регистрация: 25.10.2005
Где: #vingrad

Репутация: нет
Всего: 15



Пробывал сегодня rubyscript2exe-0.5.3.
Взял простой скрипт из книжки ( работа с SQLite, создать базу, добавить, найти ).
Вышло нормально, тестил на втором компе где не установлен Ruby - сработало, только заметна задержка при старте ( видимо происходить распаковка всех нужных библиотек ).
Вес скрипта стал больше, из 1,26 КБ в 1,82 МБ.

Запустить rubyscript2exe можно из командной строки
Код

C:\Documents and Settings\User\Рабочий стол> rubyscript2exe.rb filename.rb

где filename.rb это твой скрипт.

Здесь  можно почитать побольше.


--------------------
"Единственный способ изучать новый язык программирования - писать на нем 
программы." 
- Brian Kernighan

Remember, st1ng3r 
/server irc.ircline.ru /j #vingrad
PM   Вверх
source777
Дата 15.12.2008, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Имхо, если нужен бинарник, то лучше воспользоваться компиляторами Ruby под .NET или под Java.


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
doomik
Дата 16.12.2008, 08:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Одинокий волк
**


Профиль
Группа: Участник
Сообщений: 360
Регистрация: 25.10.2005
Где: #vingrad

Репутация: нет
Всего: 15



source777,
Цитата

Имхо, если нужен бинарник, то лучше воспользоваться компиляторами Ruby под .NET или под Java. 

Т.е перейти на Jruby, IronRuby ? 


--------------------
"Единственный способ изучать новый язык программирования - писать на нем 
программы." 
- Brian Kernighan

Remember, st1ng3r 
/server irc.ircline.ru /j #vingrad
PM   Вверх
Cinot
Дата 16.12.2008, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



У меня не просто скриптик, у меня программа с интерфейсом (использующая FXRuby), с иконками и подгружаемыми библиотеками. Нужно запихнуть в EXE всё это.
Получилось у меня что-то вчера с rubyscript2exe, но это что-то мало того, что грузится секунду (заметно так), так ещё периодически просто самостоятельно выгружается сразу после загрузки - даже окно не появляется.
PM MAIL   Вверх
source777
Дата 16.12.2008, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(doomik @  16.12.2008,  08:48 Найти цитируемый пост)
Т.е перейти на Jruby, IronRuby ?  
Ну а что плохого в использовании Jruby, IronRuby, xRuby, Rubinius, YARV, если этого требует текущая задача? Хотя мне таких задач не попадалось, где от Ruby требовался exe на выходе...



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
doomik
Дата 16.12.2008, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Одинокий волк
**


Профиль
Группа: Участник
Сообщений: 360
Регистрация: 25.10.2005
Где: #vingrad

Репутация: нет
Всего: 15



source777,
Цитата

Ну а что плохого в использовании Jruby, IronRuby, xRuby, Rubinius, YARV, если этого требует текущая задача? Хотя мне таких задач не попадалось, где от Ruby требовался exe на выходе...

Ничего, просто если я например захочу поделится с друзьями скриптом то не у всех установлен JRE или .NET Framework а сам Ruby уж точно тогда пойдут вопросы похожие на "а зачем эта программа ?", " а она нужна мне?", "дай ссылку скачать !!!"  smile а вот насчёт .exe проблем быть не должно.



--------------------
"Единственный способ изучать новый язык программирования - писать на нем 
программы." 
- Brian Kernighan

Remember, st1ng3r 
/server irc.ircline.ru /j #vingrad
PM   Вверх
Cinot
  Дата 17.12.2008, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



Неужели никто из раздела Ruby никогда не делал оконное приложение и EXE для беспроблемного запуска на любом Windows-компе?
PM MAIL   Вверх
source777
Дата 17.12.2008, 13:02 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Cinot @  17.12.2008,  11:15 Найти цитируемый пост)
Неужели никто из раздела Ruby никогда не делал оконное приложение и EXE для беспроблемного запуска на любом Windows-компе? 

Нафига? Меня для этих целей C# вполне устраивает. Или ты думаешь, что все кто заглядывает в раздел Ruby, программируют только на Ruby  smile 

Цитата(doomik @  16.12.2008,  21:06 Найти цитируемый пост)
если я например захочу поделится с друзьями скриптом то не у всех установлен JRE или .NET Framework
Странные у тебя друзья, я уж забыл, когда видел комп без установленного на нём .NET`а или Mono, JRE правда встречается реже...


Цитата(doomik @  16.12.2008,  21:06 Найти цитируемый пост)
тогда пойдут вопросы похожие на "а зачем эта программа ?", " а она нужна мне?"
Имхо, очень хорошие вопросы, без ответа на них ты не делишься с ними своей программой, а втюхиваешь ненужный им исполняемый файл на их же компы, некрасиво как-то по отношению к друзьям.... smile 



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Cinot
Дата 17.12.2008, 15:08 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



Цитата
Нафига? Меня для этих целей C# вполне устраивает. Или ты думаешь, что все кто заглядывает в раздел Ruby, программируют только на Ruby  smile

Я думаю, что программисты на Ruby в разделе Ruby всё же есть - то есть, не те, кто по одному скриптику пишет в дополнение к своему основному языку, а те, кто делает полноценные приложения на Ruby. К ним и вопрос.
PM MAIL   Вверх
kemiisto
  Дата 17.12.2008, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(doomik @  16.12.2008,  19:06 Найти цитируемый пост)
Ничего, просто если я например захочу поделится с друзьями скриптом то не у всех установлен JRE или .NET Framework а сам Ruby уж точно тогда пойдут вопросы похожие на "а зачем эта программа ?", " а она нужна мне?", "дай ссылку скачать !!!" smile а вот насчёт .exe проблем быть не должно.

doomik, ты и твои друзья - твердолобые консерваторы! smile Ты уж извини.
  • Поймите уже, что компиляция с последующей линковкой в один исполняемый файл - прошлый век! Сейчас наступила эра компонентного и переносимого ПО (Smalltalk, Component Pascal), эра JIT-компиляции (Java, C#).  Это во-первых. 
  • Во-вторых, Ruby - принципиально интерпретируемый язык. И пытаться использовать какой-то "левый" компилятор... smile

Добавлено через 2 минуты и 51 секунду
А вообще, в хороших ОС (читай Mac OS X) Ruby идёт "из коробки"! smile 


--------------------
PM MAIL WWW GTalk Jabber   Вверх
kemiisto
  Дата 17.12.2008, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



И ещё - у Ruby вот-вот появится возможность компиляции в байт-код для собственной VM (а не .NET, JVM). Называется эта виртуальная машина YARV. Правда, стоит отметить, что "завтраками кормят" уже больше года. YARV повится в версии 1.9.1, которая должна была выйти уже год назад, но до сих пор не вышла. Обещали в конце декабря... Как бы там ни было, а в Ruby 2.0 эта VM уже точно будет полноценным компонентом.

Добавлено @ 18:56
А, походу 1.9.1 уже можно дёрнуть из svn repo! smile А вот и бенчмарк. Неплохо, очень неплохо. Пойду качать.

Это сообщение отредактировал(а) kemiisto - 17.12.2008, 18:56


--------------------
PM MAIL WWW GTalk Jabber   Вверх
source777
Дата 17.12.2008, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Cinot @  17.12.2008,  15:08 Найти цитируемый пост)
Я думаю, что программисты на Ruby в разделе Ruby всё же есть - то есть, не те, кто по одному скриптику пишет в дополнение к своему основному языку, а те, кто делает полноценные приложения на Ruby. К ним и вопрос. 
Ну я делаю на Ruby полноценные приложения и я уже тебе ответил, что тебе нужна VM, другого вменяемого решения тебе врядли кто предложит... 

P.S. У любого программиста как минимум 3 основных языка, если ты знаешь только Ruby, то ты ещё не программист, а всего лишь кодер. Можешь конечно обратиться к таким же кодерам как ты, но у них обычно бессмысленно спрашивать об архитектурных решениях, т.к. кодеры жестко ограничены языком, на котором кодируют, и как следствие многое делают через .опу.


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Cinot
Дата 18.12.2008, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



source777, мне не знакомо ваше деление на программистов/непрограммистов по количеству языков. И потом, разве Ruby не является самодостаточным? Зачем знать ещё какие-то языки, когда лучше изучить один нормально и применять его?

kemiisto, что значит "компонентное ПО"? Да и вообще, с JIT-компиляцией и VM я незнаком. Объясните популярно! Я привык, что все программы, особенно простенькие, можно запустить EXE-шником. И мне нужно, чтобы мой маленький проект был каким-то образом скомпилирован в приложение, которое без установки дополнительных средств (всяких Java VM и т.п.) запускалось с любого компьютера под управлением Windows. Разве это не EXE-файл?

Это сообщение отредактировал(а) Cinot - 18.3.2009, 17:49
PM MAIL   Вверх
source777
Дата 18.12.2008, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Cinot @  18.12.2008,  09:33 Найти цитируемый пост)
Зачем знать ещё какие-то языки, когда лучше изучить один нормально и применять его?
Это и есть чисто кодерская позиция, программистская позиция - выбирать язык наиболее подходящий под задачу. 


Цитата(Cinot @  18.12.2008,  09:33 Найти цитируемый пост)
source777, мне не знакомо ваше деление на программистов/непрограммистов по количеству языков.
Оно во-первых не моё(в плане авторства), а во-вторых не по количеству языков, а по образу мышления, не позволяющему оставаться в тесных рамках одного языка программирования.



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Cinot
Дата 18.12.2008, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



source777, что-то не помню вакансий вроде "Нужен кодер на С++" - обычно с языками программирования работает программист, а не какой-то там кодер. Ну да ладно: кому нравится учить несколько языков - пусть учат, меня волнует создание полноценного приложения именно на Ruby.
PM MAIL   Вверх
source777
Дата 18.12.2008, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Cinot @  18.12.2008,  14:13 Найти цитируемый пост)
что-то не помню вакансий вроде "Нужен кодер на С++"
Естественно, HR-менеджеры в абсолютном большинстве верх безграмотности в данном вопросе, обычно требуется программист со знанием C++, а не "программист С++", что нонсенс само по себе.

Цитата(Cinot @  18.12.2008,  14:13 Найти цитируемый пост)
меня волнует создание полноценного приложения именно на Ruby. 
Что есть полноценное приложение? Думаешь exe-файл, а вот и нифига подобного, полноценное приложение - это приложение, которое справляется со своими задачами!



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Cinot
Дата 18.12.2008, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



source777, оно уже справляется, только в формате .rb. Теперь нужно, чтобы оно запускалось и с других компов.
Хватит флудить, я жду помощи от тех, кто в теме.
PM MAIL   Вверх
source777
Дата 18.12.2008, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 6
Всего: 56



Цитата(Cinot @  18.12.2008,  15:39 Найти цитируемый пост)
Хватит флудить, я жду помощи от тех, кто в теме. 

Да жди на здоровье, только все нормальные варианты тебе уже были предложены:
Цитата(source777 @  16.12.2008,  13:17 Найти цитируемый пост)
Jruby, IronRuby, xRuby, Rubinius, YARV


За сим откланиваюсь, устраивайся поудобнее, ибо ждать чего-то нового по данной теме тебе придётся __очень__ долго...



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Cinot
  Дата 18.12.2008, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



Дело в том, что тема уже на 2 страницах, а никто не может объяснить на простом языке, как сделать то, о чём я спрашивал - организовать запуск Ruby-приложения на любом win-компе. 
Jruby, xRuby - это compiles Ruby source code (.rb) to Java bytecode (.class)? И что мне делать с этим .class? Как получить исполняемый модуль-то? Или программы теперь запускаются не из EXE? =)
PM MAIL   Вверх
kemiisto
Дата 18.12.2008, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(Cinot @  18.12.2008,  07:33 Найти цитируемый пост)
Да и вообще, с JIT-компиляцией и VM я незнаком.

Итак, начнём с того, что исходный код твоей программы на языке высокого уровня нужно перевести в машинно-зависимый код для конкретной платформы. Языки высокого уровня имитируют естественные языки, используя некоторые слова разговорного языка и общепринятые математические символы. Эти языки более удобны для человека, с помощью них, можно писать программы до нескольких тысяч строк длиной. Но, поскольку машина понимает только свой машинный язык, программа на алгоритмическом языке перед выполнением должна быть переведена на этот язык с помощью специально программы - транслятора (англ. translator - переводчик). Эти языки машинно независимы (однако для каждого языка и каждого типа ЭВМ необходимо разработать собственный транслятор).

Так вот, существует два способа трансляции:

Интерпретация (interpretation) — построчное (покомандное) исполнение программы. Каждая очередная инструкция исходной программы переводится в машинный код и сразу выполняется. Программа требует для исполнения наличия на машине интерпретатора и исходного кода.

Компиляция (compilation) — перевод всей программы в машинный код. Полученный исполняемый файл в дальнейшем может быть запущен самостоятельно.

Различия между двумя видами трансляции поясню на примере. Допустим, ты являешься обладателем кулинарного рецепта на иностранном языке. Если решишся приготовить по нему блюдо, у тебя есть два пути:
1) Можно сначала полностью перевести (и записать) текст рецепта на родной язык и лишь затем перейти к приготовлению блюда, основываясь уже на переведённом рецепте. Необходимости в исходный рецепт при этом Вы уже не испытываете (и никогда не испытаете). Примерно так поступает компилятор.
2) А можно, по мере перевода рецепта, сразу выполнять отдельные стадии, не записывая текст перевода. В таком случае Вы не получите текст рецепта на родном языке, но получите тоже самое блюдо! Если же возникнет необходимость приготовить блюдо ещё раз - придется переводить рецепт повторно. 

Ruby - язык принципиально интерпретируемый! Поэтому программа на Ruby требует наличия на машине интерпретатора Ruby. Потому что так задумано и точка. Не нравится - пиши на компилируемых языках. Благо их много.

Теперь пару слов о т.н. виртуальных машинах. Сейчас это очень популярная идея. Суть в том, что твоя программа компилируется не в машинно-зависимый код, а в некое промежуточное представление. Затем полученный код исполняется виртуальной машиной. Грубо говоря, этот промежуточный код интерпретируется. Точнее, нужный участок (например, промежуточный код вызываемой функции) компилируется в машинно-зависимый код, а затем вызывается. Такую компиляцию называют JIT (Just In Time), компиляция "на лету", "строго вовремя". Но иногда, конечно, выгоднее интерпретировать какой-то кусок кода, а фоном компилировать его (см. Java HotSpot).

Такой подход обеспечивает переносимость кода. Т.е. твой промежуточный код будет запускаться на любой платформе, для которой существует соответствующая виртуальная машина (VM). Так, например, работает Java, .NET, Smalltalk. Впервые, кстати, применено было Виртом. Для PASCAL существовало промежуточное представление (P-code), которое исполнялось виртуальной машиной. Это тоже поспособствовало широкому распространению языка.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Cinot
Дата 18.12.2008, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



kemiisto, спасибо за подробные разъяснения. Но я не понял, как скомпилировать программу в код для исполнения на виртуальной машине, чтобы было ЧТО-ТО, что могут запускать другие. Что это за файл в итоге?
Что касается интерпретатора, то при таком подходе нужно для своих программ делать инсталлятор с предварительной установкой Ruby на компы? Плохо получается, если так.
PM MAIL   Вверх
kemiisto
Дата 19.12.2008, 01:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(Cinot @  18.12.2008,  18:48 Найти цитируемый пост)
Но я не понял, как скомпилировать программу в код для исполнения на виртуальной машине, чтобы было ЧТО-ТО, что могут запускать другие. Что это за файл в итоге?

От виртуальной машины зависит. Если будешь использовать IronRuby, видимо, получишь *.exe, который запустится по двойному клику при наличии соотвествующей версии .NET Framework. Если JRuby, то можно упоковать всё в *.jar, который запустится по двойному клику при наличии соотвествующей версии Java Runtime Enviroment. И в том и в другом случае необходимо наличие дополнительного ПО. Так пусть уж этим ПО будет Ruby! smile 

Цитата(Cinot @  18.12.2008,  18:48 Найти цитируемый пост)
Что касается интерпретатора, то при таком подходе нужно для своих программ делать инсталлятор с предварительной установкой Ruby на компы? Плохо получается, если так. 

Плохо - использовать инструмент не по назначению. Cinot, пойми, Ruby - скриптовый язык. Писать на нём GUI под Windows с линковкой в один исполняемый файл - это не дело. 


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Cinot
Дата 19.12.2008, 09:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



kemiisto, насколько мне известно, Ruby - это не скриптовый язык, а вполне себе полноценный язык, ничем не уступающий большинству других. Поэтому я его и начал учить. Просто, и со вкусом. Ну а что касается всплывающего косяка, то придётся либо лучше разобраться в rubyscript2exe, либо сделать exe в IronRuby в надежде на то, что установлен .NET Framework, но этот вариант мне уже не нравится. За советы спасибо.
PM MAIL   Вверх
kemiisto
  Дата 19.12.2008, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(Cinot @  19.12.2008,  07:49 Найти цитируемый пост)
kemiisto, насколько мне известно, Ruby - это не скриптовый язык, а вполне себе полноценный язык, ничем не уступающий большинству других.

Скриптовый, скриптовый! Сам Matz говорит: 
Цитата
I wanted a scripting language that was more powerful than Perl, and more object-oriented than Python.

Что хотел - то и получил. И ко всему прочему:
Цитата
The standard 1.8.6 (stable) implementation is written in C, as a single-pass interpreted language.


Т.е. Ruby - скриптовый интерпретируемый язык. Поэтому, твоя посылка:
Цитата
Наверняка, почти все здесь использовали эти (или другие?) программы для создания exe-шника для Windows.

неверна. Вот такие пироги. smile 


--------------------
PM MAIL WWW GTalk Jabber   Вверх
doomik
  Дата 19.12.2008, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Одинокий волк
**


Профиль
Группа: Участник
Сообщений: 360
Регистрация: 25.10.2005
Где: #vingrad

Репутация: нет
Всего: 15



source777,
Цитата

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


Под 
Цитата

тогда пойдут вопросы похожие на "а зачем эта программа ?", " а она нужна мне?"

я имел ввиду .NET, JRE.

kemiisto,
Цитата

doomik, ты и твои друзья - твердолобые консерваторы! smile Ты уж извини.

Я не нуждаюсь в exe т.к .NET + JRE установлены.

Цитата

Скриптовый, скриптовый!

Чем его делает другим от Java ? В Ruby тоже есть ООП, можно писать программы использующие GUI, и у обоих байт-код.


--------------------
"Единственный способ изучать новый язык программирования - писать на нем 
программы." 
- Brian Kernighan

Remember, st1ng3r 
/server irc.ircline.ru /j #vingrad
PM   Вверх
kemiisto
Дата 19.12.2008, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(doomik @  19.12.2008,  10:44 Найти цитируемый пост)
и у обоих байт-код

doomik, я уже начинаю злится. Вы что, читать не умеете:
Цитата
The standard 1.8.6 (stable) implementation is written in C, as a single-pass interpreted language.

JRuby, IronRuby - это уже сторонние реализации Ruby. Стандартная реализация - интерпретатор. Никаких там байт-кодов и виртуальной машины. Чистый итерпретируемый язык.

Цитата(doomik @  19.12.2008,  10:44 Найти цитируемый пост)
Чем его делает другим от Java ?

Другим его делаю создатели. Я уже привёл цитату Matz'a. 
Цитата
Скриптовый язык (англ. scripting language, в русскоязычной литературе принято название язык сценариев) — язык программирования, разработанный для записи «сценариев», последовательностей операций, которые пользователь может выполнять на компьютере.

Вот именно для этих целей и был создан Ruby, именно для них его и надо использовать.

Цитата(doomik @  19.12.2008,  10:44 Найти цитируемый пост)
Под 
Цитата

тогда пойдут вопросы похожие на "а зачем эта программа ?", " а она нужна мне?"

я имел ввиду .NET, JRE.

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



--------------------
PM MAIL WWW GTalk Jabber   Вверх
SoulKeeper
Дата 19.12.2008, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 14.1.2007
Где: Ukraine, Lviv.

Репутация: нет
Всего: 15



Если уж сильно сильно хочется в exe независимый от jvm/net, то можно пойти путем ruby -> jruby -> java -> gcj -> exe.

Но целесообразность таких действий - отдельный вопрос.
PM MAIL   Вверх
Cinot
  Дата 19.12.2008, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



Не понимаю, зачем тогда wx/qt/tk/fx, если GUI для Ruby (то есть наоборот) не используется?
PM MAIL   Вверх
kemiisto
Дата 19.12.2008, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 1
Всего: 160



Цитата(Cinot @  19.12.2008,  15:57 Найти цитируемый пост)
Не понимаю, зачем тогда wx/qt/tk/fx, если GUI для Ruby (то есть наоборот) не используется? 

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


--------------------
PM MAIL WWW GTalk Jabber   Вверх
Cinot
  Дата 21.12.2008, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



kemiisto, ладно, раз всё так плохо, то, может, IronRuby имеет такой же синтаксис, а позволяет писать приложения "в одном"? Или у него не ситаксис Ruby, а приложение там тоже нельзя полноценное сделать? Там тоже fxruby можно использовать? Короче, что можно посоветовать человеку, который хочет писать полезные программки (не скрипты) на языке Ruby?
PM MAIL   Вверх
1null1
Дата 21.12.2008, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 21.12.2008

Репутация: нет
Всего: нет



Где то мельком читал, что делаеться компилер для Ruby/
PM MAIL   Вверх
Cinot
Дата 21.12.2008, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 20.11.2008

Репутация: нет
Всего: нет



Для упаковки (вроде, не компилляции) программы в EXE-файл созданы rubyscript2exe и exerb
http://exerb.sourceforge.jp/index.en.html
Вроде, неплохое решение для тех, кому нравится синтаксис языка и не хочется писать некие скрипты. Но с этим я пока не очень разобрался.
PM MAIL   Вверх
polkovnikk
Дата 23.9.2009, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.9.2009

Репутация: нет
Всего: нет



Подскажите, ПЖЛ, кто работал с rubyscript2exe???
чет у меня не получается ехе файлик сделать....    smile 
запускаю через rubyscript2exe  свой файлик.руби програма начинает выполнятся, работает до конца, затем просто закрывается и .......
нет никакого ехе.... ошибок не выдает!
в чем может быть прабл????
помогите плиз... а то я уже замучился  smile 
заранее благодарен!


M
source777
Для нового вопроса нужно создавать новую тему. Кроме того необходимо детально описывать проблему и приводить логи, а не просто "yyy не работает, что делать?"


Это сообщение отредактировал(а) source777 - 23.9.2009, 18:50
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Ruby: Общие вопросы"
source777
  • С чего начать? начинаем
  • Ссылки на полезные ресурсы смотрим тут
  • Обязательно следуйте правилам Vingrad.
  • Пожалуйста, прочитайте рекомендации по работе в форуме и навигации по Vingrad.
  • Для вставки кодов Ruby используйте тег: [code=ruby]код[/code]. Когда в будущем подсветка синтаксиса для Ruby будет реализована, весь исходных код преобразится.
  • Используйтe чекбокс "Транслит" (возле кнопок кодов), если у Вас нет русских шрифтов.
  • Помните, для каждого вопроса должна быть своя тема.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, source777.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Ruby: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1674 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.