3dfsb-dev / 3dfsb

3D File System Browser - improved, cleaned up and maintained fork of the old tdfsb
GNU General Public License v2.0
97 stars 10 forks source link

Unable to compile with GCC 11.1.0 #17

Open parkerlreed opened 2 years ago

parkerlreed commented 2 years ago
(deck@steamdeck 3dfsb)$ pacman -Q gcc gstreamer
gcc 11.1.0-3
gstreamer 1.18.5-1
(deck@steamdeck 3dfsb)$ ./compile.sh 
Usage: ./compile.sh [i386]
Add the i386 option to compile for 32-bit (i386) architectures on a 64-bit machine
Using sdl-config.
Converting built-in images to XPM format with imagemagick's 'mogrify' tool...
Converting other built-in files to .h file format with the xxd tool...
GNU/Linux detected.
Compiling...3dfsb.c: In function ‘display’:
3dfsb.c:2137:33: error: ‘strncpy’ output truncated before terminating nul copying 21 bytes from a string of the same length [-Werror=stringop-truncation]
 2137 |                                 strncpy(open_string, OPEN_STRING, OPEN_STRING_LENGTH);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
input.c: In function ‘keyboard’:
input.c:582:77: error: cast between incompatible function types from ‘Uint32 (*)(void)’ {aka ‘unsigned int (*)(void)’} to ‘Uint32 (*)(Uint32,  void *)’ {aka ‘unsigned int (*)(unsigned int,  void *)’} [-Werror=cast-function-type]
  582 |                                 TDFSB_TIMER_ID = SDL_AddTimer(TDFSB_FPS_DT, (SDL_NewTimerCallback) fps_timer, 0);
      |                                                                             ^
cc1: all warnings being treated as errors
media.c: In function ‘get_image_from_file’:
media.c:292:17: error: this statement may fall through [-Werror=implicit-fallthrough=]
  292 |                 g_print("Failed to pause the file\n");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
media.c:294:9: note: here
  294 |         case GST_STATE_CHANGE_NO_PREROLL:
      |         ^~~~
cc1: all warnings being treated as errors
parkerlreed commented 2 years ago

I tried the removing Werror from #15 and I get about 200 multiple definitions when it's trying to link the final binary.

parkerlreed commented 2 years ago
Usage: ./compile.sh [i386]
Add the i386 option to compile for 32-bit (i386) architectures on a 64-bit machine
Using sdl-config.
Converting built-in images to XPM format with imagemagick's 'mogrify' tool...
Converting other built-in files to .h file format with the xxd tool...
GNU/Linux detected.
Compiling...3dfsb.c: In function ‘display’:
3dfsb.c:2137:33: warning: ‘strncpy’ output truncated before terminating nul copying 21 bytes from a string of the same length [-Wstringop-truncation]
 2137 |                                 strncpy(open_string, OPEN_STRING, OPEN_STRING_LENGTH);
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
input.c: In function ‘keyboard’:
input.c:582:77: warning: cast between incompatible function types from ‘Uint32 (*)(void)’ {aka ‘unsigned int (*)(void)’} to ‘Uint32 (*)(Uint32,  void *)’ {aka ‘unsigned int (*)(unsigned int,  void *)’} [-Wcast-function-type]
  582 |                                 TDFSB_TIMER_ID = SDL_AddTimer(TDFSB_FPS_DT, (SDL_NewTimerCallback) fps_timer, 0);
      |                                                                             ^
