devmiyax / yabause

Yabause is a Sega Saturn emulator and took over as Yaba Sanshiro
http://www.uoyabause.org
GNU General Public License v2.0
210 stars 35 forks source link

Break build on linux when linker yabasanshiro . #766

Closed mrcmunir closed 4 years ago

mrcmunir commented 4 years ago
100%] Building C object src/retro_arena/CMakeFiles/yabause-retro-arena.dir/__/about.c.o
[100%] Linking CXX executable yabasanshiro
../libyabause.a(PlayRecorder.cpp.o): In function `PlayRecorder::startRocord()':
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:123: undefined reference to `YabauseThread_getBackupPath'
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:132: undefined reference to `YabauseThread_IsUseBios'
../libyabause.a(PlayRecorder.cpp.o): In function `PlayRecorder::startPlay(char const*, bool, yabauseinit_struct*)':
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:187: undefined reference to `YabauseThread_resetPlaymode'
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:212: undefined reference to `YabauseThread_setUseBios'
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:237: undefined reference to `YabauseThread_setBackupPath'
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:215: undefined reference to `YabauseThread_setUseBios'
/home/aresuser/ARES-Setup/tmp/build/yabause/yabause/src/PlayRecorder.cpp:240: undefined reference to `YabauseThread_coldBoot'
collect2: error: ld returned 1 exit status
src/retro_arena/CMakeFiles/yabause-retro-arena.dir/build.make:268: recipe for target 'src/retro_arena/yabasanshiro' failed
make[2]: *** [src/retro_arena/yabasanshiro] Error 1

Any ideas?

mrcmunir commented 4 years ago

Needed Update retroarena/Main .cpp in master https://github.com/devmiyax/yabause/commit/ffb5c4d7869739759d96fa9db83c3422afc22c66#diff-6e0fb70201495b9cc4f4ff94f2ee3034

Apply this linker works.

Also Use #include experimental/filesystem and std::experimental::filesystem when < GCC8 it's suggestion for GCC6/GCC7 due by default in some system is GCC7 and only exist filesystem in "experimental" .

devmiyax commented 4 years ago

check if it is fixed by https://github.com/devmiyax/yabause/pull/776

mrcmunir commented 4 years ago

Fixed linker now :)