digitalmars.D - FreeType Binding
- Trevor Parscal (26/26) Jun 03 2005 OK, So I spent hours and hours porting all 77 files, got a billion
- Ben Hinkle (6/17) Jun 03 2005 note if you put the function declarations after the struct declarations ...
- Trevor Parscal (9/13) Jun 03 2005 It worked.. thanks.
- Trevor Parscal (20/20) Jun 03 2005 Well, now I am facing this...
- Trevor Parscal (16/16) Jun 03 2005 I guess I am just flooding this group today.. Sorry..
- Ben Hinkle (7/23) Jun 03 2005 The freetype.d file just has the extern(C) void foo() declarations, corr...
- Ben Hinkle (6/19) Jun 03 2005 Narrowing down the shortest reproduction steps and posting to the bugs
- clayasaurus (2/27) Jun 03 2005 on linux it compiled without any changes using 'dmd -c freetype.d'.
- Trevor Parscal (7/37) Jun 03 2005 Compiling the lib is no problem. Using it causes the problem.. :)
OK, So I spent hours and hours porting all 77 files, got a billion errors, worked on that for many hours, and decided to go the back way and implement ONLY the functions and definitions I needed to render basic text, and work from there. So far this has been MUCH more successfully, spare the 4 or 5 structs that are referred to in the headers, but never defined (not in the source either). HOWEVER, now that I have it compiling and all, I am trying to use it, and I get an error like this... test.d(160): function freetype.FT_Init_FreeType (FT_LibraryRec_ **) does not match argument types (FT_LibraryRec_ **) I am statically linking a lib I compiled in MSVC.NET and converted with coff2omf, plus the lib from my binding of freetype I wrote in D. I have tried C and Windows linkage. Nothing seems to work. I attached a copy of my simplified binding. There are commented out lines, which all had to be muted because they use one of the 4 or 5 missing type definitions. If anyone has any advice, or a clue why the compiler would tell me that the arguments don't match, and than show me they are identical types, PLEASE let me know. Thanks in advance. -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.com
Jun 03 2005
"Trevor Parscal" <trevorparscal hotmail.com> wrote in message news:d7qu93$1lg8$1 digitaldaemon.com...OK, So I spent hours and hours porting all 77 files, got a billion errors, worked on that for many hours, and decided to go the back way and implement ONLY the functions and definitions I needed to render basic text, and work from there. So far this has been MUCH more successfully, spare the 4 or 5 structs that are referred to in the headers, but never defined (not in the source either). HOWEVER, now that I have it compiling and all, I am trying to use it, and I get an error like this... test.d(160): function freetype.FT_Init_FreeType (FT_LibraryRec_ **) does not match argument types (FT_LibraryRec_ **)note if you put the function declarations after the struct declarations in freetype.d it seems to work fine (at least in my tiny test). I put the functions at the very end. This may be a bug with forward declarations.
Jun 03 2005
Ben Hinkle wrote:note if you put the function declarations after the struct declarations in freetype.d it seems to work fine (at least in my tiny test). I put the functions at the very end. This may be a bug with forward declarations.It worked.. thanks. Ben Hinkle = my hero... Forward Reference Bug = my enemy -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.com
Jun 03 2005
Well, now I am facing this... Libraries\FreeType.lib(ftinit) Error 42: Symbol Undefined __RTC_CheckEsp Libraries\FreeType.lib(winfnt) Error 42: Symbol Undefined _RTC_CheckStackVars 8 Libraries\FreeType.lib(pshinter) Error 42: Symbol Undefined __RTC_UninitUse Libraries\FreeType.lib(psmodule) Error 42: Symbol Undefined ___security_cookie Libraries\FreeType.lib(psmodule) Error 42: Symbol Undefined __security_check_cookie 4 OK, so if I compiled the lib with MSVC.NET, and converted it with (Digital Mars) coff2omf, why is it mising these sybmols? Any ideas of other ways to get this working? Experiences with MSVC.NET incompatibility? -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.com
Jun 03 2005
I guess I am just flooding this group today.. Sorry.. Anyhoo, I am using a NON microsoft compiled lib now, which doesn't freak out like that one did... and here is my new problem.. Source\Terra\Primitives\Drawing\Composite.obj(Composite) Error 42: Symbol Undefined _FT_Init_FreeType Source\Terra\Primitives\Drawing\Composite.obj(Composite) Error 42: Symbol Undefined _FT_Done_FreeType Is there something i don't know about making a static lib? should I be making a .def file for these functions? They are defined in the freetype.d file which I compiled to a lib.. -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.com
Jun 03 2005
"Trevor Parscal" <trevorparscal hotmail.com> wrote in message news:d7r37e$1olh$1 digitaldaemon.com...I guess I am just flooding this group today.. Sorry.. Anyhoo, I am using a NON microsoft compiled lib now, which doesn't freak out like that one did... and here is my new problem.. Source\Terra\Primitives\Drawing\Composite.obj(Composite) Error 42: Symbol Undefined _FT_Init_FreeType Source\Terra\Primitives\Drawing\Composite.obj(Composite) Error 42: Symbol Undefined _FT_Done_FreeType Is there something i don't know about making a static lib? should I be making a .def file for these functions? They are defined in the freetype.d file which I compiled to a lib.. -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.comThe freetype.d file just has the extern(C) void foo() declarations, correct? You need to link in the actual implementations. I'm confused when you say "they are defined in freetype.d which I compiled to a lib" about which libs you're referring to. You shouldn't compile freetype.d into a lib - you should compile the c code that contains the implementations into a lib.
Jun 03 2005
"Trevor Parscal" <trevorparscal hotmail.com> wrote in message news:d7r1hv$1nhp$1 digitaldaemon.com...Ben Hinkle wrote:Narrowing down the shortest reproduction steps and posting to the bugs newsgroup will help Walter squash these things. I think many people here have been bitten by odd things like this enough that one develops the ability to smell forward-reference-bugs from 50 yards.note if you put the function declarations after the struct declarations in freetype.d it seems to work fine (at least in my tiny test). I put the functions at the very end. This may be a bug with forward declarations.It worked.. thanks. Ben Hinkle = my hero... Forward Reference Bug = my enemy -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.com
Jun 03 2005
Ben Hinkle wrote:"Trevor Parscal" <trevorparscal hotmail.com> wrote in message news:d7qu93$1lg8$1 digitaldaemon.com...on linux it compiled without any changes using 'dmd -c freetype.d'.OK, So I spent hours and hours porting all 77 files, got a billion errors, worked on that for many hours, and decided to go the back way and implement ONLY the functions and definitions I needed to render basic text, and work from there. So far this has been MUCH more successfully, spare the 4 or 5 structs that are referred to in the headers, but never defined (not in the source either). HOWEVER, now that I have it compiling and all, I am trying to use it, and I get an error like this... test.d(160): function freetype.FT_Init_FreeType (FT_LibraryRec_ **) does not match argument types (FT_LibraryRec_ **)note if you put the function declarations after the struct declarations in freetype.d it seems to work fine (at least in my tiny test). I put the functions at the very end. This may be a bug with forward declarations.
Jun 03 2005
clayasaurus wrote:Ben Hinkle wrote:Compiling the lib is no problem. Using it causes the problem.. :) -- Thanks, Trevor Parscal www.trevorparscal.com trevorparscal hotmail.com"Trevor Parscal" <trevorparscal hotmail.com> wrote in message news:d7qu93$1lg8$1 digitaldaemon.com...on linux it compiled without any changes using 'dmd -c freetype.d'.OK, So I spent hours and hours porting all 77 files, got a billion errors, worked on that for many hours, and decided to go the back way and implement ONLY the functions and definitions I needed to render basic text, and work from there. So far this has been MUCH more successfully, spare the 4 or 5 structs that are referred to in the headers, but never defined (not in the source either). HOWEVER, now that I have it compiling and all, I am trying to use it, and I get an error like this... test.d(160): function freetype.FT_Init_FreeType (FT_LibraryRec_ **) does not match argument types (FT_LibraryRec_ **)note if you put the function declarations after the struct declarations in freetype.d it seems to work fine (at least in my tiny test). I put the functions at the very end. This may be a bug with forward declarations.
Jun 03 2005