media.c: In function ‘get_image_from_file’:
media.c:292:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  292 |                 g_print("Failed to pause the file\n");
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
media.c:294:9: note: here
  294 |         case GST_STATE_CHANGE_NO_PREROLL:
      |         ^~~~
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:8: multiple definition of `TDFSB_KC_FLY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:8: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:8: multiple definition of `TDFSB_KC_HELP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:8: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:8: multiple definition of `TDFSB_KC_HOME'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:8: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:9: multiple definition of `TDFSB_KC_FS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:9: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:9: multiple definition of `TDFSB_KC_DOT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:9: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:9: multiple definition of `TDFSB_KC_RELEASE_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:9: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:10: multiple definition of `TDFSB_KC_RL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:10: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:10: multiple definition of `TDFSB_KC_CDU'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:10: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:10: multiple definition of `TDFSB_KC_IMBR'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:10: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:11: multiple definition of `TDFSB_KC_INFO'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:11: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:11: multiple definition of `TDFSB_KC_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:11: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:11: multiple definition of `TDFSB_KC_CRH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:11: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:12: multiple definition of `TDFSB_KC_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:12: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:12: multiple definition of `TDFSB_KC_GCR'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:12: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:12: multiple definition of `TDFSB_KC_SHD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:12: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:13: multiple definition of `TDFSB_KC_NAME'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:13: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:13: multiple definition of `TDFSB_KC_SORT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:13: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:13: multiple definition of `TDFSB_KC_CLASS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:13: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:14: multiple definition of `TDFSB_KC_UP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:14: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:14: multiple definition of `TDFSB_KC_DOWN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:14: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:14: multiple definition of `TDFSB_KC_LEFT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:14: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:15: multiple definition of `TDFSB_KC_RIGHT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:15: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:15: multiple definition of `TDFSB_KC_SAVE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:15: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:15: multiple definition of `TDFSB_KC_FTH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:15: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:16: multiple definition of `TDFSB_KC_FORWARD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:16: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:16: multiple definition of `TDFSB_KC_BACKWARD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:16: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:18: multiple definition of `TDFSB_CURRENTPATH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:18: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:19: multiple definition of `TDFSB_CUSTOM_EXECUTE_STRING'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:19: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:21: multiple definition of `SWX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:21: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:21: multiple definition of `SWY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:21: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:22: multiple definition of `PWX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:22: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:22: multiple definition of `PWY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:22: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:23: multiple definition of `PWD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:23: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:25: multiple definition of `TDFSB_BALL_DETAIL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:25: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:26: multiple definition of `TDFSB_WAS_NOREAD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:26: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:27: multiple definition of `TDFSB_MAX_TEX_SIZE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:27: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:28: multiple definition of `mousesense'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:28: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:29: multiple definition of `mousespeed'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:29: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:30: multiple definition of `headspeed'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:30: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:32: multiple definition of `TDFSB_GG_R'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:32: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:32: multiple definition of `TDFSB_GG_G'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:32: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:32: multiple definition of `TDFSB_GG_B'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:32: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:33: multiple definition of `TDFSB_BG_R'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:33: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:33: multiple definition of `TDFSB_BG_G'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:33: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:33: multiple definition of `TDFSB_BG_B'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:33: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:34: multiple definition of `TDFSB_FN_R'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:34: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:34: multiple definition of `TDFSB_FN_G'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:34: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:34: multiple definition of `TDFSB_FN_B'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:34: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:36: multiple definition of `TDFSB_ICUBE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:36: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:37: multiple definition of `TDFSB_SHOW_DOTFILES'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:37: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:38: multiple definition of `TDFSB_DIR_ALPHASORT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:38: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:39: multiple definition of `TDFSB_FULLSCREEN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:39: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:41: multiple definition of `TDFSB_CONFIG_FULLSCREEN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:41: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:42: multiple definition of `TDFSB_SHOW_CROSSHAIR'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:42: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:43: multiple definition of `TDFSB_GROUND_CROSS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:43: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:44: multiple definition of `TDFSB_CLASSIC_NAV'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:44: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:45: multiple definition of `TDFSB_MODE_FLY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:45: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:47: multiple definition of `TDFSB_FPS_CONFIG'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:47: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:48: multiple definition of `TDFSB_MW_STEPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:48: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:49: multiple definition of `TDFSB_CSE_FLAG'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:49: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:50: multiple definition of `TDFSB_US_RUN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:50: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:51: multiple definition of `TDFSB_FPS_CACHE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:51: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:52: multiple definition of `TDFSB_FPS_REAL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:52: first defined here
/usr/bin/ld: /tmp/cczIzqpI.o:/home/deck/build/3dfsb/config.h:53: multiple definition of `TDFSB_ALERT_KC'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:53: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:84: multiple definition of `TDFSB_FUNC_IDLE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:84: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:84: multiple definition of `TDFSB_FUNC_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:84: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:85: multiple definition of `TDFSB_FUNC_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:85: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:85: multiple definition of `TDFSB_FUNC_MOTION'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:85: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:86: multiple definition of `TDFSB_FUNC_KEY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:86: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:87: multiple definition of `TDFSB_FUNC_UPKEY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:87: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:92: multiple definition of `TDFSB_ANIM_STATE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:92: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:93: multiple definition of `centX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:93: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:93: multiple definition of `centY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:93: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `uposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smoox'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smooy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smooz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smoou'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:97: multiple definition of `lastposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:97: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:97: multiple definition of `lastposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:97: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `forwardkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `leftkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `rightkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `backwardkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `upkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `downkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DZ'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_SHADE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_FILENAMES'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_SHOW_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_XL_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_HAVE_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_ANIM_COUNT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_OBJECT_SEARCH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SPEED_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SHOW_HELP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SHOW_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_FLY_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_CLASSIC_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_THROTTLE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_BALL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_FPS_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_FPS_DT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_CONFIG_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:106: multiple definition of `TDFSB_OBJECT_SELECTED'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:106: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:107: multiple definition of `INPUT_OBJECT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:107: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:108: multiple definition of `TDFSB_OA'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:108: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:114: multiple definition of `help_str'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:114: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:116: multiple definition of `TDFSB_KEY_FINDER'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:116: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `cfpsbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `throttlebuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `flybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `classicbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `ballbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `fpsbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:8: multiple definition of `TDFSB_KC_FLY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:8: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:8: multiple definition of `TDFSB_KC_HELP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:8: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:8: multiple definition of `TDFSB_KC_HOME'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:8: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:9: multiple definition of `TDFSB_KC_FS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:9: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:9: multiple definition of `TDFSB_KC_DOT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:9: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:9: multiple definition of `TDFSB_KC_RELEASE_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:9: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:10: multiple definition of `TDFSB_KC_RL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:10: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:10: multiple definition of `TDFSB_KC_CDU'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:10: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:10: multiple definition of `TDFSB_KC_IMBR'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:10: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:11: multiple definition of `TDFSB_KC_INFO'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:11: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:11: multiple definition of `TDFSB_KC_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:11: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:11: multiple definition of `TDFSB_KC_CRH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:11: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:12: multiple definition of `TDFSB_KC_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:12: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:12: multiple definition of `TDFSB_KC_GCR'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:12: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:12: multiple definition of `TDFSB_KC_SHD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:12: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:13: multiple definition of `TDFSB_KC_NAME'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:13: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:13: multiple definition of `TDFSB_KC_SORT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:13: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:13: multiple definition of `TDFSB_KC_CLASS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:13: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:14: multiple definition of `TDFSB_KC_UP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:14: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:14: multiple definition of `TDFSB_KC_DOWN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:14: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:14: multiple definition of `TDFSB_KC_LEFT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:14: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:15: multiple definition of `TDFSB_KC_RIGHT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:15: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:15: multiple definition of `TDFSB_KC_SAVE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:15: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:15: multiple definition of `TDFSB_KC_FTH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:15: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:16: multiple definition of `TDFSB_KC_FORWARD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:16: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:16: multiple definition of `TDFSB_KC_BACKWARD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:16: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:18: multiple definition of `TDFSB_CURRENTPATH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:18: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:19: multiple definition of `TDFSB_CUSTOM_EXECUTE_STRING'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:19: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:21: multiple definition of `SWX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:21: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:21: multiple definition of `SWY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:21: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:22: multiple definition of `PWX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:22: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:22: multiple definition of `PWY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:22: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:23: multiple definition of `PWD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:23: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:25: multiple definition of `TDFSB_BALL_DETAIL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:25: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:26: multiple definition of `TDFSB_WAS_NOREAD'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:26: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:27: multiple definition of `TDFSB_MAX_TEX_SIZE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:27: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:28: multiple definition of `mousesense'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:28: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:29: multiple definition of `mousespeed'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:29: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:30: multiple definition of `headspeed'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:30: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:32: multiple definition of `TDFSB_GG_R'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:32: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:32: multiple definition of `TDFSB_GG_G'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:32: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:32: multiple definition of `TDFSB_GG_B'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:32: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:33: multiple definition of `TDFSB_BG_R'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:33: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:33: multiple definition of `TDFSB_BG_G'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:33: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:33: multiple definition of `TDFSB_BG_B'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:33: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:34: multiple definition of `TDFSB_FN_R'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:34: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:34: multiple definition of `TDFSB_FN_G'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:34: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:34: multiple definition of `TDFSB_FN_B'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:34: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:36: multiple definition of `TDFSB_ICUBE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:36: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:37: multiple definition of `TDFSB_SHOW_DOTFILES'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:37: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:38: multiple definition of `TDFSB_DIR_ALPHASORT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:38: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:39: multiple definition of `TDFSB_FULLSCREEN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:39: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:41: multiple definition of `TDFSB_CONFIG_FULLSCREEN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:41: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:42: multiple definition of `TDFSB_SHOW_CROSSHAIR'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:42: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:43: multiple definition of `TDFSB_GROUND_CROSS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:43: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:44: multiple definition of `TDFSB_CLASSIC_NAV'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:44: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:45: multiple definition of `TDFSB_MODE_FLY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:45: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:47: multiple definition of `TDFSB_FPS_CONFIG'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:47: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:48: multiple definition of `TDFSB_MW_STEPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:48: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:49: multiple definition of `TDFSB_CSE_FLAG'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:49: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:50: multiple definition of `TDFSB_US_RUN'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:50: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:51: multiple definition of `TDFSB_FPS_CACHE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:51: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:52: multiple definition of `TDFSB_FPS_REAL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:52: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/config.h:53: multiple definition of `TDFSB_ALERT_KC'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/config.h:53: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/media.h:6: multiple definition of `TDFSB_MEDIA_FILE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/media.h:6: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/tools.h:14: multiple definition of `CURRENT_TOOL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/tools.h:14: first defined here
/usr/bin/ld: /tmp/cchDg4Ll.o:/home/deck/build/3dfsb/tools.h:16: multiple definition of `tool'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/tools.h:16: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:84: multiple definition of `TDFSB_FUNC_IDLE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:84: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:84: multiple definition of `TDFSB_FUNC_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:84: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:85: multiple definition of `TDFSB_FUNC_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:85: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:85: multiple definition of `TDFSB_FUNC_MOTION'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:85: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:86: multiple definition of `TDFSB_FUNC_KEY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:86: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:87: multiple definition of `TDFSB_FUNC_UPKEY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:87: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:92: multiple definition of `TDFSB_ANIM_STATE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:92: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:93: multiple definition of `centX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:93: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:93: multiple definition of `centY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:93: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `uposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smoox'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smooy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smooz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smoou'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:97: multiple definition of `lastposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:97: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:97: multiple definition of `lastposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:97: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `forwardkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `leftkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `rightkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `backwardkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `upkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `downkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DZ'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_SHADE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_FILENAMES'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_SHOW_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_XL_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_HAVE_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_ANIM_COUNT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_OBJECT_SEARCH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SPEED_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SHOW_HELP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SHOW_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_FLY_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_CLASSIC_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_THROTTLE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_BALL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_FPS_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_FPS_DT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_CONFIG_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:106: multiple definition of `TDFSB_OBJECT_SELECTED'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:106: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:107: multiple definition of `INPUT_OBJECT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:107: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:108: multiple definition of `TDFSB_OA'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:108: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:114: multiple definition of `help_str'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:114: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:116: multiple definition of `TDFSB_KEY_FINDER'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:116: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `cfpsbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `throttlebuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `flybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `classicbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `ballbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `fpsbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/media.h:6: multiple definition of `TDFSB_MEDIA_FILE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/media.h:6: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/tools.h:14: multiple definition of `CURRENT_TOOL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/tools.h:14: first defined here
/usr/bin/ld: /tmp/ccwQubj7.o:/home/deck/build/3dfsb/tools.h:16: multiple definition of `tool'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/tools.h:16: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:84: multiple definition of `TDFSB_FUNC_IDLE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:84: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:84: multiple definition of `TDFSB_FUNC_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:84: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:85: multiple definition of `TDFSB_FUNC_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:85: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:85: multiple definition of `TDFSB_FUNC_MOTION'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:85: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:86: multiple definition of `TDFSB_FUNC_KEY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:86: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:87: multiple definition of `TDFSB_FUNC_UPKEY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:87: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:92: multiple definition of `TDFSB_ANIM_STATE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:92: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:93: multiple definition of `centX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:93: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:93: multiple definition of `centY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:93: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:94: multiple definition of `tposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:94: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `vposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:95: multiple definition of `uposy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:95: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smoox'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smooy'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smooz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:96: multiple definition of `smoou'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:96: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:97: multiple definition of `lastposz'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:97: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:97: multiple definition of `lastposx'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:97: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `forwardkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `leftkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `rightkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `backwardkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `upkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:98: multiple definition of `downkeybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:98: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DX'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:100: multiple definition of `TDFSB_OA_DZ'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:100: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_SHADE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_FILENAMES'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_SHOW_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_XL_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_HAVE_MOUSE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_ANIM_COUNT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:102: multiple definition of `TDFSB_OBJECT_SEARCH'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:102: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SPEED_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SHOW_HELP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_SHOW_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_FLY_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:103: multiple definition of `TDFSB_CLASSIC_DISPLAY'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:103: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_THROTTLE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_BALL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_FPS_DISP'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_FPS_DT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:104: multiple definition of `TDFSB_SHOW_CONFIG_FPS'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:104: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:106: multiple definition of `TDFSB_OBJECT_SELECTED'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:106: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:107: multiple definition of `INPUT_OBJECT'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:107: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:108: multiple definition of `TDFSB_OA'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:108: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:114: multiple definition of `help_str'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:114: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:116: multiple definition of `TDFSB_KEY_FINDER'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:116: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `cfpsbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `throttlebuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `flybuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `classicbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `ballbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/3dfsb.h:118: multiple definition of `fpsbuf'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/3dfsb.h:118: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/media.h:6: multiple definition of `TDFSB_MEDIA_FILE'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/media.h:6: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/tools.h:14: multiple definition of `CURRENT_TOOL'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/tools.h:14: first defined here
/usr/bin/ld: /tmp/ccgs6a3I.o:/home/deck/build/3dfsb/tools.h:16: multiple definition of `tool'; /tmp/ccEv5ofD.o:/home/deck/build/3dfsb/tools.h:16: first defined here
collect2: error: ld returned 1 exit status
done.
Now run the 3D File System Browser with ./3dfsb
tomvanbraeckel commented 2 years ago

