
PureBasic 3.91 for Windows released
thats not true, see option in Pelles 2.8jack wrote:for writing libs:
what version of PellesC is recommended ?
will lcc still work ? (i seem to recolect a mention to use Ansi-C)?
any other compilers that are known to produce libs that work with PB 3.91 ?
the latest version (2.80) of PellesC wont allow stdcall, and i get a lot
of polink errors when trying to use a lib compiled with it.
how about any Pascal compilers?
any help is much appreciated.
for the PoLink errors i have also to investigate more time,
PoLink 2.74 compiles fine....

SPAMINATOR NR.1
@Rings
i know there's an option for _stdcall, but even when i have it selected
and my procedures start with "extern int _stdcall" the compiler
warns that said function can not be compiled as _stdcall and that
it will automatically compile as _cdecl.
btw, it worked with ver. 2.74.
but whereas the lib compiled with ver. 2.74 worked just fine with PB 3.91 Alpha 1,
it gives polink errors in PB 3.91 final, that's why i was asking about what
version of PellesC to use.
thanks for the response though.
i know there's an option for _stdcall, but even when i have it selected
and my procedures start with "extern int _stdcall" the compiler
warns that said function can not be compiled as _stdcall and that
it will automatically compile as _cdecl.
btw, it worked with ver. 2.74.
but whereas the lib compiled with ver. 2.74 worked just fine with PB 3.91 Alpha 1,
it gives polink errors in PB 3.91 final, that's why i was asking about what
version of PellesC to use.
thanks for the response though.

Lcc can still be used to create PureLibraries. You only have to make sure
that all Lcc specific optimisations are disabled. You can simply put this
at the start of your file (before including any headers!!)
Otherwise you might encounter some Linker errors or crashes with PoLink.
Timo
that all Lcc specific optimisations are disabled. You can simply put this
at the start of your file (before including any headers!!)
Code: Select all
#pragma optimize(0)
Timo
quidquid Latine dictum sit altum videtur
Here is the workaround i use :
Code: Select all
#define PUREBASIC_3_91
#if defined PUREBASIC_3_91
#ifdef __cplusplus
extern "C" {
#endif
int __mb_cur_max;
unsigned short* _pctype;
int errno;
char _fltused;
#ifdef __cplusplus
}
#endif
#endif
thanks KarLKoX.
compiling a lib with PellesC 2.80 and then trying to compile a PB program i get the following errors:
POLINK: error: Unresolved external symbol '___stod'
POLINK: error: Unresolved external symbol '___ftoll'
POLINK: error: Unresolved external symbol '___sinh'
POLINK: error: Unresolved external symbol '___cosh'
POLINK: error: Unresolved external symbol '___log'
POLINK: error: Unresolved external symbol '___sin'
POLINK: error: Unresolved external symbol '_lgamma'
POLINK: error: Unresolved external symbol '_round'
POLINK: error: Unresolved external symbol '___fpclass'
the PellesC documentation states that math functions are inlined for speed,
could that be a problem? i mean, are symbols like the above somehow eliminated and are therefore causing Polink to choke?

compiling a lib with PellesC 2.80 and then trying to compile a PB program i get the following errors:
POLINK: error: Unresolved external symbol '___stod'
POLINK: error: Unresolved external symbol '___ftoll'
POLINK: error: Unresolved external symbol '___sinh'
POLINK: error: Unresolved external symbol '___cosh'
POLINK: error: Unresolved external symbol '___log'
POLINK: error: Unresolved external symbol '___sin'
POLINK: error: Unresolved external symbol '_lgamma'
POLINK: error: Unresolved external symbol '_round'
POLINK: error: Unresolved external symbol '___fpclass'
the PellesC documentation states that math functions are inlined for speed,
could that be a problem? i mean, are symbols like the above somehow eliminated and are therefore causing Polink to choke?

- Psychophanta
- Always Here
- Posts: 5153
- Joined: Wed Jun 11, 2003 9:33 pm
- Location: Anare
- Contact: