Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 12:34

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 108 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8  След.
Автор Сообщение
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Вт дек 07, 2010 00:19 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
mgw писал(а):
Надо в каталоге spf-4.20/src
sh compile


Код:
mak@mak-desktop:~/spf-4.20/src$ sh compile
cd: 8: can't cd to compile
rm: cannot remove `spf4.o': No such file or directory
make: Entering directory `/home/mak/spf-4.20/src/posix'
gcc -Wall -Werror -DSPF_SRC config.c -oconfig.gen
config.c: In function ‘main’:
config.c:56: error: ‘REG_EDI’ undeclared (first use in this function)
config.c:56: error: (Each undeclared identifier is reported only once
config.c:56: error: for each function it appears in.)
config.c:58: error: ‘REG_EIP’ undeclared (first use in this function)
config.c:60: error: ‘REG_ESP’ undeclared (first use in this function)
config.c:62: error: ‘REG_EAX’ undeclared (first use in this function)
config.c:64: error: ‘REG_EBP’ undeclared (first use in this function)
make: *** [config.gen] Error 1
make: Leaving directory `/home/mak/spf-4.20/src/posix'
Wait a bit while compiling...

Build options :
     CREATE-XML-HELP : FALSE
             ARCH-P6 : FALSE
     BUILD-OPTIMIZER : TRUE
       USE-OPTIMIZER : TRUE
    OPTIMIZE-BY-SIZE : FALSE
           WIDE-CHAR : FALSE
    UNIX-ENVIRONMENT : TRUE
        TARGET-POSIX : TRUE

Exception #2 at: src/spf.f:61:36:
S" src/posix/config.auto.f  INCLUDED
                                  ^ -2003 WORD OR FILE NOT FOUND


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Вт дек 07, 2010 13:40 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
У меня Fedora, по этому точно сказать не могу, но похоже
не видит определение переменных ‘REG_EDI’ и т.д. Они определены
в файле /usr/include/sys/ucontext.h

Если такого файла нет, то надо установить пакет:
glibc-headers_* (* = номер версии для конкретной системы свой)
Если файл есть, то не стоит поиск на каталог его содержащий.

Если не помогло то в каталоге spf-4.20/src/posix:
gcc -v -Wall -Werror -DSPF_SRC config.c -oconfig.gen (-v = диагностика) и вывод показать. Будем смотреть


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Вт дек 07, 2010 22:50 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
Проблема с 64-х разрадностью системы
Нужно добавить опцию -m32

В файл src/compile
gcc -o spf4 spf4.o -Wl,forth.ld -ldl -lpthread -v -m32
В файл src/Makefile
gcc -o $@ $< -Wl,forth.ld -ldl -lpthread -v -m32
В файл src/posix/Makefile
gcc -Wall -Werror -DSPF_SRC $< -o$@ -m32


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Вт дек 07, 2010 23:28 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
У меня 32 разрядная. Проверить не могу :(


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Ср дек 08, 2010 11:41 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
mgw писал(а):
У меня 32 разрядная. Проверить не могу


Проверь на 32 разрядной, не мешает-ли опция -m32.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Ср дек 08, 2010 13:40 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
Цитата:
Проверь на 32 разрядной, не мешает-ли опция -m32.


Собрал SPF на 32 разрядной Linux ( Fedora 14 ) с использованием -m32.
Всё собралось и работает нормально.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Ср дек 08, 2010 23:44 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
В spf-4.20 KEY и KEY? не работает
у меня работает http://fpauk.narod.ru/ubuspf.tar.gz


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Чт дек 09, 2010 18:44 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
Идея понятна. Использована библиотека TERMIOS, для организации небуфер. ввода вывода. Красиво.

Я сторонник использования форта в качестве клея для вызова готовых функций из разд. библиотек. Я не хочу писать на форте то, что уже написано и лежит в DLL в соседнем каталоге. Мне для полного счастья не хватает вызова THIS-CDECL-CALL для Linux. В Win проходит вызов конструктора C++ а в Linux нет :( . Если такой вызов написать и отладить, то можно спокойно использовать имеющиеся в изобилии С++ библиотеки различной тематики.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Чт дек 09, 2010 20:35 
Не в сети

Зарегистрирован: Чт ноя 23, 2006 00:44
Сообщения: 494
Откуда: СПб
Благодарил (а): 19 раз.
Поблагодарили: 8 раз.
Mihail писал(а):
В spf-4.20 KEY и KEY? не работает
у меня работает http://fpauk.narod.ru/ubuspf.tar.gz

Работает. :D
Только есть очепятка: SPFOPT ANS FORTH 94 for Linux !!!


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Чт дек 09, 2010 22:55 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
Может это крамола, но для меня все форты одинаковые. Просто в одних более развитые библиотеки, в других менее.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Пт дек 10, 2010 01:38 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
mgw писал(а):
Исходный текст на форте одинаковый для обеих ОС.


На сколько я понял, выложено только для WIN.

mgw писал(а):
Мне для полного счастья не хватает вызова THIS-CDECL-CALL для Linux.
В Win проходит вызов конструктора C++ а в Linux не


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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Пт дек 10, 2010 14:05 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
Цитата:
В смысле вызова SO файлов? Именно конструктора не проходит?


Хочу вызвать конструктор из SO напрямую, подсунув ему адрес буфера, где он сможет инициализировать данные экземпляра. В Win такое проходит, в Linux нет.

Пример (для Win) схематично:

Код:
S" QtGui4.dll" DROP LoadLibraryA  aQtGui !  \ Грузим библиотеку
S" ??0QWidget@@QAE@PAV0@V?$QFlags@W4WindowType@Qt@@@@@Z" DROP aQtGui @ GetProcAddress aProcQWidget !
HERE 100 ALLOT CONSTANT uQWidget          \ Выделим память под объект (пока 100 байт)
uQWidget 0 0 2 aProcQWidget @ THIS-CDECL-CALL  \ Вызовем непосредственно конструктор


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Пт дек 10, 2010 14:31 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
mgw писал(а):
Хочу вызвать конструктор из SO напрямую
В принципе, с SO можешь работать?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Пт дек 10, 2010 15:24 
Не в сети

Зарегистрирован: Ср фев 17, 2010 18:10
Сообщения: 323
Откуда: Тверь
Благодарил (а): 13 раз.
Поблагодарили: 11 раз.
Цитата:
В принципе, с SO можешь работать?


Скорее да, чем нет. А вопрос к чему?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Forth++
СообщениеДобавлено: Пт дек 10, 2010 15:29 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
mgw писал(а):
Скорее да, чем нет. А вопрос к чему?


Выкладывай все что работает, тогда будем разбираться с тем, что не работает.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 108 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB