Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Clipper & Blinker 7 wywołanie z C

23 Jun 2017 17:34 1050 11
  • Level 22  
    Witam,


    Ktoś się orientuje jak poprawnie skompilować przykład z C wywoływany z Clippera ?

    Przykład :

    #include <stdio.h>

    void limerick (void)
    {
    printf ("There was a young fellow from Microsoft\n");
    }


    Pozdrawiam
  • Helpful post
    Level 38  
    Poczytaj o kilku RÓŻNYCH słowach co to jest kompilować, linkować, uruchomić. Moduły C kompilujesz jako C, nie ma w tym specjalnej magii, ale to dopiero początek.
    Kilka opcji chyba było dla lepszej kompatybilności z modułami Clippera, najstarsi górale nie pamiętają.

    Do wiedzy jak używać API, linkowania i debugowania błędów to musisz zatrudnić archeologa.

    Skąd pomysł na tak archaiczne środowisko? Zwłaszcza że nigdy nie było silnie przyjęte poza Polską, krajami b. ZSRR
  • Level 22  
    Wiem Kolego (zastosowałem skrót myślowy) , mam coś do zrobienia i mam kłopot z połączeniem kodu Clipper z C. Wiem ,że tam jest masa przęłączników i niestety nie działa to jak na razie poprawnie :(
    Nawet myślałem żeby wywalić C ale jeszcze popróbuje (robię to tylko w wolnym czasie więc na razie nie miałem kiedy się temu przyjrzeć) , tymczasem zapodałem na grupę bo może ktoś się trafi kto wie jak to połączyć. Wtedy nie będę musiał szukać Archeologa :)

    Pozdrawiam i dzięki za odpowiedź
  • Level 22  
    Aby stworzyć obj z c , który poprawnie połączy się z Clipperem należy wywołać :

    CL /c /AL /FPa /Zl /Gs $*.c

    Otrzymamy po tym plik obj.

    Plik wykonywalny clipper.exe robimy z clipper.obj c.obj

    Tak wywołany program z Clippera będzie poprawnie działał.


    Jako,że nie było nikogo kto by wiedział jak to zrobić pozostawiam dla poszukiwaczy.
  • Level 38  
    Michal2002 wrote:
    Aby stworzyć obj z c , który poprawnie połączy się z Clipperem należy wywołać :

    CL /c /AL /FPa /Zl /Gs $*.c

    Otrzymamy po tym plik obj.
    ...


    Baczność.
    Izba pamięci dziękuje.
    Spocznij.


    Zwrócę jednak uwagę, że to dotyczy wywołania void funkcja(void).
    Z przekazaniem argumentów się robiło jakieś operacje (używało API), ale ja już tego nie odtworzę.
  • Level 22  
    Masz rację Kolego , mogę zrobić przykład by pokazać jak to się konkretnie robi.

    Opis tyczy się kompilatora Microsoftu.

    W BCC jest inaczej :)



    Pozdrawiam
  • Level 15  
    Michal, dzieki za przypomnienie mlodosci. Mozna wiedziec do czego Ci dzis technologia sprzed 20 lat?
  • Level 38  
    kradam wrote:
    Michal, dzieki za przypomnienie mlodosci. Mozna wiedziec do czego Ci dzis technologia sprzed 20 lat?


    Wiodąca dla wejścia na polski rynek była wersja firmy Nantucket - Clipper 87 (1987), była chyba a i b różniąca się o miesiące, jakoś dziwnie było, szukalo się starszej bo nie miała błędów czy jakoś tak, potem wiele lat było pusto, bo to na świecie nigdy nie dominowało. Seria wersji od Computer Associate 5.x w latach 1990 (z elementami obiektowości) w kilku aplikacjach które znałem nie wywołała przepisania aplikacji na nowe ficzery, wyszło to zbyt późno aby zawojować.

    Pozycja Clippera w PL, RU, i krajach sąsiednich wynika wyłącznie ze "specyficznego" szacunku dla praw autorskich w latach 1980/90. Było sporo aplikacji w dBase III i IV, ale to było interpretowane, każdy mógł skopiować i rozwijać. Clipper dał twórcom możliwość kompilacji, czyli ich praca byłą lepiej chroniona. Nie muszę dodawać, ze olbrzymia większość kopii dBase i Clipepra była piracka.technologie zamierzone do 'małej informatyki' w biurach, a nie developingu w firmach softwarowych, i to jest to nieszczęście.


    Późniejsze opensursy (Harbour project intensywnie śledziłem) to "szlachetny sportowy wysiłek" ale w totalnej niszy.

    Więc genetycznie to trzydzieści lat.

    ja wyczuwam problem kol. Michała w wieloletnim odkładaniu odesłania (często prowizorycznej) aplikacji na śmietnik historii (być może zasłużonej historii) . Paradoksalnie prowizorki, z setką przybudówek, podpórek, pozbija gwoździami jest o wiele trudniejsza do przeniesienia na przysłowiową "wersję 2.0" bo nie posiada żadnej dokumentacji poza (często chaotycznym, być może w ciężkich walkach zdebugowanym) kodem.
  • Level 22  
    Koledzy macie troszkę racji , technologia owszem jest stara ale nie jest taka aż bardzo zła.
    Wbrew pozorom Clipper mimo swoich różnych błędów i niedogodności nie jest taki najgorszy zwłaszcza jeżeli programy są cały czas rozwijane i łatane. Ostatnia wersja Clippera to 5.3 b z roku około 1998 więc ma już tylko 20 lat a i jednak trochę się różni od Clipper Summer ' 87 (to pierwsza wersja Clippera z jaką miałem do czynienia). Do tego zacny jest Harbour lub jego bardziej komercyjna wersja xHarbour (sam posiadam przynajmniej 2 programy w tym ostatnim).
    Co do ostatniego zdania kolegi Jacka - praktycznie trafiłeś w sedno z tym ,że program jest profesjonalny , stąd moje usilne próby osiągnięcia większych rezultatów niż doraźne przeróbki :)
    Jako przykład mogę podać Advantage Database Server , który po mimo ,że jest niszowy świetnie działa z Clipperem lub Harbourem (umożliwia implementację Klient / Serwer). Jest jeszcze ciekawe komercyjne środowisko umożliwiające prostą migrację - mianowicie jest to FlagShip.

    Wiele aplikacji pisanych w Clipperze pozostawiało wiele do życzenia (znowu Kolega Jacek ma rację) jednak nie wszystkie (bo i w tym języku trafiali się prawdziwi fachowcy) i te ostatnie próbuje się ratować - zwłaszcza jeżeli są bardzo rozbudowane i działają bez zastrzeżeń.

    Kilka razy byłem zmuszony do przerabiania istniejących programów lub do dopisywania nieistniejących kawałków źródeł (czyli znowu kolega Jacek ma rację) , a była to dla mnie trudna jak i ciekawa zabawa gdyż nie jestem guru w temacie jak widać :). Rozwijać programy w tym języku mogę ale od nowa bym raczej nie robił nic, chyba że pod Harbourem. Czasem faktycznie popełnie jakąś łatę w Clipperze , aby jak to Kolega Jacek ujął postawić jakąś podporę. Niecałe 10 lat temu brałem udział w zestawieniu ADS (klient serwer) + Clipper :)


    P.S Posiadam oryginalne 2 Clippery 5.3 w wielkich pudłach.
  • Level 15  
    Panowie, odnoszę wrażenie że w muzeach pracujecie :-)
    Ja przesiadłem się z Clippera na Foxpro, w okolicach '95 chyba.
    A potem dowiedziałem się co to jest Internet i po nastaniu roku 2000, nawet już żadnej aplikacji Clippera nie musiałem utrzymywać.
  • Level 22  
    Z mojego doświadczenia wynika ,że Clipper nie jest taki okropny, nawet w USA znam przynajmniej kilka osób , które biegle posługują się tym językiem (a nie znam tam dużo ludzi).
    Jest też sporo bibliotek ułatwiających pracę w tym wynalazku.
    Clipper lub Harbour wyposażony w ADS zyskuje całkiem nową jakość , o problemach z bazami w jakiej kolwiek formie możemy zapomnieć a wiem co mówie bo mam porównanie między zwykłymi RDD NTX lub CDX znanymi z FoxPRO. ADS powoduje też spore przyspieszenie. Pomysł na zainteresowanie się ADS-em wziął się z problemów znanych występujących w klasycznych architekturach. Oczywiście można powiedzieć ,że jest to proteza ale ja uważam ,że jest całkiem sensowna.

    Do Clippera mam dostawione bootromy (mam rozwiązanie umożliwiające zrobienie bootromu do każdej karty sieciowej) i powiem tak pracuje to znakomicie. Uważam też ,że ADS jest jedną z ciekawszych platform umożliwiającą pracę z poczciwym dosem :) w architekturze klient serwer.
  • Level 22  
    W przypadku BCC stosujemy przełącznik -ml.

    Może ktoś by poszukiwał możliwości przeróbki programów w Clipperze na nowszą platformę lub chciałby odzyskać kod źródłowy (łącznie z wstawkami C + ASM) to zapraszam :)

    Pozdrawiam