eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaDecyzja zapadła...(mikrokontrolery ST) › Re: Decyzja zapadła...(mikrokontrolery ST)
  • X-Received: by 10.49.4.136 with SMTP id k8mr695929qek.19.1372177229722; Tue, 25 Jun
    2013 09:20:29 -0700 (PDT)
    X-Received: by 10.49.4.136 with SMTP id k8mr695929qek.19.1372177229722; Tue, 25 Jun
    2013 09:20:29 -0700 (PDT)
    Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
    .pl!news.nask.org.pl!news.unit0.net!news.glorb.com!j2no1841323qak.0!news-out.go
    ogle.com!fv2ni168qab.0!nntp.google.com!j2no1841310qak.0!postnews.google.com!gle
    groupsg2000goo.googlegroups.com!not-for-mail
    Newsgroups: pl.misc.elektronika
    Date: Tue, 25 Jun 2013 09:20:29 -0700 (PDT)
    In-Reply-To: <4...@g...com>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=157.158.182.53;
    posting-account=I-P_YQoAAAA5OYA-ULbU61NLL7UHiy4J
    NNTP-Posting-Host: 157.158.182.53
    References: <kq05t1$s7h$1@news.task.gda.pl> <kq1rj7$ro$1@news.dialog.net.pl>
    <kq1v7d$7j4$1@news.task.gda.pl>
    <9...@g...com>
    <c...@g...com>
    <a...@g...com>
    <4...@g...com>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <7...@g...com>
    Subject: Re: Decyzja zapadła...(mikrokontrolery ST)
    From: shg <s...@g...com>
    Injection-Date: Tue, 25 Jun 2013 16:20:29 +0000
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:649114
    [ ukryj nagłówki ]

    W dniu wtorek, 25 czerwca 2013 16:13:49 UTC+2 użytkownik brak napisał:

    > > Ale co ma system operacyjny do standardowej biblioteki C?
    > To iz zwykle jest w jakis sposob dostarczona/zintegrowana oraz przetestowana
    > i nie ma potrzeby jej "dotykania". Biblioteka C jest jednym z komponetow
    > systemu i od jej jakosci zalezy jakosc systemu.

    Zwykle albo nie jest dostarczana a jeżeli jest, to kompilowana z domyślnymi
    ustawieniami. Integracja polega na tym, że OS używa tej biblioteki.

    > > printf() to akurat najmniejszy problem. Potrzebuję małe funkcje standardowe
    (string.h, stdlib.h itd.). Te nie są w tych OS-ach zrobione na nowo, ani w tych,
    które proponuje Mario. Wszędzie sugerują linkowanie z newlib.
    >
    > Niekoniecznie, np. eCos:
    >
    > "eCos provides compatibility with the ISO 9899:1990 specification for the standard
    C library, which is essentially the same as the better-known ANSI C3.159-1989
    specification (C-89)."

    To znaczy tylko tyle, że jest kompatybilny ze standardem, a nie że ma wbudowane
    wszystkie potrzebne funkcje. Można go skompilować korzystając ze standardowej
    biblioteki zgodnej z powyższym.


    > > Całej biblioteki się nigdy nie linkuje (to ma chyba ze 2 MB).
    > Yyy. Przeciez od dawna juz linker usuwa nie uzywane obj-ty. Tak wiec nie uzywajac
    "namietnie" biblioteki, likner nie dolaczy jej w calosci.

    W porzedniej wiadomości napisałeś, że "nie trzeba linkować całej biblioteki", rzecz
    oczywista, ale zabrzmiało to jakby w innych przypadkach trzeba było.

    > > OS niczego w tej kwestii nie rozwiązuje.
    > W przypadku eCos biblioteka C jest jednym z jego komponentow, ktory jest
    konfigurowalny aby zmniejszyc rozmiar kodu ponad to co jest wstanie zrobic linker -
    co rozwiazuje problemy z biblioteka C.

    Podłubałem trochę. eCos używa newlib jako standardowej biblioteki, ona jest częścią
    środowiska, nie samego systemu. Na upartego można skompilować z inną (tekst wyżej o
    kompatybilności), ale trzeba by gmerać w skryptach. Nigdzie w nich nie znalazłem
    kompilacji newlib z innymi flagami niż domyślne. Domyślne flagi newlib generują kod
    taki, jak pisałem wcześniej. Żeby uzyskać pożądany efekt, musiałbym ustawić
    odpowiednie flagi do kompilacji newlib przy budowaniu eCosa, a właściwie toolchaina,
    a to bez sensu, bo równie dobrze mogę sobie zrobić samą newlib.
    Na wszelki wypadek przedstawię to na obrazku:
    http://wstaw.org/m/2013/06/25/strcpy.png
    Po lewej domyślne flagi, po prawej -Os bez dodatkowych "optymalizacji" i tu leży
    istota mojego problemu.
    Toolchain stąd:
    https://launchpad.net/gcc-arm-embedded
    Dostępna jest tam libc kompilowana w dwóch wersjach. Zmienny przecinek niestety tylko
    w jednej wersji.
    OS do niczego mi nie potrzebny.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: