Static lib output
Static lib output
I know that PureBasic outputs a .dll with a import .lib. It would be a great addition if PureBasic could output a static lib.
- Hroudtwolf
- Addict
- Posts: 803
- Joined: Sat Feb 12, 2005 3:35 am
- Location: Germany(Hessen)
- Contact:
The final User of your static lib would be forced to link (in VC++ i.e.) with the needed PB libs where commands have been used from (like Window, 2DDrawing etc). But as the Purebasic Libs are protected thats not possible.
Maybe that could be handled by an internal progress of PB where those needed PB library symbols would be linked/appended directly before outputting the final static lib.
Maybe that could be handled by an internal progress of PB where those needed PB library symbols would be linked/appended directly before outputting the final static lib.
Check out OOP support for PB here!
Could already exactly be done via -> Tailbitemilan1612 wrote:Maybe an option if you want to compile the lib for PureBasic
yep, as told, then the PB library symbols have to be embedded in the resulting static lib. Else VC++ compiles would be end up in linking errors.or other compilers?
Check out OOP support for PB here!
-
- Enthusiast
- Posts: 665
- Joined: Fri Sep 12, 2003 10:40 pm
- Location: Tallahassee, Florida
It wouldnt be all that difficult to decide on a set of limited commands that are allowed to be used in a static lib.jack wrote:but then you would have the PB command wrapper issue.
When the "static lib" output option is selected, the compiler will only look for PB libraries in a special folder designed for static lib output. when it encounters a command not allowed in a static lib, it just behaves like the PB demo does "thisprocedure() is not a function array or linked list".
All the win API commands, some math functions, string manipulation could be allowed. it is up to Fred really, but there is a way to do it and be fair to everyone.
Code: Select all
!.WHILE status != dwPassedOut
! Invoke AllocateDrink, dwBeerAmount
!MOV Mug, Beer
!Invoke Drink, Mug, dwBeerAmount
!.endw
This: http://www.purebasic.fr/english/viewtopic.php?t=31339
looks like a temporary solution...
looks like a temporary solution...
Libraries produced by coffIT cannot be used in other languages if they use any function from the PureBasic libraries. It's still a PureBasic-only solution, like TailBite.Dummy wrote:This: http://www.purebasic.fr/english/viewtopic.php?t=31339
looks like a temporary solution...