devinsmith / fox

Unofficial FOX Toolkit mirror using CMake
GNU Lesser General Public License v3.0
12 stars 1 forks source link

Sample programs failed to build on FreeBSD #23

Open Curculigo opened 2 months ago

Curculigo commented 2 months ago
$ cmake -S . -B build
-- The C compiler identification is Clang 18.1.5
-- The CXX compiler identification is Clang 18.1.5
-- Detecting C compiler ABI info
-- 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
-- Found PkgConfig: /usr/local/bin/pkg-config (found version "2.2.0")
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found X11: /usr/local/include
-- Looking for XOpenDisplay in /usr/local/lib/libX11.so;/usr/local/lib/libXext.so
-- Looking for XOpenDisplay in /usr/local/lib/libX11.so;/usr/local/lib/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found Freetype: /usr/local/lib/libfreetype.so (found version "2.13.2")
-- Checking for module 'fontconfig'
--   Found fontconfig, version 2.15.0
-- Found OpenGL: /usr/local/lib/libOpenGL.so
-- Performing Test HAVE_IMMINTRIN_H
-- Performing Test HAVE_IMMINTRIN_H - Failed
-- Looking for localtime_r
-- Looking for localtime_r - found
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for C++ include dlfcn.h
-- Looking for C++ include dlfcn.h - found
-- Looking for dlopen
-- Looking for dlopen - found
-- Looking for shl_load
-- Looking for shl_load - not found
-- Looking for gmtime_r
-- Looking for gmtime_r - found
-- Looking for readdir_r
-- Looking for readdir_r - found
-- Looking for getpwuid_r
-- Looking for getpwuid_r - found
-- Looking for getpwnam_r
-- Looking for getpwnam_r - found
-- Looking for getgrgid_r
-- Looking for getgrgid_r - found
-- Looking for pthread_setaffinity_np
-- Looking for pthread_setaffinity_np - not found
-- Looking for pipe2
-- Looking for pipe2 - found
-- Looking for sched_getcpu
-- Looking for sched_getcpu - found
-- Looking for epoll_create1
-- Looking for epoll_create1 - not found
-- Looking for timerfd_create
-- Looking for timerfd_create - found
-- Looking for inotify_init1
-- Looking for inotify_init1 - not found
-- Looking for statvfs
-- Looking for statvfs - found
-- Performing Test HAVE_DIRENT_H
-- Performing Test HAVE_DIRENT_H - Success
-- Looking for C++ include sys/time.h
-- Looking for C++ include sys/time.h - found
-- Performing Test TIME_WITH_SYS_TIME
-- Performing Test TIME_WITH_SYS_TIME - Success
-- Looking for C++ include sys/wait.h
-- Looking for C++ include sys/wait.h - found
-- Looking for C++ include semaphore.h
-- Looking for C++ include semaphore.h - found
-- Looking for C++ include unistd.h
-- Looking for C++ include unistd.h - found
-- Looking for C++ include sys/dir.h
-- Looking for C++ include sys/dir.h - not found
-- Looking for C++ include sys/filio.h
-- Looking for C++ include sys/filio.h - found
-- Looking for C++ include sys/mman.h
-- Looking for C++ include sys/mman.h - found
-- Looking for C++ include sys/mount.h
-- Looking for C++ include sys/mount.h - found
-- Looking for C++ include sys/param.h
-- Looking for C++ include sys/param.h - found
-- Looking for C++ include sys/select.h
-- Looking for C++ include sys/select.h - found
-- Looking for C++ include sys/epoll.h
-- Looking for C++ include sys/epoll.h - not found
-- Looking for C++ include sys/shm.h
-- Looking for C++ include sys/shm.h - found
-- Looking for C++ include sys/statvfs.h
-- Looking for C++ include sys/statvfs.h - found
-- Looking for C++ include sys/pstat.h
-- Looking for C++ include sys/pstat.h - not found
-- Looking for C++ include sys/inotify.h
-- Looking for C++ include sys/inotify.h - not found
-- Found JPEG: /usr/local/lib/libjpeg.so (found version "80")
-- Found ZLIB: /usr/lib/libz.so (found version "1.3.1")
-- Found PNG: /usr/local/lib/libpng.so (found version "1.6.43")
-- Found BZip2: /usr/lib/libbz2.so (found version "1.0.8")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Found TIFF: /usr/local/lib/libtiff.so (found version "4.6.0")
-- Checking for module 'libwebp'
--   Found libwebp, version 1.4.0
-- Checking for module 'libopenjpeg1'
--   Package 'libopenjpeg1' not found
-- Checking for module 'libopenjpeg'
--   Package 'libopenjpeg' not found
-- Configuring done (19.0s)
-- Generating done (1.3s)
-- Build files have been written to: /test/fox/build
$ gmake -C build
...
[ 72%] Linking CXX static library libFOX-1.7.a
[ 72%] Built target FOX
[ 72%] Generating /test/fox/adie/icons.cpp, /test/fox/adie/icons.h
[ 73%] Generating /test/fox/adie/help.cpp, /test/fox/adie/help.h
[ 73%] Building CXX object adie/CMakeFiles/adie.dir/Adie.cpp.o
In file included from /test/fox/adie/Adie.cpp:24:
/test/fox/include/xincs.h:304:10: fatal error: 'X11/X.h' file not found
  304 | #include <X11/X.h>
      |          ^~~~~~~~~
1 error generated.
gmake[2]: *** [adie/CMakeFiles/adie.dir/build.make:92: adie/CMakeFiles/adie.dir/Adie.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:383: adie/CMakeFiles/adie.dir/all] Error 2
gmake: *** [Makefile:136: all] Error 2
gmake: Leaving directory '/test/fox/build'
devinsmith commented 2 months ago

It may be because we're building a static library, but when I switched it to shared it fails on MSVC in the CI.

You can try switching it to shared (I did this in PR #24). I don't have a FreeBSD machine to test directly on, but I can probably get one setup in a VM in a few days.