Integrating other libs with TGB 1.7.4
by James Ford · in Torque Game Builder · 09/24/2008 (11:16 pm) · 5 replies
I'm trying to integrate the ffll (free fuzzy logic library) into TGB 1.7.4. I'm not the most experienced with the nitty-gritty project configurations in VS so this is really a lot more trouble than it should be. Nevertheless, something I really need to know how to do.
I figured out how to add the library dependency and include directory to the project generator, so it gets set properly for release/debug/TGBGame/TorqueGameBuilder. This involved making slight changes to the projectGenerator/templates/vc2k5_proj file.
Now the problem is I don't what to just link against the binary I want to have ffll as a project within my T2D SDK solution. And for it to put everything in the correct places when I build it...
I really didn't see where other "library" projects are generated, so I'm guessing that they aren't. Perhaps there is a project generator config for ljpeg, glu2d3d, opengl2d3d somewhere at GG, or maybe they were just all setup manually for the various compilers, but its not there in the installed version of TGB.
This is unfortunate because I was hoping to look at that for clues as to what all these crazy project configuration settings should actually be for the ffll project. It looks like TGEA has a slightly more sophisticated project generator that has a php function called addLibrary (if that would actually work), but no such luck for TGB.
My current process is to look at every tab in glu2d3d's project configuration, switch to ffll and past everything over that is different (changing any project name references). However this is extremely tedious, error prone, and just not working...
Any chance of a simpler way to "include library X in solution"?
I figured out how to add the library dependency and include directory to the project generator, so it gets set properly for release/debug/TGBGame/TorqueGameBuilder. This involved making slight changes to the projectGenerator/templates/vc2k5_proj file.
Now the problem is I don't what to just link against the binary I want to have ffll as a project within my T2D SDK solution. And for it to put everything in the correct places when I build it...
I really didn't see where other "library" projects are generated, so I'm guessing that they aren't. Perhaps there is a project generator config for ljpeg, glu2d3d, opengl2d3d somewhere at GG, or maybe they were just all setup manually for the various compilers, but its not there in the installed version of TGB.
This is unfortunate because I was hoping to look at that for clues as to what all these crazy project configuration settings should actually be for the ffll project. It looks like TGEA has a slightly more sophisticated project generator that has a php function called addLibrary (if that would actually work), but no such luck for TGB.
My current process is to look at every tab in glu2d3d's project configuration, switch to ffll and past everything over that is different (changing any project name references). However this is extremely tedious, error prone, and just not working...
Any chance of a simpler way to "include library X in solution"?
About the author
http://jamesdev.info
#2
09/25/2008 (11:44 am)
Yeah that's basically my issue. I can't seem to get all the project configurations right for the ffllapi project (which I added to the solution), so lots of linking errors.
#3
Unfortunately I'm not the expert on the project generator stuff and I'm not sure who in the Garage is but I'll send out an internal email shortly to see if I can grab some help for you.
What I can do is help on how to build/include dependent libs from within VS if you wish?
Melv.
09/28/2008 (5:25 am)
James,Unfortunately I'm not the expert on the project generator stuff and I'm not sure who in the Garage is but I'll send out an internal email shortly to see if I can grab some help for you.
What I can do is help on how to build/include dependent libs from within VS if you wish?
Melv.
#4
I have integrated other libs with Torque/TGB before without difficulty, the problem comes when I want to make some changes within that lib (a lib with full source code) and then rebuild it.
Depending on project settings I either get the TGB project generating linker errors or unaware of my changes (loading the old lib?). Also building the library project always puts intermediate files all over the place, even though I tried very hard to ensure it had the same folder locations specified as other Torque library projects.
In general some guidance on what the most important C++/Linker/Etc settings are and what their proper values should be mesh well with TGB.
09/28/2008 (4:09 pm)
That would be much appreciated. I have integrated other libs with Torque/TGB before without difficulty, the problem comes when I want to make some changes within that lib (a lib with full source code) and then rebuild it.
Depending on project settings I either get the TGB project generating linker errors or unaware of my changes (loading the old lib?). Also building the library project always puts intermediate files all over the place, even though I tried very hard to ensure it had the same folder locations specified as other Torque library projects.
In general some guidance on what the most important C++/Linker/Etc settings are and what their proper values should be mesh well with TGB.
#5
Melv.
10/08/2008 (5:38 am)
Just wanted to post to say that I have not forgotten about this, it's just that I'm super-busy. I have got this as a todo. :)Melv.
Torque Owner WesTT
Unfortunately, that is commonly how I've done it in the past with other large projects (manually filled out added project settings) as there is very often no documentation about how the project is built or the settings one should use. Project settings can also inherit from other projects.