Lecrapouille / gdcef

[Plugin][Version 0.10.0][Functional] Chromium Embedded Framework Webview for Godot 3 and 4
https://discord.gg/EckEwy7S5U
MIT License
222 stars 26 forks source link

Can't open dynamic library (only currently for one device) #65

Open lublak opened 1 month ago

lublak commented 1 month ago

I have currently an issue with one device. I work over github to work with multiple devices on my project (sync with git locally). I copied the cef_artifacts manually on the devies (from your github releases).

Can't open dynamic library: C:/*****/project/cef_artifacts/~libgdcef.dll. Error: Error 126: Das angegebene Modul wurde nicht gefunden..
core/extension/gdextension.cpp:719 - GDExtension dynamic library not found: C:/*****/project/cef_artifacts/~libgdcef.dll
Failed loading resource: res://cef_artifacts/gdcef.gdextension. Make sure resources have been imported by opening the project in the editor at least once.

It works fine on another device. (also windows 11). Very strange is the "~" before the file. The path self is correct. Only changes are .godot folder (.gitignore contains it). So i check if there are any difference for "gdcef". I also removed the .godot folder and reimport it (nothing changes, very strange issue)

lublak commented 1 month ago

Info: "~" is auto created by godot (works on one machine but on the other its not created, even if i create it myself it aut gets deleted).

Lecrapouille commented 1 month ago

@lublak if this an issue Godot side, this is maybe due to the fact I track HEAD of the branch 4.2 of the godot-cpp repo instead of a tag (i.e. 4.2.2-stable). You can try compiling gdcef instead of using my release to check if all devices suffer of the same issue.

lublak commented 1 month ago

@Lecrapouille good idea. I will build it myself and test again! Good point 👍

Lecrapouille commented 1 week ago

@lublak any progress ?

lublak commented 4 days ago

@Lecrapouille Oh dear, unfortunately I've forgotten about my hobby due to other projects. I'll see if I can find some time at the weekend.

lublak commented 3 days ago

@Lecrapouille I downloaded the latest version GitHub release on the laptop. Same issue. But I setup the complete build environment und build it myself and now it works. I just used the simple build.py script without changing anything.

Lecrapouille commented 3 days ago

@lublak many people have the same issue but not with the ~ The fix will be long because I do not have Windows

lublak commented 3 days ago

@lublak many people have the same issue but not with the ~ The fix will be long because I do not have Windows

The issue is, with the build I created myself it works flawlessly without changing any code. How do you build the release? Would it help to give you the build? Do you build it on Linux Mac? Would it help to create GitHub actions? (There are, i think, also windows machines available)

Lecrapouille commented 3 days ago

@lublak

The issue is, with the build I created myself it works flawlessly without changing any code.

So you have compiled the 0.11.0 tag for Godot 4.3 ?

What are your current configurations ? Here are some survey:

Face     Win11     OK (compiled + release)
Raphipod Win10     KO (release)
Каори    Win10     KO (release)
Mikee    Win11     KO (release)
eliopark-nsuslab Win?? OK (compiled)

Would it help to give you the build?

No I do not have Windows. That is why it's hard for me to investigate.

Do you build it on Linux Mac?

Nope (GDCEF could compile but I'm looking for a Mac developer because GDCEF needs some extra work to work for this archi. I do not have Mac). GDCEF compiles natively for Linux and Windows through the build.py script.

Would it help to create GitHub actions?

Yes prebuild are made by GitHub actions https://github.com/Lecrapouille/gdcef/blob/godot-4.x/.github/workflows/ci.yml Concerning Windows, I guess it will be random their CI run on Windows 10 or 11. For release 0.11.0 it was compiled by a win 10 https://github.com/Lecrapouille/gdcef/actions/runs/10689214050/job/29631283381#step:1:5 I dunno for previous releases since logs are removed. But Windows 10 and 11 are supposed to be compatiable

Lecrapouille commented 3 days ago

@eliopark-nsuslab have you suggestions ?

lublak commented 3 days ago

@lublak

The issue is, with the build I created myself it works flawlessly without changing any code.

So you have compiled the 0.11.0 tag for Godot 4.3 ?

I used the main tag: https://github.com/Lecrapouille/gdcef/tree/godot-4.x so i think dev?

What are your current configurations ? Here are some survey:

Face     Win11     OK (compiled + release)
Raphipod Win10     KO (release)
Каори    Win10     KO (release)
Mikee    Win11     KO (release)
eliopark-nsuslab Win?? OK (compiled)

My laptop is Win11 (my desktop is also a Win11 but here the github release works, on the laptop, it doesn't work).

Would it help to create GitHub actions?

Yes prebuild are made by GitHub actions https://github.com/Lecrapouille/gdcef/blob/godot-4.x/.github/workflows/ci.yml Concerning Windows, I guess it will be random their CI run on Windows 10 or 11. For release 0.11.0 it was compiled by a win 10 https://github.com/Lecrapouille/gdcef/actions/runs/10689214050/job/29631283381#step:1:5 I dunno for previous releases since logs are removed. But Windows 10 and 11 are supposed to be compatiable

It should work, win 10 and 11 should be compatible ( i mean it works on my desktop win 11)

eliopark-nsuslab commented 2 days ago

I'm still not sure what the problem is, but I did notice something interesting. The file “~libgdcef.dll” is indeed created, but it is not created at build time, and I suspect that godot or cef replicates it as needed at runtime. This file has a 'hidden' attribute, but I can't see it in explorer even with the 'show hidden files' option turned on, and I can see it through terminal or everything. I'll have to do more research to find out why that file is being created and trying to load to that path, but I'm very busy at the moment so it won't happen anytime soon.

lublak commented 2 days ago

@eliopark-nsuslab In general, these ‘~’ files are actually open files, similar to a lock file. However, the question still arises as to why godot tries to open them (they should actually be created, but have no relevance for godot when opened). But this is just a speculation.

Lecrapouille commented 2 days ago

@Lecrapouille I just used the simple build.py script without changing anything.

Beware I'm now tracking Godot 4.3. And they may have fixed this.

lublak commented 1 day ago

@Lecrapouille I just used the simple build.py script without changing anything.

Beware I'm now tracking Godot 4.3. And they may have fixed this.

That could also be the case, of course. When a new GitHub release comes out, I'll be happy to test it.