muriloventuroso / easyssh

The SSH connection manager to make your life easier.
GNU General Public License v3.0
523 stars 39 forks source link

FreeBSD build errors with "Run-time dependency vte-2.91 found: NO" #180

Closed sebdanielsson closed 1 year ago

sebdanielsson commented 1 year ago

I'm trying to build EasySSH for FreeBSD 13 but I believe one dependency is too old based on the version available for FreeBSD and the error output.

Build command:

pkg install devel/libgee x11-toolkits/gtk30 x11-toolkits/granite devel/libvterm devel/json-glib devel/meson lang/vala security/gnupg devel/pkgconf devel/cmake
git clone https://github.com/muriloventuroso/easyssh.git
cd easyssh
meson build --prefix=/usr

Error:

The Meson build system
Version: 1.1.1
Source dir: /root/easyssh
Build dir: /root/easyssh/build
Build type: native build
Project name: com.github.muriloventuroso.easyssh
Project version: 1.7.9
C compiler for the host machine: cc (clang 14.0.5 "FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)")
C linker for the host machine: cc ld.lld 14.0.5
Vala compiler for the host machine: valac (valac 0.56.8)
Host machine cpu family: aarch64
Host machine cpu: aarch64
Found pkg-config: /usr/local/bin/pkg-config (1.8.1)
Program glib-compile-resources found: YES (/usr/local/bin/glib-compile-resources)
Configuring Config.vala using configuration
Found pkg-config: /usr/local/bin/pkg-config (1.8.1)
Run-time dependency gee-0.8 found: YES 0.20.6
Run-time dependency glib-2.0 found: YES 2.76.4
Run-time dependency gtk+-3.0 found: YES 3.24.34
Run-time dependency granite found: YES 6.2.0
Run-time dependency json-glib-1.0 found: YES 1.6.6
Found CMake: /usr/local/bin/cmake (3.26.1)
WARNING: CMake Toolchain: Failed to determine CMake compilers state
Run-time dependency vte-2.91 found: NO (tried pkgconfig and cmake)

meson.build:37:4: ERROR: Dependency "vte-2.91" not found, tried pkgconfig and cmake

