Board.KolibriOS.org

Official KolibriOS board
It is currently Fri Dec 06, 2019 12:06 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 123 posts ]  Go to page Previous 1 2 3 4 59 Next
Author Message
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Wed May 11, 2016 8:16 pm 
Offline
User avatar

Joined: Tue Jan 24, 2006 8:50 am
Posts: 249
Какая внезапная тема. Даже и не ожидал, что до этого момента доживу. Сам в своё время писал Шекеру про исходники.

Друзья, а это чудо будет перекочевывать в svn?


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon May 30, 2016 5:13 am 
Offline
User avatar

Joined: Mon Nov 19, 2012 5:22 pm
Posts: 457
Версия под КолибриОС. Заставить работать откуда угодно пока не получилось(да и слабо представляю, как это сделать), так что кидать сам CMM и С--.INI в папку с исходниками.


Attachments:
CMM [187.03 KiB]
Downloaded 217 times

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Last edited by GerdtR on Mon May 30, 2016 9:38 pm, edited 1 time in total.
Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon May 30, 2016 5:23 am 
Offline
User avatar

Joined: Mon Nov 19, 2012 5:22 pm
Posts: 457
По поводу svn... залить-то можно. Чтоб исходники не исчезли. Думаю всё перекомпилить, да залить вместе с бинарниками (или бинарники в форуме пусть лежат? По моему, лучше в свн).
Чуть не забыл. Правку от lev я добавил, так что ему отдельное спасибо.

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jun 13, 2016 5:25 am 
Offline
User avatar

Joined: Mon Nov 19, 2012 5:22 pm
Posts: 457
Всё, на svn:/kolibrios.org/programs/develop/cmm теперь лежат исходники. Бинарники пока заливать не буду, потому как Колибри-версия вообще исходники искать не хочет.

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Thu Jun 16, 2016 6:21 pm 
Offline
User avatar

Joined: Mon Nov 19, 2012 5:22 pm
Posts: 457
Вот рабочие бинарики под Винду и Колибри. Под Линукс в теории должно компилиться, если в Makefile поправить _WIN_ на _UNIX_. В Колибри файл c--.ini ищется в таком порядке: папка с cmm, указанные пути в ком. строке, /rd/1/settings. Cmm можно запускать откуда угодно, но тогда указывать абсолютный путь до компилируемого файла. Если хотите указывать относительный путь, то cmm класть в папку с исходником.


Attachments:
c--.zip [463.67 KiB]
Downloaded 154 times

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jun 20, 2016 12:28 pm 
Offline

Joined: Tue Mar 08, 2016 11:00 pm
Posts: 436
Есть ли документация по компилятору ?

-какие именно возможности спецификации реализованы ($2.9 спецификации 2.0) ?
-какие форматы файлов поддерживаются (ELF, COFF, библиотеки) ?
-какие фишки поддержки функционального программирования реализованы (also, continuation, cut to, etc) ?
-куда смотреть, что поддержано run-time services ?

Еще я вижу ООП-подобный синтаксис в исходниках еолайта и проч, но сходу не вижу описания такого синтаксиса в спецификации.


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jun 20, 2016 1:41 pm 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1151
Siemargl wrote:
Есть ли документация по компилятору ?
viewtopic.php?f=33&t=495&start=15#p21350


Siemargl wrote:
Еще я вижу ООП-подобный синтаксис в исходниках еолайта и проч, но сходу не вижу описания такого синтаксиса в спецификации.

Обычный подход аля Си с классами, в основе просто применение структур.

_________________
я лишь учусь


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jun 20, 2016 4:30 pm 
Offline

Joined: Sun Oct 30, 2011 6:43 pm
Posts: 1499
Siemargl wrote:
Есть ли документация по компилятору ?
Документация есть на сайте http://www.c--sphinx.narod.ru/c--doc.htm


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jun 20, 2016 9:02 pm 
Offline

Joined: Tue Mar 08, 2016 11:00 pm
Posts: 436
0CodErr wrote:
Siemargl wrote:
Есть ли документация по компилятору ?
Документация есть на сайте http://www.c--sphinx.narod.ru/c--doc.htm
Там нет ответов на заданные вопросы.

Возможно Линси просветит или Гердт разбирался в потрохах компилятора.


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jun 20, 2016 10:39 pm 
Offline

Joined: Tue Apr 12, 2011 11:19 pm
Posts: 1151
Siemargl wrote:
-какие форматы файлов поддерживаются (ELF, COFF, библиотеки).


