Новости с полей разработки FPC 2.1.1

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Сообщение Sniper » 05.04.2006 00:45:26

Неудержусь и сделаю Copy+Paste %)

Lots of new progress in March, but too busy coding to update the website, so this entry will be a summary of progress on the main (2.1.1) branch:

* Thomas Schatzl is making good progress with the linux 64-bit PowerPC port. A snapshot is here
* Peter did a Titanic work, and crafted an internal linker for win32 and win64, reducing linking times tremendously. For such a complex new subsystem, it is already quite stable.
* DWARF debugging info support is slowly starting to work. Stabs will be phased out in time.
* Florian just showed a first "Hello world" program for Win64. This is remarkable since GCC and the binutils don't even support this target. (Internal linker!)
* Jonas reported that he has ported to Darwin/i386 with remarkable little effort. Snapshots are expected in the coming weeks.


Здорово одним словом.

Написано на www.freepascal.org
Sniper
постоялец
 
Сообщения: 472
Зарегистрирован: 28.05.2005 13:02:42

Сообщение Сергей Смирнов » 05.04.2006 11:54:42

Пункт 2 выглядит просто сенсационно.
Аватара пользователя
Сергей Смирнов
энтузиаст
 
Сообщения: 595
Зарегистрирован: 28.04.2005 13:23:25
Откуда: Москва

Сообщение SovNarKom » 05.04.2006 16:26:34

Сергей Смирнов
Да... не могу поверить... интересно в снапшотах есть уже?
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение Sniper » 05.04.2006 17:49:52

SovNarKom писал(а): Сергей Смирнов
Да... не могу поверить... интересно в снапшотах есть уже?

Snapshots are expected in the coming weeks.
%)
Sniper
постоялец
 
Сообщения: 472
Зарегистрирован: 28.05.2005 13:02:42

Сообщение SovNarKom » 05.04.2006 18:05:07

Sniper
А так хочется чтобы это относилось только к
Jonas reported that he has ported to Darwin/i386 with remarkable little effort. Snapshots are expected in the coming weeks.

У меня наконецто заработал svn :) снапшотик скачаю на всякий случай... Скорее бы линкер был... вкуссная штука...
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение SergKam » 05.04.2006 21:38:31

А для линукс? :(
осталось еще отладчик gdb переделать на свой.
а то больно трудно сложные классы отлаживать.
SergKam
постоялец
 
Сообщения: 251
Зарегистрирован: 16.11.2005 21:31:11
Откуда: Украина,Харьков

Сообщение SovNarKom » 07.04.2006 20:55:08

Наверное особенно не порадую...
Наконец откомпилировалась свн версия FPC 2.1.1... которая с встроенным компоновщиком для win32...

Рассказываю всё подробно, так как возможно я что-то упустил, до этого "свином" не пользовался...

1. Клиентом сделал чекаут репозитория <a href='http://svn.freepascal.org/svn/fpc/trunk' target='_blank'>http://svn.freepascal.org/svn/fpc/trunk</a>
2. Запустил в корне следующий бат файл
Код: Выделить всё
set PATH=E:\FPC\2.0.2\bin\i386-win32;%PATH%
rem make clean
make build
make install
cmd

Эта весёлая конструкция загнулась на этапе make install, заругавшись на permission denied в одной из svn директорий... (зачем она ему нужна стала незнаю, хотел скопироавать видать)...

3. Выполнил, на всякий случай, make clean
4. SVN Export в другую директорию.
5. Запустил в ней всё тот же бат... Он всё очнь долго делал, но ошибок не возникло и в корне диска стала красоваться нужная pp.
Тут важно. не был обнаружен ld... что не могло не наатолкнуть на добрые мысли...

6. Для проверки создал в Лазаре новыйй проект и сохранил куда надо:)
Обычно использую такой бат для компиляции без самого Лазаря...

Код: Выделить всё
set PATH=E:\FPC\2.0.2\bin\i386-win32;%PATH%
# или #
set PATH=C:\pp\bin\i386-win32;%PATH%

