Hej 1d:projectscurlppincludecurlppexception.hpp(49) : warning C4275: non dll-interface class 'std::runtime_error' used as base for dll-interface class 'curlpp::RuntimeError' Czy ktos moze mi wyjasnic istote bledu C4275 z VC++? Ciekawe jest nastepujaca uwaga "C4275 can be ignored in Microsoft Visual C++ 2005 if you are deriving from a type in the Standard C++ Library, compiling a debug release (/MTd) and where the compiler error message refers to _Container_base." , ktora znajduje sie w MSDN (http://msdn.microsoft.com/en-us/library/3tdb471s(VS.80).aspx) Dlaczego akurat w podanych przypadkach mozna zignorowac to ostrzezenie? Co szczegolnego robi implementacja biblioteki standardowej w VC++ w tym zakresie, ze w jej przypadku to ostrzezenie mozna zignorowac? Pozdrawiam Piotr Dobrogost
Turbos10 wieczniezywy wrote: A gdzie to się ustawia? Jak wpisuje w Linkier-command options- Additional options
w opcjach kompilatora,
Mam tam tylko w code generation do wyboru Multi-threaded (/MT). Czy na pewno o to chodzi?
tak. Sprawdź oba ustawienia: Debug (powinno być /MTd) i Release (/MT) .
Mam ustawione: Use Standard Windows Libraries Not Using ATL No Common Language Runtime support Pozdrawiam Dziki wszystkim za pomoc.
i to powinno wystarczyć.
B.
On Mon, 18 Sep 2000 22:42:39 +0200, "Gigs" <m@poczta.onet.pl wrote: Witam! Po zrobieniu tej feralnej gierki w okrety natknalem sie na problem. jak wlaczyc dll do pliku exe ?( tak aby program nie krzyczal ze mu brakuje jakis dlleli) Przeszukalem cala grupe ale znalazlem tylko pare przykladow do Borlanda
jesli to visual w wersji professional lub lepszej to zmien kompilacje z dynamicznej na statyczna
jesli to wersja standart to w menu Project-Settings-C/C++ w Project Options: jest /MDd (debug) lub /MD zamien na /MTd lub /MT dodatkowo nalezy usunac: /D "_AFXDLL"
W artykule <slrnams2m6.r4o.zdzi@pa13.bydgoszcz.sdi.tpnet.pl Tomasz Torcz, BG napisał(a): | Do przeprowadzenia eksperymentu niezbedne sa | - Mtd w modulach
| Możesz coś na ten temat więcej powiedzieć :) | Gdzie tego szukać (mtd) ? jest w jadrze.
Sorki, że marudze ale ja mam Kernel 2.4.18 i w Memory Technology Devices (MTD) nie moge znaleść: cytuję : "Potrzebny nam jest modul slram.o (opcja CONFIG_MTD_SLRAM), oraz mtdcore.o mtdchar.o i mtdblock.o (ten ostatni przyda sie, jesli na dodatkowej pamieci zechcemy zainstalowac jakis system plikow). " Ja mam tylko: [ ] Debugging (NEW) <M MTD partitioning support < RedBoot partition table parsing --- User Modules And Translation Layers < Direct char device access to MTD devices < Caching block device access to MTD devices < Readonly block device access to MTD devices < Readonly block device access to MTD devices <M FTL (Flash Translation Layer) support < NFTL (NAND Flash Translation Layer) support RAM/ROM/Flash chip drivers --- Mapping drivers for chip access --- Self-contained MTD device drivers --- NAND Flash Device Drivers --- i niegdzie nie moge tego znaleść. Prosze o jakieś wskazówki gdzie mam tego szukać? Będe naprawde wdzięczny.
Marcin Stryjski <mar@acx.pl: W artykule <slrnams2m6.r4o.zdzi@pa13.bydgoszcz.sdi.tpnet.pl Tomasz Torcz, BG napisał(a): Sorki, że marudze ale ja mam Kernel 2.4.18 i w Memory Technology Devices (MTD) nie moge znaleść: cytuję : "Potrzebny nam jest modul slram.o (opcja CONFIG_MTD_SLRAM), oraz mtdcore.o mtdchar.o i mtdblock.o (ten ostatni przyda sie, jesli na dodatkowej pamieci zechcemy zainstalowac jakis system plikow). " Ja mam tylko: [ ] Debugging (NEW) <M MTD partitioning support < RedBoot partition table parsing --- User Modules And Translation Layers < Direct char device access to MTD devices ^-- mtdchar.o < Caching block device access to MTD devices ^-- mtdblock.o < Readonly block device access to MTD devices < Readonly block device access to MTD devices <M FTL (Flash Translation Layer) support < NFTL (NAND Flash Translation Layer) support RAM/ROM/Flash chip drivers --- Mapping drivers for chip access --- Self-contained MTD device drivers ---
x< Uncached system RAM (NEW) ^-- slram.o NAND Flash Device Drivers ---
-- Tomasz Torcz Zjadanie martwych dzieci zdzi@irc.pl jest barbarzynstwem! * Podpisz petycję! http://code-linux.w-net.pl *
In article <d69j7p$la@julia.coi.pw.edu.pl, n@wp.pl says...
tak, by wlaczyl wszystkie biblioteki.
----w vs6 kompilacja dynamiczna: w menu Project-Settings-C/C++ w Project Options: jest /MDd (debug) lub /MD do kompilacji statycznej ma byc /MTd lub /MT dodatkowo nalezy usunac: /D "_AFXDLL" -----w net we wlasciwosciach projektu General-use of MFC
On Mon, 29 Jan 2001 10:35:00 +0100, "Hicnar" <khyc@bitbank.net.pl wrote: Witam,
Ktora edycja VC++ 6.0 pozwala na wkompilowanie binariow MFC do programow (czyli tworzenie kodu laczonego statycznie z klasami MFC)??? Ja mam Standard Edition i nie moge ustawic tej opcji, sa jeszcze Professional i Enterprise no i upgrady... Pozdro Hicnar
pozwala na to KAZDA edycja visual c 6 w niektorych jest latwiej w niektorych trudniej :) kompilacja standartowa (dynamiczna): w menu Project-Settings-C/C++ w Project Options: jest /MDd (debug) lub /MD do kompilacji statycznej (DLLe w execu): ma byc /MTd lub /MT dodatkowo nalezy usunac: /D "_AFXDLL" to tyle ehemmm.. :) ps to ze jakiejs opcji nie udostepniono w menu do wyboru nie oznacza ze jej wogole nie ma ! w koncu wesja standard od tych "lepszych" musi sie czyms roznic ..... wizualnie :)
ris wrote: Stworzyłem sobie dll który przy kompilacji ma ustawiony "Use Standard Windows Libraries" tak samo ma ustawiony programik który korzysta z tego dll'a programik nie ma nic w sobie tzn. same okno konsoli, nie wiem dlaczego przy uruchomieniu tego programu komunikuje mi że nie mam jednej z bibiliotek MFC msvpc1.dll ?
Chyba chodzi Ci o msvcp71.dll? To *nie* jest biblioteka MFC. To jest linkowany dynamicznie runtime C w wersji release. Istnieją 4 takie pliki: msvcp71.dll - dynamic runtime library C release msvcp71d.dll - dynamic runtime library C debug msvcr71.dll - dynamic runtime library C++ release msvcr71d.dll - dynamic runtime library C++ debug
Wersje release (bez "d" na końcu) powinny być dystrybuwane razem z aplikacją i umieszczone na komputerze użytkownika w katalogu systemowym (tym samym w którym są starsze biblioteki runtime np. msvcrt.dll). Opcjonalnie możesz kompilować/linkować bez wykorzystania dynamicznego runtime (stosując w zamian statyczny, tj. umieszczony bezpośrednio wewnątrz Twojego pliku wykonywalnego), to jest w opcjach projektu C/C++ Code Generation Runtime Library. Dynamiczne runtime to opcje /MD i
/MDd, statyczne to /MT , /MTd , /ML i /MLd . Acha, na koniec wyjaśnienie: biblioteka runtime (statyczna i dynamiczna) zawiera implementację biblioteki standardowej C i C++ . Jeżeli korzystasz z funkcji biblioteki standardowej języka C bądź C++, to Twój program musi mieć dostęp do biblioteki runtime - linkowanej statycznie bądź dynamicznie. Pisząc w C lub C++ jesteś "skazany" na stosowanie biblioteki runtime, alternatywa to pisanie z wykorzystaniem *wyłącznie* funkcji udostępnianych przez system operacyjny (a więc skrajnie nieprzenośne). B.
zanotowane.pldoc.pisz.plpdf.pisz.plwpserwis.htw.pl
|