#1 2024-11-28 13:32:32

ThepSamart
Member
Registered: 2022-10-19
Posts: 6

mORMot2 (2.3 stable) fail to create x64 package

Tried to create .bpl runtime for mORMot 2.3 stable, x86 (32 bit) is fined but x64 (64 bit) is failed.
return message is:

[dcc64 Error] mormot.db.raw.sqlite3.static.pas(1324): E2065 Unsatisfied forward or external declaration: 'memchr'

Using Delphi 10.2.3 update 3

I used .dpr from mORMot 2.2 which can built both x86, x64 with successfully.

Any suggession, please

Edit:

Just dig into source code, mormot.db.raw.sqlite3.static.pas has 'memchr' function (just add in 2.3), which also resided in mormot.lib.static.pas with different declaration.

Last edited by ThepSamart (2024-11-28 15:42:29)

Offline

#2 2024-11-28 18:28:23

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,966
Website

Re: mORMot2 (2.3 stable) fail to create x64 package

Did you try to disable C++ runtime binary in the package?

Offline

#3 2024-11-29 06:54:57

ThepSamart
Member
Registered: 2022-10-19
Posts: 6

Re: mORMot2 (2.3 stable) fail to create x64 package

Yes, in package option > Delphi Compiler > Output - C/C++ > C/C++ Output File Generation is set to "Generate DCU onlys".

I just created gist for my .dpk file.

https://gist.github.com/ThepSamart/4428 … b7390b61ec

This .dpk file was successfully created both x86 / x64 .bpl for mORMot 2.2 but fail for mORMot 2.3 x64 only (success for x86).

What about 'memchr' conflict in 'mormot.db.raw.sqlite3.static.pas' and 'mormot.lib.static.pas'

Offline

#4 2024-11-29 07:34:33

ThepSamart
Member
Registered: 2022-10-19
Posts: 6

Re: mORMot2 (2.3 stable) fail to create x64 package

Sorry, just found the cause of an error!

I used source from Release 64 date Oct 16, which different from latest commit (2.3.8998).

in ''mormot.db.raw.sqlite3.static.pas' a condition {$endif CPU32} was move to exclude 'memchr'.

I successfully created both x86/x64 runtime package for 2.3.8998 (not Release 64 statble date Oct 16). using .dpk file posted in GIST above.

Thank you for your grateful supporting.

Offline

#5 2024-11-29 07:41:17

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,966
Website

Re: mORMot2 (2.3 stable) fail to create x64 package

It makes sense now.

Offline

#6 2025-02-06 10:35:53

m227
Member
Registered: 2025-02-06
Posts: 1

Re: mORMot2 (2.3 stable) fail to create x64 package

Hi, I had the same problem, however I did not fiddle with files.
I just downloaded sources and static from https://github.com/synopse/mORMot2/releases. And they didn't compile under D12 x64. I manually moved memchr outside Win32 directive (as @ThepSamart wrote) and it compiled.

Offline

Board footer

Powered by FluxBB