В руководстве
12. Типы выходных файлов.

_________________
я лишь учусь


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Tue Jun 21, 2016 3:37 am 
Offline
User avatar

Joined: Mon Nov 19, 2012 5:22 pm
Posts: 457
В коде самой компиляции я мало ковырялся, скажу только, что форматов много поддерживает(bin,MZ,COFF,PE). ELF'а нет. Просто запусти компилятор без параметров и увидишь это:
Spoiler: Show
OUTPUT FILES",
"/TEXE DOS EXE file (model TINY) /D32 EXE file (32bit code for DOS)",
"/EXE DOS EXE file (model SMALL) /W32 EXE for Windows32 GUI",
"/OBJ OBJ output file /W32C EXE for Windows32 console",
"/SOBJ slave OBJ output file /DLL DLL for Windows32",
"/COFF OBJ COFF output file /DBG create debug information",
"/SYM COM file symbiosis /LST create assembly listing",
"/SYS device (SYS) file /B32 32bit binary files",
"/MEOS executable file for MeOS /MAP create function map file"

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Tue Jun 21, 2016 7:56 pm 
Offline

Joined: Tue Mar 08, 2016 11:00 pm
Posts: 436
Siemargl wrote:
Есть ли документация по компилятору ?

-какие именно возможности спецификации реализованы ($2.9 спецификации 2.0) ?
-какие форматы файлов поддерживаются (ELF, COFF, библиотеки) ?
-какие фишки поддержки функционального программирования реализованы (also, continuation, cut to, etc) ?
-куда смотреть, что поддержано run-time services ?

Еще я вижу ООП-подобный синтаксис в исходниках еолайта и проч, но сходу не вижу описания такого синтаксиса в спецификации.
Вкратце себе же отвечаю:
1. См. документацию на Сфинкс
2. Как входные - никакие, только исходный текст. Как выходные полезные для KOS: PE DLL, MEOS executable. /COFF не работает адекватно - ниже решение
3. Никакие не реализованы.
4. ХЗ, вероятно только в SVN, часть функций (с плав.точкой) встроено в компилятор - описаны в доке.
5. Есть в документации на сфинкс, нестандартное расширение с--


Last edited by Siemargl on Sun Jul 10, 2016 2:09 am, edited 2 times in total.

Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Sun Jul 10, 2016 1:37 am 
Offline

Joined: Tue Mar 08, 2016 11:00 pm
Posts: 436
Компилятор не понимает ключи
>d:\cmm\cmm.exe /COFF dicty.c

SPHINX C-- Compiler Version 0.239 b26 Jun 16 2016
Compiling Commenced . . .
(0)#1> unable to open file '/COFF.h'.

upd. Понимает опции только через минус, например -COFF
(зачем то закомментировано в main.cpp:268)

Для получения coff объектника надо писать -obj -coff -w32

Интероперабельность с gcc проверена, пример приложил

Заодно нашел английскую версию документации
Sphinx C-- documentation http://barryk.org/goosee/cmm/c--doc.htm


Attachments:
testcoff.c [1.53 KiB]
Downloaded 64 times
gcccalls.c [957 Bytes]
Downloaded 64 times
Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jul 11, 2016 8:03 pm 
Offline
User avatar

Joined: Mon Nov 19, 2012 5:22 pm
Posts: 457
Так, я забыл написать. В Колибри путь указывается через '/', а не через '\' как в Винде, потому мне пришлось поправить код. Теперь параметры указывать только через '-'. Зато в КОС теперь можно указывать абсолютный путь. Кому это надо? Тому, кто решил пихнуть компилятор cmm куда нибудь в /hd1/0/prg, а компилить хочет в любой папке. Да, указывать придётся абсолютный путь. Увы, в КОС текущий каталог устанавливается как /rd/0 и не важно откуда запущена прога. А у прог с newlib текущий каталог ставится как путь, где находится сам кекс, что не многим лучше.

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Top
   
 Post subject: Re: C-- Sphinx Compiler
PostPosted: Mon Jul 11, 2016 9:36 pm 
Offline

Joined: Tue Mar 08, 2016 11:00 pm
Posts: 436
Думаю это вполне можно поправить в разборе командной строки.

В хелпе и документации указано через слэш, что сбивает.

Еще кстати я пробежался диффом по исходникам порта - ты зря совсем удалил несколько printf-ов сообщений об ошибках. Лучше вернуть.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 123 posts ]  Go to page Previous 1 2 3 4 59 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited