Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

BCpp-> ConditionalMacros.h: unknown compiler 1

Status
Not open for further replies.

ZKPL

Programmer
Jul 22, 2005
3
PL
I want to use Borland C++ Builder 6.0 and QuickTime SDK to create 'mov' file.
When I include header 'movies.h', the compiler shows error directive:

[C++ Fatal Error] ConditionalMacros.h(1348): F1003 Error directive: ConditionalMacros.h: unknown compiler

The conclusion is: header 'ConditionalMacros.h' does not contain the macros for Borland Builder implementation (there are only VC++ imlenetations). I think it is possible to write code for QT files in BCB enviroment.
What to do with it? Please, help!
Thanks, in advance.
 
Witaj 'mojelogowanie'

Pisz? po polsku, bo widz? po Twoim nicku, ?e jeste? równie? polakiem.
Pó? roku temu wywo?a?em ten temat i nikt mi nie odpowiedzia?, ale jak si? cz?owiek uprze to dojdzie jak ma by?.

A teraz do rzeczy

Otwórz "ConditionalMacros.h" i wstaw tam nast?puj?cy fragment kodu:

#if defined(__BORLANDC__) //__BORLANDC__=1376 - wersja kompilatora Builder6
#define TARGET_CPU_PPC 0
#define TARGET_CPU_68K 0
#define TARGET_CPU_X86 1
#define TARGET_CPU_MIPS 0
#define TARGET_CPU_SPARC 0
#define TARGET_CPU_ALPHA 0
#define TARGET_OS_MAC 0
#define TARGET_OS_WIN32 1
#define TARGET_OS_UNIX 0
#define TARGET_RT_LITTLE_ENDIAN 1
#define TARGET_RT_BIG_ENDIAN 0
#define PRAGMA_IMPORT 0
#define PRAGMA_STRUCT_ALIGN 0
#define PRAGMA_ONCE 0
#define PRAGMA_STRUCT_PACK 1
#define PRAGMA_STRUCT_PACKPUSH 1
#define PRAGMA_ENUM_PACK 0
#define PRAGMA_ENUM_ALWAYSINT 0
#define PRAGMA_ENUM_OPTIONS 0
#define FOUR_CHAR_CODE(x) (x)
#define TYPE_EXTENDED 0
#define TYPE_LONGLONG 1
#define LONGLONG_TYPENAME __int64
#define LONGLONG_SIGNED_MAX (9223372036854775807i64)
#define LONGLONG_SIGNED_MIN (-9223372036854775807i64 - 1)
#define LONGLONG_UNSIGNED_MAX (0xffffffffffffffffui64)

#define TYPE_BOOL 1 //ZK

#define FUNCTION_PASCAL 0
#ifndef FUNCTION_DECLSPEC
#define FUNCTION_DECLSPEC 0
#endif
#ifndef FUNCTION_WIN32CC
#define FUNCTION_WIN32CC 1
#endif
#undef pascal
#define pascal

#define Point QTPoint //ZK
#define Rect QTRect //ZK
#define Boolean QTBoolean //ZK
#define DateDelta QTDateDelta //ZK
#define Byte QTByte //ZK
#define WideChar QTWideChar //ZK

Koniec

Znaczniki '//ZK' to s? moje dostawione linijki, bo po kompilacji dostanie? inaczej b??dy, ?e niejednoznaczno?? pomi?dzy funkcjami itd. ('Ambiguity').

Mam nadziej?, ?e to rozwi??e Twoje problemy. U mnie filmy 'mov' dzia?aj? bez zarzutu. Mam rownie? nadzieje, ?e to jest wszystko, bo pó? roku to du?o czasu i mog?o mi co? umkn?? a nie wszystko pami?tam cho? walczy?em z tym d?ugo.

ZKPL
 
Thanks, its working properly after one small correction (for QuickTimeSDK 7):

first line of the code should be: :#elif defined... not #if..
PS. Dziekuje bardzo. Sam doszedles do tego zestawu dyrektyw czy znalazles w sieci ? (gdzie?)
 
Ciesze sie, ze dziala.

Najpierw sam probowalem, bo zestaw dyrektyw jest bardzo podobny dla wszystkich kompilatorow i tak tez probowalem robic dla buildera, ale wciaz nie moglem przekompilowac, bo mialem bledy o niejednoznacznosci funkcji a rozwiazanie jak widzisz bylo bardzo proste ('#define Point QTPoint' itd.). Myslalem wiec, ze nie tedy droga. I wtedy znalazlem potwierdzenie w sieci oraz jak przejsc te bledy, ale teraz juz nie wiem gdzie to znalazlem. To bylo spontaniczne przegladanie strona za strona.

Pozdrawiam
Na razie
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top