Latest stable SPF/Linux

12 messages Options
Embed this post
Permalink
Aleksej Saushev

Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
  Здравствуйте!

Кто-нибудь может описать сборку SPF под линукс и собрать 4.18?
У меня почему-то общение с WINE плохо идёт.
Andrey Cherezov

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
Добрый день, Aleksej Saushev!

Ваше сообщение от 08.02.2007 20:37:
> Кто-нибудь может описать сборку SPF под линукс и собрать 4.18?
>  
Там есть makefile. И build.sh, build.bat.
Более поздние версии не собирались под Cygwin, да и не пригодился LinuxSPF
никому, поэтому [справедливо] заброшен.

LinuxSPF - довольно урезанный SPF4, не все его возможности поддерживает.
В том числе и потому, что возможности Linux урезаны по сравнению с
Windows ;)
Список слов см. http://spf.sourceforge.net/cgi-bin/spf.cgi (это LinuxSPF
живьем на
сервере WORDS запускает).

Но этой версии достаточно, чтобы написать на Форте под Linux что угодно -
он умеет компилировать, умеет цеплять .so, поэтому столь же легко расширяем
как виндовый SPF. Вот только записывать бинарники не обучен.


Mihail Maksimov-2

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
In reply to this post by Aleksej Saushev

----- Original Message -----
From: "Aleksej Saushev" <[hidden email]>
To: <[hidden email]>
Sent: Thursday, February 08, 2007 9:37 PM
Subject: [Spf-dev] Latest stable SPF/Linux


>  Здравствуйте!
>
> Кто-нибудь может описать сборку SPF под линукс и собрать 4.18?
> У меня почему-то общение с WINE плохо идёт.

Последняя версия http://fpauk.narod.ru/linuxspf.10.tar.bz2
Не знаю что за WINE.
Можно вызывать любые программы на Си.
Оформление Си программ для вызова из Форта можно
посмотреть на примере программ типа LZTYPE.

Aleksej Saushev

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
In reply to this post by Andrey Cherezov
Andrey Cherezov <[hidden email]> writes:

> Добрый день, Aleksej Saushev!
>
> Ваше сообщение от 08.02.2007 20:37:
>> Кто-нибудь может описать сборку SPF под линукс и собрать 4.18?
>>  
> Там есть makefile. И build.sh, build.bat.
> Более поздние версии не собирались под Cygwin, да и не пригодился LinuxSPF
> никому, поэтому [справедливо] заброшен.

Мне понадобился. Хотя и из-за проблем с WINE.

> LinuxSPF - довольно урезанный SPF4, не все его возможности поддерживает.
> В том числе и потому, что возможности Linux урезаны по сравнению с
> Windows ;)
> Список слов см. http://spf.sourceforge.net/cgi-bin/spf.cgi (это LinuxSPF
> живьем на
> сервере WORDS запускает).
>
> Но этой версии достаточно, чтобы написать на Форте под Linux что угодно -
> он умеет компилировать, умеет цеплять .so, поэтому столь же легко расширяем
> как виндовый SPF. Вот только записывать бинарники не обучен.

Мне нужна только общая семантика, никакие виндовые особенности
не требуются.
Yuriy Zhilovets

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
In reply to this post by Andrey Cherezov
Добрый день всем!

>Но этой версии достаточно, чтобы написать на Форте под Linux что угодно -
>он умеет компилировать, умеет цеплять .so, поэтому столь же легко расширяем
>как виндовый SPF. Вот только записывать бинарники не обучен.
>  
>
Расскажите, на чем там дело стало в SAVE.

Ю, Жиловец


Andrey Cherezov

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
Добрый день, Yuriy Zhilovets!

Ваше сообщение от 16.02.2007 19:41:
Но этой версии достаточно, чтобы написать на Форте под Linux что угодно -
он умеет компилировать, умеет цеплять .so, поэтому столь же легко расширяем
как виндовый SPF. Вот только записывать бинарники не обучен.
    
Расскажите, на чем там дело стало в SAVE.
  
К SAVE под Linux никто не подступался, насколько мне известно.
Тот бинарник LinuxSPF, что у нас есть, создается gcc. Как сделать подобный средствами
форта - еще нужно покопаться. Хотя с интернетом это куда проще, чем в 95м без, но
все равно долго. Сначала нужно убедиться, что это кому-нибудь нужно... И этого,
кому нужно, уговорить написать SAVE :)) Хотя тогда будет проще выкинуть gcc,
и сразу из ЦК создавать бинарник, как в виндовом SPF.
Yuriy Zhilovets

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
Добрый день, Андрей!

