|
From: Simon Wright on 19 Jan 2008 18:43 petter_fryklund(a)hotmail.com writes: > Thanks Simon, you are doing a great job! A pleasure (somewhat diminished by Windows ...) > I still have problems with linking, since I do not have any make > installed, in fact I am reluctant to installing one. I would like to > maintain my software using GPS and project files. Does anybody know > how my -L should look like? Or is it erroneous pragma Imports, since > I am on Windows? I think you're using tash841a? If so, there should be two .a's in the src/ directory, libtcl84.a and libtk.a. These are what GNAT needs as interfaces to tcl84.dll and tk84.dll -- at least, they would be for the Cygwin versions. I'm having trouble rebuilding them for Cygwin (EXCEPTION_ACCESS_VIOLATION when passing a chars_ptr, from memory), I don't right now know whether the ones in the distribution would work for me ... However, you say Tcl is in C:\Tcl so I suspect you have an ActiveState release. Hmm, not sure how to go about that. Anyone? Anyway, it doesn't matter so much what -L is so long as it's right, but you need to pass the libraries into the Linker as "-ltcl84", "-ltk84".
From: petter_fryklund on 20 Jan 2008 05:47 On 20 Jan, 00:43, Simon Wright <simon.j.wri...(a)mac.com> wrote: > petter_frykl...(a)hotmail.com writes: > > Thanks Simon, you are doing a great job! > > A pleasure (somewhat diminished by Windows ...) > > > I still have problems with linking, since I do not have any make > > installed, in fact I am reluctant to installing one. I would like to > > maintain my software using GPS and project files. Does anybody know > > how my -L should look like? Or is it erroneous pragma Imports, since > > I am on Windows? > > I think you're using tash841a? If so, there should be two .a's in the > src/ directory, libtcl84.a and libtk.a. These are what GNAT needs as > interfaces to tcl84.dll and tk84.dll -- at least, they would be for > the Cygwin versions. I'm having trouble rebuilding them for Cygwin > (EXCEPTION_ACCESS_VIOLATION when passing a chars_ptr, from memory), I > don't right now know whether the ones in the distribution would work > for me ... > > However, you say Tcl is in C:\Tcl so I suspect you have an ActiveState > release. Hmm, not sure how to go about that. Anyone? > > Anyway, it doesn't matter so much what -L is so long as it's right, > but you need to pass the libraries into the Linker as "-ltcl84", > "-ltk84". I think they are not .a's but .lib's, possibly because I am not a Cygwinner. If I keep the -L and add the -l, I am back at not finding the references Tcl_*. If I replace the -L with -l, the linker cannot find -ltcl84, so I am back at thinking that I have wrong names for the references, possibly because the sources I loaded was intended for *nix? Regards, Petter
From: sjw on 20 Jan 2008 14:02 On Jan 19, 3:36 pm, petter_frykl...(a)hotmail.com wrote: > Thanks Simon, you are doing a great job! > > I still have problems with linking, since I do not have any make > installed, in fact I am reluctant to installing one. I would like to > maintain my software using GPS and project files. Does anybody know > how my -L should look like? Or is it erroneous pragma Imports, since I > am on Windows? > > Regards, > Petter You could install the gpl make from the AdaCore libre site (under tools, I think ..) However, I've just had a happy 3 hours (see http://tcladashell.wiki.sourceforge.net/DevelopingOnWindows2000) and the conclusion -- assuming you are using ActiveState's Tcl, please confirm! -- is that you probably need to say -LC:\Tcl\lib -ltk84 -ltcl84 (that's what worked for me; GNAT GPL 2007 is happy with .lib files -- when did that happen?) --S (First posting via Google Groups, blasted news.demon.co.uk seems always to fall over on Sundays!)
From: petter_fryklund on 21 Jan 2008 10:46 On 20 Jan, 20:02, sjw <simon.j.wri...(a)mac.com> wrote: > On Jan 19, 3:36 pm, petter_frykl...(a)hotmail.com wrote: > > > Thanks Simon, you are doing a great job! > > > I still have problems with linking, since I do not have any make > > installed, in fact I am reluctant to installing one. I would like to > > maintain my software using GPS and project files. Does anybody know > > how my -L should look like? Or is it erroneous pragma Imports, since I > > am on Windows? > > > Regards, > > Petter > > You could install the gpl make from the AdaCore libre site (under > tools, I think ..) > > However, I've just had a happy 3 hours (seehttp://tcladashell.wiki.sourceforge.net/DevelopingOnWindows2000) and > the conclusion -- assuming you are using ActiveState's Tcl, please > confirm! -- is that you probably need to say > > -LC:\Tcl\lib -ltk84 -ltcl84 > > (that's what worked for me; GNAT GPL 2007 is happy with .lib files -- > when did that happen?) > > --S > (First posting via Google Groups, blasted news.demon.co.uk seems > always to fall over on Sundays!)
From: petter_fryklund on 21 Jan 2008 11:10
This is very strange! Yes, I've downloaded Tcl/Tk 8.4 from ActiveState. I use the switches you use, Simon, resulting in gnatlink c:\users\petter\ada\tash\apps\plang.ali -g -LC:\Tcl\lib - ltcl84 -ltk84 -o c:\users\petter\ada\tash\bin\plang.exe This still can not find Tcl_GetRefCount and others similar. I loaded Tash once again, but cannot see any differences. Regards, Petter |