Page 1 of 1

PB 6.11, PB 6.10 Linker error using scintilla and webview gadget

Posted: Sun Jun 09, 2024 4:55 pm
by flashbob
The linker error only occurs under PB 6.04, PB 6.10, PB 6.11 (e.g. with the Form Editor), scintilla works with pb PB 5.73.
My macOS is 10.13.6

Re: PB 6.11, PB 6.10 Linker error using scintilla an webview gadget

Posted: Sun Jun 09, 2024 6:55 pm
by Fred
We need more info, code source, error string..

Re: PB 6.11, PB 6.10 Linker error using scintilla and webview gadget

Posted: Sun Jun 09, 2024 8:50 pm
by flashbob
... you just have to create a new form with FormDesigner and draw the Scintilla gadget. That's all.

The machine ist Intel based, macOS High Sierra, v 10.13.6


The linker error using PB 6.10 LTS and PB 6.11 LTS (ScintillaGadget) is:

"Undefined symbols for architecture x86_64:
"___isPlatformVersionAtLeast", referenced from:
-[SCIContentView initWithFrame:] in libpbscintilla_cocoa.a(ScintillaView.o)
Scintilla::Internal::ScintillaCocoa::StartDrag() in libpbscintilla_cocoa.a(ScintillaCocoa.o)
Scintilla::Internal::ScintillaCocoa::DraggingUpdated(id<NSDraggingInfo>) in libpbscintilla_cocoa.a(ScintillaCocoa.o)
Scintilla::Internal::ScintillaCocoa::PerformDragOperation(id<NSDraggingInfo>) in libpbscintilla_cocoa.a(ScintillaCocoa.o)
Scintilla::Internal::ScintillaCocoa::UpdateBaseElements() in libpbscintilla_cocoa.a(ScintillaCocoa.o)

By the way: Closing PB 6.11 after this message is not possible - hangs ...


The generated code by formdesigner is:

Code: Select all

;
; This code is automatically generated by the FormDesigner.
; Manual modification is possible to adjust existing commands, but anything else will be dropped when the code is compiled.
; Event procedures needs to be put in another source file.
;

Enumeration FormWindow
  #Window_0
EndEnumeration

Enumeration FormGadget
  #Scintilla_0
EndEnumeration

Procedure OpenWindow_0(x = 0, y = 0, width = 528, height = 425)
  OpenWindow(#Window_0, x, y, width, height, "", #PB_Window_SystemMenu)
  ScintillaGadget(#Scintilla_0, 240, 78, 193, 248, @Callback_Scintilla_0())
EndProcedure

Procedure Window_0_Events(event)
  Select event
    Case #PB_Event_CloseWindow
      ProcedureReturn #False

    Case #PB_Event_Menu
      Select EventMenu()
      EndSelect

    Case #PB_Event_Gadget
      Select EventGadget()
      EndSelect
  EndSelect
  ProcedureReturn #True
EndProcedure

The linker error using PB 6.10 LTS (WebViewGadget) is:

"Undefined symbols for architecture x86_64:
"___isPlatformVersionAtLeast", referenced from:
webview::detail::cocoa_wkwebview_engine::create_window() in libpbwebview.a(webview.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)"

Re: PB 6.11, PB 6.10 Linker error using scintilla an webview gadget

Posted: Sun Jun 09, 2024 10:33 pm
by Mindphazer
No problem with your code here (MacOS 10.15), PB 6.11 M1

Re: PB 6.11, PB 6.10 Linker error using scintilla an webview gadget

Posted: Mon Jun 10, 2024 9:11 am
by Fred
10.13 is too old IIRC, you will need 10.15 at least. (10.13 js deprecated since 4 years btw)

Re: PB 6.11, PB 6.10 Linker error using scintilla an webview gadget

Posted: Mon Jun 10, 2024 2:13 pm
by flashbob
Fred wrote: Mon Jun 10, 2024 9:11 am 10.13 is too old IIRC, you will need 10.15 at least. (10.13 js deprecated since 4 years btw)
Hmm,

then you should perhaps update the information on the product page (download demo) ?
OS X 10.10 is listed as minimum requirement:

" PureBasic free for OS X 10.10 or above (Intel - x64) "

Re: PB 6.11, PB 6.10 Linker error using scintilla and webview gadget

Posted: Mon Jun 10, 2024 4:19 pm
by Fred
You're right, I will update it.