> i've been toying with a platform where (due to compiler, erhm, issues) > my best bet for startup seems to be hb_strict_ansi_c, however it > doesn't seen to work. i've checked setting this on linux/gcc, and it > doesn't work either. > > even compilation doesn't succeed by throwing lots of multiply defined > symbol and other suspicions (read, they aren't there in other > cases) errors along the lines of: > > gcc -I. -I../../../../../../include -DHB_STRICT_ANSI_C -Wall -W -O3 > -I/usr/include -ogtxwc.o -c ../../../gtxwc.c > ../../../gtxwc.c:4306: warning: return type defaults to ‘int’ > ../../../gtxwc.c: In function ‘_hb_startup_gt_Init_’: > ../../../gtxwc.c:4308: warning: control reaches end of non-void function > > gcc -shared [...] -o ../../../../../lib/linux/gcc/libharbour-2.0.0.so [...] > gtxwc.c:(.text+0x2f0): multiple definition of `_hb_startup_gt_Init_' > > ../../../../../src/rtl/gtcgi/obj/linux/gcc/gtcgi_dyn.o:gtcgi.c:(.text+0x230): > first defined here > collect2: ld returned 1 exit status > > these are present in gt drivers, also rdds and the code page stuff. > > if the linker is convinced (by judicious application of -z muldefs) to > just do something, it's not very surprisingly doesn't work either: > > tinky:~/w/xhb/hbci/harbour-build$ ./bin/linux/gcc/hbrun > > Unrecoverable error 9998: Harbour terminal (GT) initialization failure > > hence the question, does HB_STRICT_ANSI_C work? how does it work? when > does it work?
Short answer: No. Because in strict ANSI you don't get support for 'constructors'. We need it to make GTs, RDDs and _every compiled .prg_ work. Brgds, Viktor _______________________________________________ Harbour mailing list (attachment size limit: 40KB) [email protected] http://lists.harbour-project.org/mailman/listinfo/harbour
