[SOLVED] [PB6.10] Another Polink error

Just starting out? Need help? Post your questions and find answers here.
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

[SOLVED] [PB6.10] Another Polink error

Post by boddhi »

Hello,

I'm trying to update one of my userlib with PB 6.10.
Creating the lib and res file doesn't seem to be a problem for PB, but when I try to compile code that uses this lib's instruction set, at compile time, this message appears:

Image

I have no specific compilation parameter for the lib, only "/UNICODE" (and "/COMMENTED" for this thread).
I've looked through the generated ASM file and don't see these two function 'calls' (I don't really know how to name them).

Below, the header of the ASM file of the lib.
;
; PureBasic 6.10 LTS (Windows - x64) generated code
;
; (c) 2024 Fantaisie Software
;
; The header must remain intact for Re-Assembly
;
; String
; Math
; FileSystem
; File
; Object
; SimpleList
; Date
; Array
; Memory
; :System
; kernel32.lib
; :Import
;
format MS64 COFF
;
;
extrn PB_AllocateMemory
extrn PB_Asc
extrn PB_CheckFilename
extrn PB_Chr
extrn PB_ClearStructure
extrn PB_CloseFile
extrn PB_Eof
extrn PB_FileSeek
extrn PB_FileSize
extrn PB_FormatDate
extrn PB_FreeFiles
extrn PB_FreeFileSystem
extrn PB_FreeMemory
extrn PB_FreeMemorys
extrn PB_FreeObjects
extrn PB_Hex
extrn PB_InitArray
extrn PB_InitFile
extrn PB_InitMemory
extrn PB_Int
extrn PB_IsFile
extrn PB_Left
extrn PB_Len
extrn PB_Loc
extrn PB_Lof
extrn PB_LSet2
extrn PB_Mid2
extrn PB_OpenFile2
extrn PB_ParseDate
extrn PB_PeekB
extrn PB_PeekL
extrn PB_PeekS3
extrn PB_PeekW
extrn PB_Pow
extrn PB_ReadByte
extrn PB_ReadData
extrn PB_ReadFile2
extrn PB_ReadLong
extrn PB_ReadWord
extrn PB_ReAllocateMemory
extrn PB_Right
extrn PB_Round
extrn PB_RSet2
extrn PB_Sqr
extrn PB_Str
extrn PB_StrF
extrn PB_StrF2
extrn PB_Trim
extrn PB_UCase
extrn PB_Val
extrn PB_WriteString2
extrn ExitProcess
extrn GetModuleHandleW
extrn HeapCreate
extrn HeapDestroy
extrn memset
extrn SYS_CopyString
extrn SYS_FreeStructureStrings
extrn SYS_FreeArray
extrn SYS_StringEqual
extrn SYS_AllocateString4
extrn SYS_FastAllocateString4
extrn SYS_FastAllocateStringFree4
extrn SYS_FreeString
extrn SYS_AllocateArray
extrn PB_StringBase
extrn SYS_InitString
extrn SYS_FreeStrings
;
extrn PB_StringBasePosition
extrn SYS_InitPureBasic
public _PB_Instance
public PB_ExecutableType
public PB_OpenGLSubsystem
public _PB_MemoryBase
public PB_Instance
public PB_MemoryBase
public PB_EndFunctions

macro pb_public symbol
{
public _#symbol
public symbol
_#symbol:
symbol:
}

macro pb_align value { rb (value-1) - ($-_PB_DataSection + value-1) mod value }
macro pb_bssalign value { rb (value-1) - ($-_PB_BSSSection + value-1) mod value }
;
public WinMain
;
section '.code' code readable executable align 4096
;
;
 
Could someone tell me why this is happening?
(I know there were major changes with version 6.10 on Windows, but I don't master the subject sufficiently)
 
Thanks.
Last edited by boddhi on Sun Apr 07, 2024 2:25 pm, edited 1 time in total.
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
Fred
Administrator
Administrator
Posts: 18351
Joined: Fri May 17, 2002 4:39 pm
Location: France
Contact:

Re: [PB6.10] Another Polink error

Post by Fred »

You need a new version of your user library which have the Exifread function.
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: [PB6.10] Another Polink error

Post by boddhi »

Hi Fred,

Thanks for your fast reply :wink:
Fred wrote: You need a new version of your user library which have the Exifread function.
If the problem could be just that
My ExifRead lib and ExifRead.res file are present in their respective UserLibrairies and Residents folders.
Furthermore, when compiling the code calling the lib's functions, shouldn't I first get a message like "ExifRead is not a function, [...]"?

Here's a HEXA preview of the lib created with compiler 6.10, showing the existing procedures in the lib.
Image
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
User avatar
mk-soft
Always Here
Always Here
Posts: 6320
Joined: Fri May 12, 2006 6:51 pm
Location: Germany

Re: [PB6.10] Another Polink error

Post by mk-soft »

You must recompile the external user library with the current PB version.
That's why I don't use external user libraries without source codes.
My Projects ThreadToGUI / OOP-BaseClass / EventDesigner V3
PB v3.30 / v5.75 - OS Mac Mini OSX 10.xx - VM Window Pro / Linux Ubuntu
Downloads on my Webspace / OneDrive
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: [PB6.10] Another Polink error

Post by boddhi »

mk-soft wrote: You must recompile the external user library with the current PB version.
Hi mk-soft,
boddhi wrote: I'm trying to update one of my userlib with PB 6.10.
Creating the lib and res file doesn't seem to be a problem for PB
That's what I did! Lib and res files have been recompiled with PB 6.10.

It's when I try to use the lib functions (with a prior compiler restart) in another source that I get this error message...
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
boddhi
Enthusiast
Enthusiast
Posts: 524
Joined: Mon Nov 15, 2010 9:53 pm

Re: [PB6.10] Another Polink error

Post by boddhi »

Ok, after many tests (because there are two versions of my lib - French and English -), I finally found where the problem was.
In the resident file!

To tell the truth, I don't really know why. But I simply restarted all the compilation processes from the beginning.

And eureka, now it works!

Sorry for the inconvenience and thanks for your replies.
If my English syntax and lexicon are incorrect, please bear with Google translate and DeepL. They rarely agree with each other!
Except on this sentence...
Post Reply