daesher
Ну, дык, тяжело ожидать от системы унаследовавшей большинство ограничений Menuet32, которая писалась без предварительного проектирования, простых и идеологически чистых решений. Некоторые костыли выправили, но очень большое количество так и осталось, так как требует очень большого количества человеко-часов для модернизации.
Потому и поднялась тема и в принципе и вот эта
FreePascal
Я ориентируюсь на MSEgui, как первый шаг "большого" GUI в KOS для FP.
Хотя значительно правильнее будет переделать текущий GUI до достойного уровня. Так что бы не только 1-2 программиста FP могли им пользоваться. Концепция примерно есть, но, как сказал Mario, работы не початый край.
Поэтому перспективными GUI в FP я вижу:
1. Портирование MSE.
2. Использование сторонних библиотек, уже разработанных для KOS.
p.s. RTL я подтянул до FPC 2.2.4, но не выкладывал пока. Требуется реорганизация директорий проекта, механизмов сборки, маломальская документация (по той же сборке, например). В общем куча не благодарной работы :-).
..bw
Хотя значительно правильнее будет переделать текущий GUI до достойного уровня. Так что бы не только 1-2 программиста FP могли им пользоваться. Концепция примерно есть, но, как сказал Mario, работы не початый край.
Поэтому перспективными GUI в FP я вижу:
1. Портирование MSE.
2. Использование сторонних библиотек, уже разработанных для KOS.
p.s. RTL я подтянул до FPC 2.2.4, но не выкладывал пока. Требуется реорганизация директорий проекта, механизмов сборки, маломальская документация (по той же сборке, например). В общем куча не благодарной работы :-).
..bw
Проблема сейчас в сборке. Я набросал "многопоточный" модуль, но он принципиально не работает. Почему - не ясно (может, дело в использовании модуля classes, может - ещё в чём-то, не работает отладка, даже "силовая", попробую через лог-файл, ассемблерный отладчик выдаёт где-то исключение 03, но что это и где оно по реальному коду - не понятно). Более того, изменение какой-то мелочи делает любую программу нерабочей, причём совершенно не ясно, почему. Настораживает гигантский объём программы, генерируемой exe2kos (4М против 50 К exe-файла).
Помогите разобраться.
1. C:\fp - сюда установил Free Pascal.
2. C:\fp\src\rtl - сюда я закачал исходники Free Pascal. Установил значение переменной среды FPCDIR равной C:\fp\src\rtl
3. C:\kfp - сюда я поместил содержимое .../fp из репозитория SVN.
Так как ничего не нужно изменять в build.bat, я запускаю его. В окне командной строки получаю:
Что я зделал не так?
1. C:\fp - сюда установил Free Pascal.
2. C:\fp\src\rtl - сюда я закачал исходники Free Pascal. Установил значение переменной среды FPCDIR равной C:\fp\src\rtl
3. C:\kfp - сюда я поместил содержимое .../fp из репозитория SVN.
Так как ничего не нужно изменять в build.bat, я запускаю его. В окне командной строки получаю:
Code: Select all
Processing Makefile.fpc
i386-win32 requires:
Writing Makefile
makefile:1560: c:/pp/rtl/inc/makefile.inc: No such file or directory
makefile:1562: c:/pp/rtl/i386/makefile.cpu: No such file or directory
make: *** No rule to make target `c:/pp/rtl/i386/makefile.cpu'. Stop.
"FPRTL" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Для продолжения нажмите любую клавишу . . .
По всей видимости у тебя нет директории c:/pp и т.д.
FPCDIR=c:\fp\src
KFPCDIR=c:\kfp
..bw
KFPCDIR=c:\kfp
..bw
Опять выскикивают ошибки (Free Pascal 2.2.4). Пытался скачать 2.2.0 с freepascal.org, но либо его там нет, либо я не нашёл. Просьба дать ссылку.
бинарников нету.. только нашел 2.2.2 на sourcesofge.net..
НО... нашел 2 извращеных способа достать 2.2.0...
1) скачать Lazarus версии 0.9.26(в его состав входить fp 2.2.0) тут... весит примерно 50 метров..
2) из svn freepascal'а вытащить только /tags/release_2_2_0 ... брать тут.. весит хз сколько.. но там исходники, придеться скомпилировать другим freepascal'ем...
возможно есть места где лежать бинарники 2.2.0, но я не нашел, в основном везде храняться последнии версии...
НО... нашел 2 извращеных способа достать 2.2.0...
1) скачать Lazarus версии 0.9.26(в его состав входить fp 2.2.0) тут... весит примерно 50 метров..
2) из svn freepascal'а вытащить только /tags/release_2_2_0 ... брать тут.. весит хз сколько.. но там исходники, придеться скомпилировать другим freepascal'ем...
возможно есть места где лежать бинарники 2.2.0, но я не нашел, в основном везде храняться последнии версии...
Локальная копия адаптирована под 2.2.4, но пока не выгружал код, потерпите еще не много.
..bw
..bw
Достал Free Pascal 2.2.0 из Lazarus, сделал всё по инструкции, установил переменные окружения, создал в директории examples файл bat.bat, в нём неписал:
Выдало кучу ошибок и в конце:
Что я не так зделал?
Code: Select all
fpcmake -Twin32
make
Code: Select all
*** 853 errors during make ***
> Что я не так зделал?
Я не показал мне хотя бы первые пять ошибок.
%KFPC% указан верно? RTL собран?
..bw
Я не показал мне хотя бы первые пять ошибок.
%KFPC% указан верно? RTL собран?
..bw
KFPC указал верно, RTL взял с FTP kolibri.org, положил в папку units (в rtl), Free Pascal 2.2.0 взял из Lazarus, а IDE-оболку для него взял с FP 2.4.0
- Attachments
-
-
kfperrr.JPG (32.98 KiB)Viewed 15361 times
-
make не тот, нужен gnu'шный (или как его там, т.е. правильный), он, вроде должен быть в бинарной версии fpc, а этот, это выкидыш Borland (Inprise).
..bw
..bw
Не понял, что значит в бинарной? Я из 2.2.4 кинул - тот же результат.
P.S. А ты не можешь залить куда-нибудь свой FP 2.2.0?
P.S. А ты не можешь залить куда-нибудь свой FP 2.2.0?
Скорее всего, path указывает в первую очередь на какой-то продукт borland, т.к. fpcmake виден прекрасно. Надо перепрописать в path путь к fpc, напримерkogemyaka wrote:Не понял, что значит в бинарной? Я из 2.2.4 кинул - тот же результат.
path c:\pp\bin\i386-win32
Как вариант - переименовать, а лучше скопировать файл make.exe в каталоге бинарных файлов (должен быть там, где и fpcmake.exe) в gmake.exe, а потом запускать именно его
Who is online
Users browsing this forum: No registered users and 2 guests