marvinkreis/rofi-file-browser-extended

OpenBSD fails to build...still

anoduck opened this issue · 0 comments

Two things:

One:

  • gzip in OpenBSD does not possess the -k flag. Assuming the command keeps as the default action.

Two:

Source still fails to compile during make with Linking C shared library filebrowser.so, stating unable to find library glib-2.0, intl, and cairo. Full output is below:

 20%] Linking C shared library filebrowser.so
ld: error: unable to find library -lglib-2.0
ld: error: unable to find library -lintl
ld: error: unable to find library -lcairo
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error 1 in . (CMakeFiles/filebrowser.dir/build.make:209 'filebrowser.so': /usr/local/bin/cmake -E cmake_link_script CMakeFiles/filebrows...)
*** Error 2 in . (CMakeFiles/Makefile2:111 'CMakeFiles/filebrowser.dir/all': make -s -f CMakeFiles/filebrowser.dir/build.make CMakeFiles/fil...)
*** Error 2 in /home/user/rofi-file-browser-extended/build (Makefile:136 'all': make -s -f CMakeFiles/Makefile2 all)

Reviewing this out put you will notice that I performed the build process in the directory ./build rather than ./ to keep the repository tidy. It made no difference whether it was built from ./build or ./.

Debugging build instructions

I was able to have cmake generate debug information, including expanding variables to their resolved values.

Running with expanded trace output on.
/home/user/rofi-file-browser-extended/CMakeLists.txt(1):  include(CheckSymbolExists )
/home/user/rofi-file-browser-extended/CMakeLists.txt(3):  cmake_minimum_required(VERSION 2.8 )

/home/user/rofi-file-browser-extended/CMakeLists.txt(4):  project(rofi-file-browser-extended )
-- The C compiler identification is Clang 13.0.0
-- The CXX compiler identification is Clang 13.0.0
-- Detecting C compiler ABI info

  Call Stack (most recent call first):
  /usr/local/share/cmake/Modules/CMakeTestCCompiler.cmake:26 (CMAKE_DETERMINE_COMPILER_ABI)
  CMakeLists.txt:4 (project)

-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info

-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
/home/user/rofi-file-browserextended/CMakeLists.txt(10):  find_package(PkgConfig )
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2") 
/home/user/rofi-file-browser-extended/CMakeLists.txt(11):  pkg_search_module(GLIB2 REQUIRED glib-2.0 )
-- Checking for one of the modules 'glib-2.0'
/home/user/rofi-file-browser-extended/CMakeLists.txt(12):  pkg_search_module(CAIRO REQUIRED cairo )
-- Checking for one of the modules 'cairo'
/home/user/rofi-file-browser-extended/CMakeLists.txt(14):  pkg_get_variable(ROFI_PLUGINS_DIR rofi pluginsdir )
/home/user/rofi-file-browser-extended/CMakeLists.txt(16):  include_directories(include /usr/local/include/glib-2.0;/usr/local/lib/glib-2.0/include;/usr/local/include /usr/local/include/cairo;/usr/local/include/lzo;/usr/local/include/libpng16;/usr/X11R6/include;/usr/X11R6/include/freetype2;/usr/X11R6/include/pixman-1 )
/home/user/rofi-file-browser-extended/CMakeLists.txt(22):  file(GLOB SRC src/*.c )
/home/user/rofi-file-browser-extended/CMakeLists.txt(25):  set(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE )
/home/user/rofi-file-browser-extended/CMakeLists.txt(26):  check_symbol_exists(FTW_ACTIONRETVAL ftw.h HAVE_FTW_ACTIONRETVAL )
-- Looking for FTW_ACTIONRETVAL

-- Looking for FTW_ACTIONRETVAL - not found
/home/user/rofi-file-browser-extended/CMakeLists.txt(27):  unset(CMAKE_REQUIRED_DEFINITIONS )
/home/user/rofi-file-browser-extended/CMakeLists.txt(29):  if(HAVE_FTW_ACTIONRETVAL )
/home/user/rofi-file-browser-extended/CMakeLists.txt(31):  else()
/home/user/rofi-file-browser-extended/CMakeLists.txt(32):  add_compile_definitions(_XOPEN_SOURCE=700 )
/home/user/rofi-file-browser-extended/CMakeLists.txt(33):  list(APPEND SRC src/posix-compat/extended_nftw.c )
/home/user/rofi-file-browser-extended/CMakeLists.txt(36):  add_library(filebrowser SHARED /home/user/rofi-file-browser-extended/src/cmds.c;/home/user/rofi-file-browser-extended/src/filebrowser.c;/home/user/rofi-file-browser-extended/src/files.c;/home/user/rofi-file-browser-extended/src/icons.c;/home/user/rofi-file-browser-extended/src/keys.c;/home/user/rofi-file-browser-extended/src/options.c;/home/user/rofi-file-browser-extended/src/util.c;src/posix-compat/extended_nftw.c )
/home/user/rofi-file-browser-extended/CMakeLists.txt(37):  set_target_properties(filebrowser PROPERTIES PREFIX  )
/home/user/rofi-file-browser-extended/CMakeLists.txt(39):  target_link_libraries(filebrowser glib-2.0;intl cairo )
/home/user/rofi-file-browser-extended/CMakeLists.txt(44):  install(TARGETS filebrowser DESTINATION /usr/local/lib/rofi/ )
/home/user/rofi-file-browser-extended/CMakeLists.txt(50):  add_custom_command(OUTPUT /home/user/rofi-file-browser-extended/doc/rofi-file-browser-extended.1.gz COMMAND gzip -kf /home/user/rofi-file-browser-extended/doc/rofi-file-browser-extended.1 COMMENT Packing manpage )
/home/user/rofi-file-browser-extended/CMakeLists.txt(54):  add_custom_target(manpage ALL DEPENDS /home/user/rofi-file-browser-extended/doc/rofi-file-browser-extended.1.gz )
/home/user/rofi-file-browser-extended/CMakeLists.txt(56):  install(FILES doc/rofi-file-browser-extended.1.gz DESTINATION /usr/share/man/man1 )
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/rofi-file-browser-extended/build-

It appears to have resolved all the dependencies correctly, yet it still fails to compile.