Will bmax ever support .lib/.dll creation?

Archives Forums/Win32 Discussion/Will bmax ever support .lib/.dll creation?

AntonyWells(Posted 2004) [#1]
I've seen a few subtle hints from simon and co about us window users have a few nice surprises, just wondering if .dll/.lib creation is at least planned for a future update?
Would be nice to know one way or the other.


Shagwana(Posted 2004) [#2]
Whats the point of a suprise if they tell you.


AntonyWells(Posted 2004) [#3]
I'd be surprised if they did tell me, so it works eitherway :)


Mark Tiffany(Posted 2004) [#4]
I think the comments about B+ module for the win32 IDE might be more relevant here...


Zenith(Posted 2005) [#5]
Hehe, well from what I have seen, when compiling modules, it does infact create a library from the module, which can then just be linked into the program with LD.

If you go into a module, you'll see an "*.a" file, which is the GNU library format. These are compiled from bmx code.

(If you look inside them or get the functions from the a file, you'll notice they are in there.)

I'm just guessing here but I think library compilation is already in. Another guess is you could probally write a module that once compiled could work in GCC? (Guessing!) As is, it just links together intermediate code to create the target executable.

Just not a dll.. (yet?) :)


AntonyWells(Posted 2005) [#6]
Edit - Removed impossible theory. ;)
-
I hope you're right. My own theory is they're ignoring the matter 'cos they don't want people selling libs made in bmax to other languages..and that's so counter productive it's not even funny. if true.
Though that doesn't mean they can stop us from working out a way to do it with those A files you mentioned. I thought they were some intermediate format by mark to hold modules in...
There's an I interface file too, that seems to declare all function entry points and pars, generated by bmax. Not sure if it's used by bmax's own compiler though...


John Pickford(Posted 2005) [#7]
I hope you're right. My own theory is they're ignoring the matter 'cos they don't want people selling libs made in bmax to other languages..and that's so counter productive it's not even funny


Don't be daft.


Dreamora(Posted 2005) [#8]
as it uses GCC to compile it just needs some GCC freaks to figur out how to force it to create dll instead of .a ...


AntonyWells(Posted 2005) [#9]

Don't be daft.



Don't be wearing black slacks and yellow tube tops.


as it uses GCC to compile it just needs some GCC freaks to figur out how to force it to create dll instead of .a ...



I thought of that, but the fact gcc isn't required to compile your own programs(I.e those merely using already made modules) it's unlikely to be a vital part of the 'pipeline', meaning it's still very much a decision mark has to make. (Puts on his waiting cap)


Zenith(Posted 2005) [#10]
I thought of that, but the fact gcc isn't required to compile your own programs(I.e those merely using already made modules) it's unlikely to be a vital part of the 'pipeline', meaning it's still very much a decision mark has to make. (Puts on his waiting cap)

Nah, fasm outputs an object file (COFF I think! Which is a standard(?) object file format), that LD understands, and outputs properly. But notice(!) that you do need mingw (minimal GCC) to compile modules. :)

So GCC is infact a vital part of the pipeline (being as we're talking about actual modules, and not your own programs, also notice your own programs compiled output .o files, not .a files (which is the usual intermediate code output if you've ever done any C/C++)


Bot Builder(Posted 2005) [#11]
Yeah, bmax should come with the necessary mingw stuff int he bin dir imho.


teamonkey(Posted 2005) [#12]
Yeah, bmax should come with the necessary mingw stuff int he bin dir imho.


Yuk. World of pain there. BR would have to distribute different binaries on different systems, tackle all the legal issues and make sure that users kept on top of bug fixess and security holes.

The documentation could be improved about how to install the compilers, but it pretty much boils down to this:
* Got a Mac, install XCode
* Got Linux, install your distribution's gcc & bintools packages
* Got Windows, download and install MingW32 or Cygwin.

Nothing too taxing there.


Dreamora(Posted 2005) [#13]
????
sorry but every OS has an own downloadfile so packing in the right one shouldn't be a problem. but you might be right on the license issue ...


Russell(Posted 2005) [#14]
Still, native .dll creation would be a nice plus, but not immediately urgent (I have PureBasic for that purpose, if need be).

Does Mac and Linux have a .dll equivilant? If so, it'd be nice having this ability available across all platforms (dreaming here maybe...).

Oh well, I guess we'll have to play the waiting game and see what develops in the next few days\weeks\months\years(?!).

Russell