[Turbo c++] Kompilacja INDY

0

Zgodnie z radą uzyskaną na tym forum próbuję pisać "ręcznie" (bez instalowania komponentów) w INDY. Wyskrobałem coś takiego:

#ifndef Unit4H
#define Unit4H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Indy10/IdFTPServer.hpp> //Wg helpa tam sie znajduje deklaracja TIdFTPServer
//---------------------------------------------------------------------------
class TForm4 : public TForm
{
__published:	// IDE-managed Components
	TEdit *Edit1;
	TEdit *Edit2;
	TLabel *Label1;
	TLabel *Label2;
	TLabel *Label3;
	TEdit *Edit3;
	TButton *Button1;
	TButton *Button2;
private:	// User declarations
	TIdFTPServer *IdFTPServer;
public:		// User declarations
	__fastcall TForm4(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm4 *Form4;
//---------------------------------------------------------------------------
#endif

I wywala mi całą masę błędów w pliku IdFTPServer.hpp:

[C++ Error] IdFTPServer.hpp(18): E2209 Unable to open include file 'Idcommandhandlers.hpp'
[C++ Error] IdFTPServer.hpp(20): E2209 Unable to open include file 'Idcontext.hpp'
[C++ Error] IdFTPServer.hpp(22): E2209 Unable to open include file 'Idexplicittlsclientserverbase.hpp'
[C++ Error] IdFTPServer.hpp(23): E2209 Unable to open include file 'Idftpbasefilesystem.hpp'
[C++ Error] IdFTPServer.hpp(27): E2209 Unable to open include file 'Idftplistoutput.hpp'
[C++ Error] IdFTPServer.hpp(28): E2209 Unable to open include file 'Idftpservercontextbase.hpp'
[C++ Error] IdFTPServer.hpp(29): E2209 Unable to open include file 'Idreply.hpp'
[C++ Error] IdFTPServer.hpp(30): E2209 Unable to open include file 'Idreplyftp.hpp'
[C++ Error] IdFTPServer.hpp(31): E2209 Unable to open include file 'Idreplyrfc.hpp'
[C++ Error] IdFTPServer.hpp(32): E2209 Unable to open include file 'Idscheduler.hpp'
[C++ Error] IdFTPServer.hpp(35): E2209 Unable to open include file 'Idcmdtcpserver.hpp'
[C++ Error] IdFTPServer.hpp(38): E2209 Unable to open include file 'Idobjs.hpp'
[C++ Error] IdFTPServer.hpp(40): E2209 Unable to open include file 'Idyarn.hpp'
[C++ Error] IdFTPServer.hpp(41): E2209 Unable to open include file 'Idzlibcompressorbase.hpp'
[C++ Error] IdFTPServer.hpp(42): E2209 Unable to open include file 'Idsys.hpp'
[C++ Error] IdFTPServer.hpp(44): E2209 Unable to open include file 'Idtask.hpp'
[C++ Error] IdFTPServer.hpp(45): E2209 Unable to open include file 'Idcustomtcpserver.hpp'
[C++ Error] IdFTPServer.hpp(74): E2257 , expected
[C++ Error] IdFTPServer.hpp(100): E2257 , expected
[C++ Error] IdFTPServer.hpp(376): E2257 , expected
[C++ Error] IdFTPServer.hpp(378): E2316 'TIdIPVersion' is not a member of 'Idglobal'
[C++ Error] IdFTPServer.hpp(378): E2257 , expected
[C++ Error] IdFTPServer.hpp(420): E2090 Qualifier 'Idexplicittlsclientserverbase' is not a class or namespace name
[C++ Error] IdFTPServer.hpp(420): E2303 Type name expected
[C++ Error] IdFTPServer.hpp(420): E2275 { expected
[C++ Error] IdFTPServer.hpp(420): E2228 Too many error or warning messages

Co ja robię źle?

PS. Szukałem tych plików na dysku i są tam gdzie powinny być, czyli w folderze \include\Indy10.

0
sprzedamsanki napisał(a)

PS. Szukałem tych plików na dysku i są tam gdzie powinny być, czyli w folderze \include\Indy10.

Co z tego że są jak kompilator ich nie widzi, dodałeś ścieżkę z nimi do ścieżek w których ma szukać plików nagłówkowych?

0
crayze napisał(a)

Co z tego że są jak kompilator ich nie widzi, dodałeś ścieżkę z nimi do ścieżek w których ma szukać plików nagłówkowych?

Czyli gdzie dokładnie?

0

Na stałe:
Tools -> Options -> C++ options ->Paths and Directories -> Search Path - dodaj tu 2 ścieżki: do lib'ów i include'ów.

Tylko dla konkretnego projektu:
Project -> Options -> C++ Compiler -> Paths and Defines -> Include search path - tu dodaj ściezkę do include'ów
Project -> Options -> Linker -> Paths and Defines -> Library search path - tu dodaj ściezkę do lib'ów

0

Skorzystałem z tego co napisaliście i rzeczywiście odnajduje mi te ścieżki. Problem w tym, że kompilator natrafia na taki zapis:

//-- user supplied -----------------------------------------------------------
#error Indy 10 does not currently support C++Builder

I oczywiście wywala w tej linijce błąd:

[C++ Fatal Error] Idwinsock2.hpp(23): F1003 Error directive: Indy 10 does not currently support C++Builder

Próba wykomentowania tej linijki zaowocowała całą listą jakichś dziwnych błędów...
O co chodzi? o,0

0

a spróbuj I9 bo I10 to chyba na C nie zrobione jeszcze ( w końcu to to w errorku pisze =D )

0

Haa czytać to ja umiem, problem w tym że ja tą bibliotekę widzę tam dołączoną w C++ i się dziwię po jakiego grzyba dołączają coś co nie działa o,0 Nie wspominając już o tym że do Turbo C++ jest dołączony help, w którym opisane jest I10, a I9 nie, więc brzmi to dla mnie jak jakieś jaja. Poza tym chcę użyć szyfrowania SSL, a I10 w przeciwieństwie do I9 pozwala na to. :P

PS Nadal liczę że to tylko jakiś mój błąd ;) Może ktoś wie jak to uruchomić?? ;]

0
sprzedamsanki napisał(a)

[...] więc brzmi to dla mnie jak jakieś jaja.[...]

Witaj w świecie Borlanda :>

0

mam dostęp do BDS2K6, odpalę w trybie dla C++ i sprawdzę czy tam działa I10, ale to jutro bo spać iść trzeba =|

0
crayze napisał(a)
sprzedamsanki napisał(a)

[...] więc brzmi to dla mnie jak jakieś jaja.[...]

Witaj w świecie Borlanda :>

Taa powiedziałbym nawet Hello World -.- :P

mam dostęp do BDS2K6, odpalę w trybie dla C++ i sprawdzę czy tam działa I10, ale to jutro bo spać iść trzeba =|

Ja bym tam mógł nawet nie iść spać żeby to odpalić, ale ok nie pozostało mi nic innego jak poczekać ;)

0

Musisz mieś jakąś starą wersję. Ta w instalce Turbo C++ jest za stara.

0

Skoro ta jest za stara to chciałem sobie zainstalować najnowszą wersję INDY10 z indyproject.org ale tam są dostępne źródła tylko w Delphi, których nawet skompilować nie mogę, bo licencja nie pozwala na instalację Turbo Delphi i Turbo c++ na jednym PC... :| Są jakieś darmowe kompilatory Delphi, którymi bym to mógł zrobić?

1 użytkowników online, w tym zalogowanych: 0, gości: 1