> К SAVE под Linux никто не подступался, насколько мне известно.
> Тот бинарник LinuxSPF, что у нас есть, создается gcc. Как сделать
> подобный средствами
> форта - еще нужно покопаться. Хотя с интернетом это куда проще, чем в
> 95м без, но
> все равно долго.

Общая обстановка ясна. Я вот как раз думаю и подступиться.
В принципе, формат PE перерисован с линуксовского COFF, так что
радикальных переделок быть не должно.
Я только не знаю, сколько в нынешнем SPF сегментов и куда они должны
сохраняться.

Ю. Жиловец



Andrey Cherezov

Re: Latest stable SPF/Linux

Reply Threaded More More options
Print post
Permalink
Добрый день, Yuriy Zhilovets!

Ваше сообщение от 16.02.2007 21:23:
> Общая обстановка ясна. Я вот как раз думаю и подступиться.
> В принципе, формат PE перерисован с линуксовского COFF, так что
> радикальных переделок быть не должно.
>  
WinNT старше, чем Linux [если строго, то они ровесники, но к моменту
коммерческого
запуска NT - Linux еще не вышел из младенчества], и передирали MS этот
COFF из себя же
(System V, к которой многие программисты MS приложили руку (и код)).
А в Linux'е - ELF. Вспомнил, подступались мы к ELF. Кто-то даже сделал
ELF-stub аналогичный SPF-ному для PE, но включающий dlopen и dlsym.
Это было мноооого лет назад, задолго до (уже тоже старого) LinuxSPF,
поэтому и забыл.
Но где-то должна была сохраниться эта переписка.
> Я только не знаю, сколько в нынешнем SPF сегментов и куда они должны
> сохраняться.
>  
Уверен, что это самый простой из вопросов, которые встанут на твоем пути ;)


Andrey Cherezov

ELF for LinuxSPF

Reply Threaded More More options
Print post
Permalink
Добрый день!

Ваше сообщение от 16.02.2007 22:22:
>> Общая обстановка ясна. Я вот как раз думаю и подступиться.
>>    
Вот, кажется, последнее что про ELF-было:
http://spf.cvs.sourceforge.net/spf/linux/
(http://spf.cvs.sourceforge.net/spf/linux/elf.f?revision=1.1&view=markup)
Остальное раньше.


Andrey Cherezov

Re: ELF for LinuxSPF

Reply Threaded More More options
Print post
Permalink

> Вот, кажется, последнее что про ELF-было:
> http://spf.cvs.sourceforge.net/spf/linux/
> (http://spf.cvs.sourceforge.net/spf/linux/elf.f?revision=1.1&view=markup)
> Остальное раньше.
>  
И на wiki обломки обсуждений: http://wiki.forth.org.ru/SPF4%20%ED%E0%20Linux
ELF Stub с DLOPEN пока не нашел :(


Andrey Cherezov

Re: ELF for LinuxSPF

Reply Threaded More More options
Print post
Permalink

> И на wiki обломки обсуждений: http://wiki.forth.org.ru/SPF4%20%ED%E0%20Linux
> ELF Stub с DLOPEN пока не нашел :(
>  
И еще, ближе к теме:
http://wiki.forth.org.ru/DiscussELF


Andrey Cherezov

Re: ELF for LinuxSPF

Reply Threaded More More options
Print post
Permalink
In reply to this post by Andrey Cherezov

> ELF Stub с DLOPEN пока не нашел :(
>  
Ну, я же помню, что куда-то его архивировал :)
Нашел: http://downloads.sourceforge.net/spf/lnxstub.zip?use_mirror=kent
Все карты в руки:
;Linux ELF stub loader (C) 2005 by Dmitry Groshev
;Distributed under GNU LGPL
;To use, add your executable code to the end of assembled stub; when
resulting
;file is run, stub will load your code and pass control to its 0th byte.
;Code 'll be loaded into a contiguous memory block of "lamemem" bytes in
size
;at fixed base address 0804A000h with readable/writable/executable
permissions.
;On top of stack, your code will receive address of GOT, and under it,
every-
;thing else Linux passes to an ELF executable.
;GOT contains:
;+00 DD address of DYNAMIC
;+04 DD reserved
;+08 DD reserved
;+12 DD address of dlopen()
;+16 DD address of dlsym()
;+20 DD address of dlvsym()
;What your code will do with all of this, is entirely up to you.