Recent

Author Topic: Will pay for a solution  (Read 3323 times)

user5

  • Sr. Member
  • ****
  • Posts: 414
Re: Will pay for a solution
« Reply #15 on: June 14, 2025, 01:04:30 am »
    I still haven't found out what the Lazarus compiler error message means, the line being: "if Create and not ForceDirectoriesUtf8(Result) then".
I have tried to do research to find out more about Utf8 and from what I can see it involves strings and/or text.
    I surmise that if Create = true then a build is in progress.
    ForceDirectoriesUtf8 maybe refers to whether or not to force the creation of a directory or folder involving Utf8.
    I feel that I may be close to an answer but I'm not there yet.
    Can anyone at least confirm that Create refers to a build? Please.
    By the way, you might check out our new video "VirtualU Tour 4" on YouTube.

user5

  • Sr. Member
  • ****
  • Posts: 414
Re: Will pay for a solution
« Reply #16 on: June 14, 2025, 01:13:16 am »
    I just noticed that in the Online Package Manager is a checkbox for UTF8 tools. Should I check that box and
install those tools? I may inquire about these things in the Lazarus General section. Thank you so much for your help.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11476
  • Debugger - SynEdit - and more
    • wiki
Re: Will pay for a solution
« Reply #17 on: June 14, 2025, 01:30:58 am »
    Can anyone at least confirm that Create refers to a build? Please.

Code: Pascal  [Select][+][-]
  1. function GetAppConfigDirUtf8(Global: Boolean; Create: boolean = false): string;
  2. ...
  3. begin
  4. ...
  5.   if Create and not ForceDirectoriesUtf8(Result) then
  6.     raise EInOutError.Create(Format(lrsUnableToCreateConfigDirectoryS,[Result]));
  7. end;
  8.  

I am not sure what you mean by "a build", so my answer may be far off => the only build you do is your project. But the build itself does not run the code. I.e. the error does not happen when the code is executed, but when compiled.

The code is compiled regardless if that function will be used or called.
The code is compiled because,
- either: something in that packages (LazUtils / the units that are in that folder) is required
- or: you managed to include the unit in some other way

If the code were successfully compiled, and if it would then be executed, it would try to get a folder inside the systems config area. I.e. possible in
%PROFILESPATH%\All Users\Application Data or  %USERPROFILE%\Local Settings\Application Data
It would try to get a folder with the app-name (and maybe vendor).

"CREATE" would mean if that folder does not exist, then that folder would be created.

But, it does not compile, it does not try to get the config folder, it does not try to create that folder....



"lrsUnableToCreateConfigDirectoryS" is a contstant.

Normally that code is compiled as part of the unit LazFileUtils, which contains "{$I winlazfileutils.inc}".

But...
- if it was compiled through this, it should not give that error. (and it did indeed not give that error when you rebuild the IDE)
- normally LazUtils should not need to be compiled. There can be reasons, but its suspicious.

So my suspicion is, that this file is referred to in some other way, and the compiler tries to compile it in a way it was not meant to.

But from the tiny snippet of errors shown on the screenshot, I can not tell what it is...

Try at least (context menu): Copy > Copy all/original messages
And the post the entire text of all those messages (or at least the last 300).




Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11476
  • Debugger - SynEdit - and more
    • wiki
Re: Will pay for a solution
« Reply #18 on: June 14, 2025, 01:32:17 am »
    I just noticed that in the Online Package Manager is a checkbox for UTF8 tools. Should I check that box and
install those tools? I may inquire about these things in the Lazarus General section. Thank you so much for your help.

I wouldn't think you need them / I wouldn't think it makes a difference.

At least if your error still is what is on the image in your first post?

That error is not about missing any utf8 related stuff.

user5

  • Sr. Member
  • ****
  • Posts: 414
Re: Will pay for a solution
« Reply #19 on: June 14, 2025, 02:51:11 am »
    Yes, VirtualU makes use of components like EpikTimer, BGRABitmap and other packages and it also uses third party
open source programs. VirtualU complies with all of their requirements or we have their permission.
    They're all listed in VirtualU's About tab.

n7800

  • Sr. Member
  • ****
  • Posts: 400
Re: Will pay for a solution
« Reply #20 on: June 15, 2025, 04:51:00 am »
To reliably clean the project from old files (as Martin advised), it is better to use "Main Menu > Run > Clean up and Build". Check all 4 boxes and click "Clean up and build". When finished, try to run your project.

Be sure to try this, as it should clean not only the project, but also the LazUtils package that you are having a build problem with.

Juerg

  • Newbie
  • Posts: 1
Re: Will pay for a solution
« Reply #21 on: June 24, 2025, 05:54:28 pm »
« Last Edit: June 24, 2025, 05:56:25 pm by Juerg »

 

TinyPortal © 2005-2018