Page 1 of 1
Compiling under Vista
Posted: Thu Jun 21, 2007 9:26 am
by StefanHaupt
Dear friends,
I did my first steps compiling a project with xHarbour and BCC under Vista. If i use only the standard lib of FWH, everything works fine, but if i try to link in third party libs (like TWbrowse of Hernan), these lib are not propely linked in and i get a runtime error using the replaced functions.
I´m using xMate for compiling.
Did anyone notice this behavior ?
I compile as administrator, so there should be no problems with rights.
kind regrads
Stefan
Posted: Thu Jun 21, 2007 10:33 am
by Antonio Linares
Stefan,
> these lib are not propely linked
why ? what errors or warnings do you get ?
> in and i get a runtime error using the replaced functions.
what runtime error ?
Posted: Thu Jun 21, 2007 4:02 pm
by StefanHaupt
Antonio,
it´s very curious. I don´t get any errors or warning messages during link.
Example:
If i link the version of hernan´s twbrowse and i´m using a variable declared in this new class i get this error:
error/BASE 1005: message not found: TWBROWSE_LHSCROLL
lHScroll cannot be found in the original TwBrowse class, so the new lib is not linked in. Every new lib, which is replacing functions from the original libs (with the same names) does not seem to work.
This is the trace.log:
*** WARNING! Function: TGRAPH in Module: TGRAPH.PRG is hidden by previously registered Module: TGRAPH.PRG
*** WARNING! Function: TSMTP in Module: tsmtp.prg is hidden by previously registered Module: TSMTP.PRG
*** WARNING! Function: TPOP3 in Module: tpop3.prg is hidden by previously registered Module: TPop3.PRG
*** WARNING! Function: TSOCKET in Module: tsocket.prg is hidden by previously registered Module: TSOCKET.PRG
*** WARNING! Function: MENUBEGIN in Module: PDMENU.PRG is hidden by previously registered Module: PDMENU.PRG
*** WARNING! Function: MENUADDITEM in Module: PDMENU.PRG is hidden by previously registered Module: PDMENU.PRG
*** WARNING! Function: MENUEND in Module: PDMENU.PRG is hidden by previously registered Module: PDMENU.PRG
*** WARNING! Function: LASTMENU in Module: PDMENU.PRG is hidden by previously registered Module: PDMENU.PRG
*** WARNING! Function: LASTITEMPOS in Module: PDMENU.PRG is hidden by previously registered Module: PDMENU.PRG
*** WARNING! Function: TMENU in Module: MENU.PRG is hidden by previously registered Module: MENU.PRG
*** WARNING! Function: MEMOEDIT in Module: memoedit.prg is hidden by previously registered Module: MemoEdit.PRG
*** WARNING! Function: GETNEW in Module: tgetint.prg is hidden by previously registered Module: TCLIPGET.PRG
The link order should be ok
.....
d:\Borland\BCC55\Lib\C0W32.OBJ, +
D:\Projekte\WIN\WT\bin\Wt32.Exe, +
D:\Projekte\WIN\WT\Debug\Wt32.Map, +
D:\FwH\LIBx\XP_Menu.Lib +
D:\FWH\Libx\TwBrw32x.LIB +
D:\FwH\LIBx\Tsbrw613.LIB +
D:\FwH\LIBx\FwTools32.Lib +
D:\FwH\LIBx\SButtonX.LIB +
D:\FWH\lib\Fivehx.lib +
D:\FWH\lib\Fivehc.lib +
d:\xHARBOUR71\Lib\rtl.lib +
....
kind regards
Stefan
Posted: Thu Jun 21, 2007 4:30 pm
by StefanHaupt
It´s seems this behavior does only occur in projects with more than 20 or 25 source files. Smaller projects or little samples are working fine.
Maybe the linker of bcc has problems under vista with to many files.
BTW, i made these tests on two different pc´s with vista business to exclude problems with the pc or vista installation.
kind regards
Stefan
Posted: Thu Jun 21, 2007 7:02 pm
by Antonio Linares
Stefan,
You may rename Hernan browse as Class THBrowse, so there are no conflicts with FWH Class TWBrowse
Posted: Fri Jun 22, 2007 7:36 am
by StefanHaupt
Antonio,
yes, that would be a workaround, but would not solve the problem. And, besides a lot work (i´m replacing the menu system,too, and some other functions), this would cancel the possibility of replacing functions just by linking the changed modul.
Another point is that it´s working under XP and though it´s a 1:1 copy there are errors under Vista.
I will do some further investigations and report the results here.
kind regards
Stefan
Posted: Mon Jun 25, 2007 7:41 am
by StefanHaupt
Ok, I did some tests over the weekend.
It really seemes to depend on the number of prg files you use. The magical number is in my case 24. With more than 24 prg files linking does not work correctly. No matter what size the files have, only the number of files is important.
Please, can anyone confirm this behaviour ?
I´m using the bcc55 compiler
kind regards
Stefan