fpc.exe -FuC:\Lazarus0911\lcl\ -FuC:\Lazarus0911\lcl\interfaces\win32\ -FuC:\Lazarus0911\lcl\widgetset\ -FiC:\Lazarus0911\lcl\include\ OG3p3ru -CX -Xs -XX -WG project1.lpr
cmd


Так вот 2.0.2 всё откомпилил на раз, при этом прада перекомпилировав чуть-чуть LCL со смартлинком(но это не суть важно) получил готовое приложение ~900Kb за 30 секунд при первой компиляции(LCL частично) и 15 секунд при чистой сборке уже откомпилированных модулей.

А вот 2.1.1 сначала некритично ругнулся на устаревший ключ OG, потом не нашёл один (не запомнил какой) свой системный файл и послал меня.
Дело было в том, что не оказалось fpc.cfg... ну я его взял из 2.0.2 и пути разумеется все поправил.

Вторая компиляция завершилась успехом... почти. Дело в том, что на весь процесс ушло 57 секунд... , а только сборка заняла 28... размер при этом 1.6Мб...
размер такой получился ввиду того, что сам компилятор собирался без смартлинка и все модули соответственно тоже...

Пересборка компилятора с ключём smart вместо build не дала ни чего - файлы libcXXX.a так и не были созданы...
Нехорошо одним словом это.
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение yozh » 08.04.2006 13:25:51

А разве есть что-то удивительное в том, что утянутая с SVN версия частично не работает? Ето нормальное состояние. Работать будет в релизе.
yozh
новенький
 
Сообщения: 25
Зарегистрирован: 01.04.2006 16:17:05

Сообщение SovNarKom » 09.04.2006 11:17:42

yozh
Причина по которой встроенный компоновщик медленнее ld в 2 раза в чём?
Допускаю, что как обычно "много отладочной информации", ну уберут её в релизе... скорости сравнятются... а где reducing linking times tremendously?


Да, почему компилятор не собирается со смартлинком... Вот тут может я ошибся где-то?
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение SovNarKom » 11.04.2006 00:37:17

Что, никого это не волнует больше?

SVN архив 17 метров 7z. На почту могу... по 6 порезать.
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение bw » 11.04.2006 09:42:42

У меня все получилось.
При сборке компилятора в compiler/fpcdefs.inc замени { define INTERNALLINKER} (это в самом конце) на {$define INTERNALLINKER}.
Работать стал быстрее, как мне показалось, хотя время не засекал. А вот откомпилировать проект с использованием JEDI Win32, без указания исходиков, мне пока еще не удалось.

..bw
Аватара пользователя
bw
постоялец
 
Сообщения: 359
Зарегистрирован: 01.12.2005 11:36:23
Откуда: Усть-Илимск

Сообщение SovNarKom » 11.04.2006 16:32:33

[bw]
Вот это интересно... чем тогда он у меня собирал? Ну да ладно, попробую, спасибо.
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение bw » 12.04.2006 05:00:22

ld где то откопал. Я когда с JEDI парился использовал ключ -va для fpc, а за тем внимательно изучал результат. Там и заметил, что компилятор, собранный без внесения упомянутых "модификаций", упорно ищет ld, да и ошибки, при линковке, выдает именно ld, специфичные для каждой версии этого сборщика (я несколько версий пробовал, от fp и от mingw).

..bw
Аватара пользователя
bw
постоялец
 
Сообщения: 359
Зарегистрирован: 01.12.2005 11:36:23
Откуда: Усть-Илимск

Сообщение SovNarKom » 12.04.2006 17:23:06

[bw]
А ведь ты прав, конструктивное предложение ;) . Картина существенно ищменилась... несмотря на то, что компилятор собрался без смартлинка, но общее время компиляции теперь составило 8 секунд, а при повторной компиляции и вообще 3. Размер при этом сократился до 800kb. Да, это радует. :D
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение SovNarKom » 30.04.2006 11:49:07

В свн затёрли все строки в файле compiler/fpcdefs.inc, связанные с внутренним сборщиком...
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

След.

Вернуться в Free Pascal Compiler

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

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

Рейтинг@Mail.ru