A full log can be found at /root/easyssh/build/meson-logs/meson-log.txt
WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated.
Full log ``` Build started at 2023-08-17T11:10:39.891953 Main binary: /usr/local/bin/python3.9 Build Options: -Dprefix=/usr Python system: FreeBSD The Meson build system Version: 1.1.1 Source dir: /root/easyssh Build dir: /root/easyssh/build Build type: native build Project name: com.github.muriloventuroso.easyssh Project version: 1.7.9 ----- Detecting compiler via: cc --version compiler returned compiler stdout: FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c) Target: aarch64-unknown-freebsd13.2 Thread model: posix InstalledDir: /usr/bin compiler stderr: Running command: cc -E -dM - ----- Detecting linker via: cc -Wl,--version linker returned linker stdout: LLD 14.0.5 (FreeBSD llvmorg-14.0.5-0-gc12386ae247c-1400004) (compatible with GNU linkers) linker stderr: ----- Detecting LLD linker via: cc -Wl,-v linker stdout: LLD 14.0.5 (FreeBSD llvmorg-14.0.5-0-gc12386ae247c-1400004) (compatible with GNU linkers) linker stderr: ld: error: undefined symbol: main >>> referenced by crt1_c.c:72 (/usr/src/lib/csu/aarch64/crt1_c.c:72) >>> /usr/lib/crt1.o:(__start) cc: error: linker command failed with exit code 1 (use -v to see invocation) Sanity testing C compiler: cc Is cross compiler: False. Sanity check compiler command line: cc sanitycheckc.c -o sanitycheckc.exe -D_FILE_OFFSET_BITS=64 Sanity check compile stdout: ----- Sanity check compile stderr: ----- Running test binary command: /root/easyssh/build/meson-private/sanitycheckc.exe C compiler for the host machine: cc (clang 14.0.5 "FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)") C linker for the host machine: cc ld.lld 14.0.5 Running compile: Working directory: /tmp/tmpkhgpmrhy Command line: valac /tmp/tmpkhgpmrhy/testfile.vala -C Code: class MesonSanityCheck : Object { } Compiler stdout: Compiler stderr: Vala compiler for the host machine: valac (valac 0.56.8) ----- Detecting compiler via: cc --version compiler returned compiler stdout: FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c) Target: aarch64-unknown-freebsd13.2 Thread model: posix InstalledDir: /usr/bin compiler stderr: Running command: cc -E -dM - ----- Detecting linker via: cc -Wl,--version linker returned linker stdout: LLD 14.0.5 (FreeBSD llvmorg-14.0.5-0-gc12386ae247c-1400004) (compatible with GNU linkers) linker stderr: ----- Detecting LLD linker via: cc -Wl,-v linker stdout: LLD 14.0.5 (FreeBSD llvmorg-14.0.5-0-gc12386ae247c-1400004) (compatible with GNU linkers) linker stderr: ld: error: undefined symbol: main >>> referenced by crt1_c.c:72 (/usr/src/lib/csu/aarch64/crt1_c.c:72) >>> /usr/lib/crt1.o:(__start) cc: error: linker command failed with exit code 1 (use -v to see invocation) Sanity testing C compiler: cc Is cross compiler: False. Sanity check compiler command line: cc sanitycheckc.c -o sanitycheckc.exe -D_FILE_OFFSET_BITS=64 Sanity check compile stdout: ----- Sanity check compile stderr: ----- Running test binary command: /root/easyssh/build/meson-private/sanitycheckc.exe C compiler for the build machine: cc (clang 14.0.5 "FreeBSD clang version 14.0.5 (https://github.com/llvm/llvm-project.git llvmorg-14.0.5-0-gc12386ae247c)") C linker for the build machine: cc ld.lld 14.0.5 Using cached compile: Cached command line: valac /tmp/tmpkhgpmrhy/testfile.vala -C Code: class MesonSanityCheck : Object { } Cached compiler stdout: Cached compiler stderr: Vala compiler for the build machine: valac (valac 0.56.8) Build machine cpu family: aarch64 Build machine cpu: aarch64 Host machine cpu family: aarch64 Host machine cpu: aarch64 Target machine cpu family: aarch64 Target machine cpu: aarch64 Pkg-config binary for 0 is not cached. Pkg-config binary missing from cross or native file, or env var undefined. Trying a default Pkg-config fallback at pkg-config Found pkg-config: /usr/local/bin/pkg-config (1.8.1) Determining dependency 'glib-2.0' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion glib-2.0` -> 0 stdout: 2.76.4 ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --cflags glib-2.0` -> 0 stdout: -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include ----------- env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs glib-2.0` -> 0 stdout: -L/usr/local/lib -lglib-2.0 -lintl ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs glib-2.0` -> 0 stdout: -L/usr/local/lib -lglib-2.0 -lintl ----------- Running compile: Working directory: /root/easyssh/build/meson-private/tmph1ir3kro Command line: cc /root/easyssh/build/meson-private/tmph1ir3kro/testfile.c -o /root/easyssh/build/meson-private/tmph1ir3kro/output.exe -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declaration Code: #include int main(void) { printf("%ld\n", (long)(sizeof(void *))); return 0; } Compiler stdout: Compiler stderr: Program stdout: 8 Program stderr: Running compile: Working directory: /root/easyssh/build/meson-private/tmp9ytd15di Command line: cc /root/easyssh/build/meson-private/tmp9ytd15di/testfile.c -o /root/easyssh/build/meson-private/tmp9ytd15di/output.obj -c -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declaration -Werror=unknown-warning-option -Werror=unused-command-line-argument -Werror=ignored-optimization-argument --print-search-dirs Code: Compiler stdout: programs: =/usr/bin libraries: =/usr/lib/clang/14.0.5:/usr/lib Compiler stderr: Program glib-compile-resources found: YES (/usr/local/bin/glib-compile-resources) Configuring Config.vala using configuration Pkg-config binary for 1 is not cached. Pkg-config binary missing from cross or native file, or env var undefined. Trying a default Pkg-config fallback at pkg-config Found pkg-config: /usr/local/bin/pkg-config (1.8.1) Determining dependency 'gee-0.8' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion gee-0.8` -> 0 stdout: 0.20.6 ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --cflags gee-0.8` -> 0 stdout: -I/usr/local/include/gee-0.8 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include ----------- env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs gee-0.8` -> 0 stdout: -L/usr/local/lib -lgee-0.8 -lgobject-2.0 -lglib-2.0 -lintl ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs gee-0.8` -> 0 stdout: -L/usr/local/lib -lgee-0.8 -lgobject-2.0 -lglib-2.0 -lintl ----------- Using cached run result: Code: #include int main(void) { printf("%ld\n", (long)(sizeof(void *))); return 0; } Args: [] Cached run returncode: 0 Cached run stdout: 8 Cached run stderr: Running compile: Working directory: /root/easyssh/build/meson-private/tmp6hxbnpa6 Command line: cc /root/easyssh/build/meson-private/tmp6hxbnpa6/testfile.c -o /root/easyssh/build/meson-private/tmp6hxbnpa6/output.obj -c -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declaration -Werror=unknown-warning-option -Werror=unused-command-line-argument -Werror=ignored-optimization-argument --print-search-dirs Code: Compiler stdout: programs: =/usr/bin libraries: =/usr/lib/clang/14.0.5:/usr/lib Compiler stderr: Run-time dependency gee-0.8 found: YES 0.20.6 Pkg-config binary for 1 is cached. Determining dependency 'glib-2.0' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion glib-2.0` -> 0 stdout: 2.76.4 ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --cflags glib-2.0` -> 0 stdout: -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include ----------- env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs glib-2.0` -> 0 stdout: -L/usr/local/lib -lglib-2.0 -lintl ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs glib-2.0` -> 0 stdout: -L/usr/local/lib -lglib-2.0 -lintl ----------- Run-time dependency glib-2.0 found: YES 2.76.4 Pkg-config binary for 1 is cached. Determining dependency 'gtk+-3.0' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion gtk+-3.0` -> 0 stdout: 3.24.34 ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --cflags gtk+-3.0` -> 0 stdout: -I/usr/local/include/gtk-3.0 -I/usr/local/include/pango-1.0 -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/harfbuzz -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include/fribidi -I/usr/local/include/cairo -I/usr/local/include/pixman-1 -D_THREAD_SAFE -D_THREAD_SAFE -D_THREAD_SAFE -D_THREAD_SAFE -I/usr/local/include/gdk-pixbuf-2.0 -D_THREAD_SAFE -I/usr/local/include/gio-unix-2.0 -D_THREAD_SAFE -I/usr/local/include/libepoll-shim -I/usr/local/include/atk-1.0 -I/usr/local/include/at-spi2-atk/2.0 -I/usr/local/include/at-spi-2.0 -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -D_THREAD_SAFE -D_THREAD_SAFE -D_THREAD_SAFE -pthread ----------- env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs gtk+-3.0` -> 0 stdout: -L/usr/local/lib -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs gtk+-3.0` -> 0 stdout: -L/usr/local/lib -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl ----------- Run-time dependency gtk+-3.0 found: YES 3.24.34 Pkg-config binary for 1 is cached. Determining dependency 'granite' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion granite` -> 0 stdout: 6.2.0 ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --cflags granite` -> 0 stdout: -I/usr/local/include/granite -I/usr/local/include/gee-0.8 -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include -I/usr/local/include/gio-unix-2.0 -I/usr/local/include/gtk-3.0 -I/usr/local/include/pango-1.0 -I/usr/local/include/harfbuzz -I/usr/local/include/freetype2 -I/usr/local/include/libpng16 -I/usr/local/include/fribidi -I/usr/local/include/cairo -I/usr/local/include/pixman-1 -D_THREAD_SAFE -D_THREAD_SAFE -D_THREAD_SAFE -D_THREAD_SAFE -I/usr/local/include/gdk-pixbuf-2.0 -D_THREAD_SAFE -D_THREAD_SAFE -I/usr/local/include/libepoll-shim -I/usr/local/include/atk-1.0 -I/usr/local/include/at-spi2-atk/2.0 -I/usr/local/include/at-spi-2.0 -I/usr/local/include/dbus-1.0 -I/usr/local/lib/dbus-1.0/include -D_THREAD_SAFE -D_THREAD_SAFE -D_THREAD_SAFE -pthread ----------- env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs granite` -> 0 stdout: -L/usr/local/lib -lgranite -lgee-0.8 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs granite` -> 0 stdout: -L/usr/local/lib -lgranite -lgee-0.8 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl ----------- Run-time dependency granite found: YES 6.2.0 Pkg-config binary for 1 is cached. Determining dependency 'json-glib-1.0' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion json-glib-1.0` -> 0 stdout: 1.6.6 ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --cflags json-glib-1.0` -> 0 stdout: -I/usr/local/include/json-glib-1.0 -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -pthread ----------- env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1 env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs json-glib-1.0` -> 0 stdout: -L/usr/local/lib -ljson-glib-1.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl ----------- env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --libs json-glib-1.0` -> 0 stdout: -L/usr/local/lib -ljson-glib-1.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl ----------- Run-time dependency json-glib-1.0 found: YES 1.6.6 Pkg-config binary for 1 is cached. Determining dependency 'vte-2.91' with pkg-config executable '/usr/local/bin/pkg-config' env[PKG_CONFIG_PATH]: Called `/usr/local/bin/pkg-config --modversion vte-2.91` -> 1 stderr: Package vte-2.91 was not found in the pkg-config search path. Perhaps you should add the directory containing `vte-2.91.pc' to the PKG_CONFIG_PATH environment variable Package 'vte-2.91', required by 'virtual:world', not found ----------- CMake binary for 1 is not cached CMake binary missing from cross or native file, or env var undefined. Trying a default CMake fallback at cmake Found CMake: /usr/local/bin/cmake (3.26.1) Extracting basic cmake information CMake Toolchain: Calling CMake once to generate the compiler state Calling CMake (['/usr/local/bin/cmake']) in /root/easyssh/build/meson-private/__CMake_compiler_info__ with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-G" - "Ninja" - "-DCMAKE_TOOLCHAIN_FILE=/root/easyssh/build/meson-private/__CMake_compiler_info__/CMakeMesonTempToolchainFile.cmake" - "." WARNING: CMake Toolchain: Failed to determine CMake compilers state Try CMake generator: auto Calling CMake (['/usr/local/bin/cmake']) in /root/easyssh/build/meson-private/cmake_vte-2.91 with: - "--trace-expand" - "--trace-format=json-v1" - "--no-warn-unused-cli" - "--trace-redirect=cmake_trace.txt" - "-DCMAKE_TOOLCHAIN_FILE=/root/easyssh/build/meson-private/cmake_vte-2.91/CMakeMesonToolchainFile.cmake" - "." CMake trace warning: add_executable() non imported executables are not supported CMake TRACE: /root/easyssh/build/meson-private/cmake_vte-2.91/CMakeFiles/CMakeScratch/TryCompile-otJs2G/CMakeLists.txt:18 add_executable(['cmTC_f75ea', '/usr/local/share/cmake/Modules/CMakeCCompilerABI.c']) CMake trace warning: target_link_options() TARGET cmTC_f75ea not found CMake TRACE: /root/easyssh/build/meson-private/cmake_vte-2.91/CMakeFiles/CMakeScratch/TryCompile-otJs2G/CMakeLists.txt:21 target_link_libraries(['cmTC_f75ea', '']) -- Module search paths: ['/', '/usr', '/usr/local'] -- CMake root: /usr/local/share/cmake -- CMake architectures: [] -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share'] Preliminary CMake check failed. Aborting. Run-time dependency vte-2.91 found: NO (tried pkgconfig and cmake) meson.build:37:4: ERROR: Dependency "vte-2.91" not found, tried pkgconfig and cmake ```

Is there a way to get libvte-2.91-dev running on FreeBSD?

sebdanielsson commented 1 year ago

The package required turned out to be x11-toolkits/vte3