godotengine / godot-git-plugin

Git implementation of the VCS interface in Godot
MIT License
703 stars 74 forks source link

Plugin doesn't seem to work on Ubuntu #127

Closed NewDefectus closed 1 year ago

NewDefectus commented 2 years ago

I'm running Ubuntu 22.04 and I tried using the git plugin in my project, but the editor (v3.5) doesn't seem to register it. After adding it to the addons directory I tried setting it up via Project -> Version Control -> Set Up Version Control, but I get the "No VCS plugins are available" error. The "commit" tab on the righthand side of the editor is missing as well.

twaritwaikar commented 2 years ago

@NewDefectus Do you also see any errors in the Output console or in the terminal (only visible if you start Godot through the terminal)?

NewDefectus commented 2 years ago

Yep, this appears in the terminal (also appears in the output console):

ERROR: Can't open dynamic library: /home/defectus/PlumberGame/addons/godot-git-plugin/linux/libgitapi.so. Error: libssl.so.1.1: cannot open shared object file: No such file or directory
   at: open_dynamic_library (drivers/unix/os_unix.cpp:412)
ERROR: No valid library handle, can't get symbol from GDNative object
   at: get_symbol (modules/gdnative/gdnative.cpp:510)
ERROR: No nativescript_init in "res://addons/godot-git-plugin/linux/libgitapi.so" found
   at: init_library (modules/gdnative/nativescript/nativescript.cpp:1503)
ERROR: Failed to create plugin script instance.
   at: _load_plugin (editor/plugins/version_control_editor_plugin.cpp:179)
twaritwaikar commented 2 years ago

Does running sudo apt-get install libssl-dev help? I think we need to check if OpenSSL is being loaded dynamically or linked statically on Linux.

NewDefectus commented 2 years ago

Nope, I'm getting the same error as before

mewn commented 2 years ago

Same issue on my end. Ubuntu 22.04 LTS ship OpenSSL 3.0.2 so no libssl.so.1.1 and libcrypto.so.1.1 I took the libs from an installed snap and copied it over, it then worked without issue.

would it be possible to ship libssl.so.1.1 and libcrypto.so.1.1 with the plugin instead ?

mewn@MBP-Ubuntu:~/Project/Godot/3dun/addons/godot-git-plugin/linux$ ldd libgitapi.so 
    linux-vdso.so.1 (0x00007ffe15dfb000)
    libssl.so.1.1 => not found
    libcrypto.so.1.1 => not found
    libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f80f87d4000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f80f918a000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f80f916a000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f80f85ac000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f80f9285000)
mewn@MBP-Ubuntu:~/Project/Godot/3dun/addons/godot-git-plugin/linux$ 
ghost commented 1 year ago

For anybody that has this issue, this helped me resolve it on ubuntu: https://stackoverflow.com/questions/72133316/ubuntu-22-04-libssl-so-1-1-cannot-open-shared-object-file-no-such-file-or-di