前提・実現したいこと
https://raw.githubusercontent.com/nstroustrup/lifespan/master/lifespan_machine_software_installation.pdf
上記のリンクにある論文のサーバーの構築をubuntuで行いたいと考えています。
こういったものに全く触れたことがないため、エラーが出ても対処の仕方が全くわからないため教えていただけないでしょうか。
まずGitHubからlifespan-masterといzipファイルを展開しました。そのフォルダの中のexternal_compile_libraries中にあるfltkというもの指示通りインストールしようとしました。
./configureした後、makeすると以下のようなエラーが出ました。
発生している問題・エラーメッセージ
=== making src === === making fluid === Compiling Fl_Function_Type.cxx... In file included from Fl_Function_Type.cxx:22: Fl_Type.h:39:21: error: friend declaration of ‘Fl_Widget* make_type_browser(int, int, int, int, const char*)’ specifies default arguments and isn’t a definition [-fpermissive] 39 | friend Fl_Widget *make_type_browser(int,int,int,int,const char *l=0); | ^~~~~~~~~~~~~~~~~ make[1]: *** [../makeinclude:150: Fl_Function_Type.o] エラー 1 make: *** [Makefile:24: all] エラー 1
該当のソースコード
~/lifespan-master/external_compile_libraries/fltk$ sudo ./configure checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for a BSD-compatible install... /usr/bin/install -c checking for nroff... /usr/bin/nroff checking for htmldoc... no checking for doxygen... no checking for ranlib... ranlib checking for ar... /usr/bin/ar checking for windres... no checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking whether byte ordering is bigendian... no checking size of short... 2 checking size of int... 4 checking size of long... 8 checking whether the compiler recognizes bool as a built-in type... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking sys/stdtypes.h usability... no checking sys/stdtypes.h presence... no checking for sys/stdtypes.h... no checking whether we have the POSIX compatible scandir() prototype... yes checking for vsnprintf... yes checking for snprintf... yes checking for strings.h... (cached) yes checking for strcasecmp... yes checking for strlcat... no checking for strlcpy... no checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking for localeconv... yes checking for library containing pow... -lm checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for long long int... yes checking for strtoll... yes checking for library containing dlsym... -ldl checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking alsa/asoundlib.h usability... yes checking alsa/asoundlib.h presence... yes checking for alsa/asoundlib.h... yes checking for jpeg_CreateCompress in -ljpeg... yes checking jpeglib.h usability... yes checking jpeglib.h presence... yes checking for jpeglib.h... yes checking for gzgets in -lz... yes checking zlib.h usability... yes checking zlib.h presence... yes checking for zlib.h... yes checking for png_read_info in -lpng... yes checking png.h usability... yes checking png.h presence... yes checking for png.h... yes checking libpng/png.h usability... yes checking libpng/png.h presence... yes checking for libpng/png.h... yes checking for png_get_valid in -lpng... yes checking for png_set_tRNS_to_alpha in -lpng... yes checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for pthread_create using -lpthreads... no checking for pthread_create using -lpthread... yes checking for X... libraries , headers checking for gethostbyname... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for IceConnectionNumber in -lICE... no checking for library containing dlopen... none required checking GL/gl.h usability... no checking GL/gl.h presence... no checking for GL/gl.h... no checking GL/glu.h usability... no checking GL/glu.h presence... no checking for GL/glu.h... no checking for XineramaIsActive in -lXinerama... no checking for freetype-config... no checking for X11/extensions/Xdbe.h... no checking for XdbeQueryExtension in -lXext... no checking for xprop... /usr/bin/xprop checking for X overlay visuals... no checking if GCC supports -fno-exceptions... yes checking if GCC supports -fno-strict-aliasing... yes Configuration Summary ------------------------------------------------------------------------- Directories: prefix=/usr/local bindir=${exec_prefix}/bin datadir=${datarootdir} datarootdir=${prefix}/share exec_prefix=${prefix} includedir=${prefix}/include libdir=${exec_prefix}/lib mandir=${datarootdir}/man Graphics: X11+Xft+Xdbe+Xinerama Image Libraries: JPEG=System PNG=System ZLIB=System Large Files: YES OpenGL: NO Threads: YES configure: creating ./config.status config.status: creating makeinclude config.status: creating fltk.list config.status: creating fltk-config config.status: creating fltk.spec config.status: creating FL/Makefile config.status: creating config.h config.status: config.h is unchanged ~/lifespan-master/external_compile_libraries/fltk$ make === making src === === making fluid === Compiling Fl_Function_Type.cxx... In file included from Fl_Function_Type.cxx:22: Fl_Type.h:39:21: error: friend declaration of ‘Fl_Widget* make_type_browser(int, int, int, int, const char*)’ specifies default arguments and isn’t a definition [-fpermissive] 39 | friend Fl_Widget *make_type_browser(int,int,int,int,const char *l=0); | ^~~~~~~~~~~~~~~~~ make[1]: *** [../makeinclude:150: Fl_Function_Type.o] エラー 1 make: *** [Makefile:24: all] エラー 1
試したこと
[-fpermissive]で検索にかけて調べ、コードを書き換えてみたりしたのですが、うまく行きませんでした。
補足情報(FW/ツールのバージョンなど)
ubuntuは20.04を使用しています。他にどのような情報が必要かもわかりませんので、他に必要となる情報があれば教えていただけないでしょうか。
よろしくお願いいたします。