Thanks for opening an issue!

Looks like those modern GCC's do more checks and emit warnings which were not present in older versions.

Removing the Werror is a good workaround, also more future proof, as more checks might be added again later.

The proper fix would be to actually fix those warnings, of course. Feel free to look into them - I will merge any pull request that fixes at least one warning!

Regarding the "multiple definition" errors, could it be that you have leftover .o files in /tmp or something?

Alternatively, you could try compiling with Cmake, see https://github.com/3dfsb-dev/3dfsb#compilation

parkerlreed commented 2 years ago

I didn't even think about that. I started with a fresh clone of the repo but didn't notice the /tmp files. I will take a look at that. Thanks.

parkerlreed commented 2 years ago

Nothing in /tmp and it instantly throws the multiple definitions every time.

CMake I had tried but ran into a handful of other errors :/

I'll see what I can ascertain.

parkerlreed commented 2 years ago

CMake the issue is it doesn't see the gstreamer-1.0 installation correctly. Either it's not pulling it in the gstreamer-1.0 parent directory as an include, or something else is going wrong.

(deck@steamdeck build)$ cmake ..
CMake Deprecation Warning at CMakeLists.txt:6 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- The C compiler identification is GNU 11.1.0
-- 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
-- Looking for pthread.h
-- Looking for pthread.h - found
-- 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 SDL: /usr/lib/libSDLmain.a;/usr/lib/libSDL.so;-lpthread (found version "1.2.16") 
-- Found SDL_image: /usr/lib/libSDL_image.so (found version "1.2.12") 
CMake Warning (dev) at /usr/share/cmake/Modules/FindOpenGL.cmake:315 (message):
  Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
  available.  Run "cmake --help-policy CMP0072" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  FindOpenGL found both a legacy GL library:

    OPENGL_gl_LIBRARY: /usr/lib/libGL.so

  and GLVND libraries for OpenGL and GLX:

    OPENGL_opengl_LIBRARY: /usr/lib/libOpenGL.so
    OPENGL_glx_LIBRARY: /usr/lib/libGLX.so

  OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
  compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
  CMakeLists.txt:48 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found OpenGL: /usr/lib/libOpenGL.so   
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.0") 
-- Checking for module 'glut'
--   Found glut, version 3.2.1
-- Found GLUT: TRUE  
-- Checking for module 'gstreamer-1.0 >= '
--   
-- Checking for module 'gstreamer-base-1.0 >= '
--   
-- Checking for module 'gstreamer-app-1.0 >= '
--   
-- Checking for module 'gstreamer-audio-1.0 >= '
--   
-- Checking for module 'gstreamer-fft-1.0 >= '
--   
-- Checking for module 'gstreamer-mpegts-1.0>=1.4.0'
--   Package 'gstreamer-mpegts-1.0', required by 'virtual:world', not found
-- Checking for module 'gstreamer-pbutils-1.0 >= '
--   
-- Checking for module 'gstreamer-tag-1.0 >= '
--   
-- Checking for module 'gstreamer-video-1.0 >= '
--   
-- Found GStreamer: GSTREAMER_INCLUDE_DIRS;GSTREAMER_LIBRARIES;GSTREAMER_VERSION;GSTREAMER_BASE_INCLUDE_DIRS;GSTREAMER_BASE_LIBRARIES  
-- libmagic version: 5.41
-- Found LibMagic: /usr/lib/libmagic.so  
-- Found ImageMagick: /usr/bin/mogrify (found version "7.1.0-20") 
-- Found LibM: /usr/lib/libm.so
-- Found GLIB: /usr/include/glib-2.0;/usr/lib/glib-2.0/include (found version "2.70.3") 
-- Found X11: /usr/include   
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/lib/libXext.so
-- Looking for XOpenDisplay in /usr/lib/libX11.so;/usr/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
CMake Warning (dev) at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (XDO) does
  not match the name of the calling package (Xdo).  This can lead to problems
  in calling code that expects `find_package` result variables (e.g.,
  `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/Modules/FindXdo.cmake:30 (find_package_handle_standard_args)
  CMakeLists.txt:56 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found XDO: /usr/lib/libxdo.so  
-- Configuring done
CMake Warning (dev) at CMakeLists.txt:71 (add_dependencies):
  Policy CMP0046 is not set: Error on non-existent dependency in
  add_dependencies.  Run "cmake --help-policy CMP0046" for policy details.
  Use the cmake_policy command to set the policy and suppress this warning.

  The dependency target "images" of target "3dfsb" does not exist.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Generating done
-- Build files have been written to: /home/deck/build/3dfsb/build
(deck@steamdeck build)$ make 
[  8%] Building C object CMakeFiles/input.dir/input.c.o
[ 16%] Linking C static library libinput.a
[ 16%] Built target input
[ 25%] Building C object CMakeFiles/str_replace.dir/str_replace.c.o
[ 33%] Linking C static library libstr_replace.a
[ 33%] Built target str_replace
[ 41%] Building C object CMakeFiles/media.dir/media.c.o
/home/deck/build/3dfsb/media.c:6:10: fatal error: gst/gst.h: No such file or directory
    6 | #include <gst/gst.h>
      |          ^~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/media.dir/build.make:76: CMakeFiles/media.dir/media.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:145: CMakeFiles/media.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
(2)(deck@steamdeck build)$ pacman -Ql gst
gst-libav              gst-plugins-base       gst-plugins-base-libs  gstreamer              
(2)(deck@steamdeck build)$ pacman -Ql gst
gst-libav              gst-plugins-base       gst-plugins-base-libs  gstreamer              
(2)(deck@steamdeck build)$ pacman -Ql gstreamer | grep include/gst
gstreamer /usr/include/gstreamer-1.0/
gstreamer /usr/include/gstreamer-1.0/gst/
gstreamer /usr/include/gstreamer-1.0/gst/base/
parkerlreed commented 2 years ago

(Corrected the missing mpegts with the same error)