Author Topic: Emulation Station  (Read 38583 times)

xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Emulation Station
« on: January 14, 2015, 03:12:07 am »
Hey everyone,

I've been pitching this idea around one or two other threads, but I feel it needs a thread of its own.

Emulation Station is a program that allows you to scroll through polished menus that include all of your ROMS and ISOS, without having to open an emulator. It also includes things like cover art, release dates, summaries, etc. which you add yourself.


I'm currently working on creating my first game for the Zero, and truth be told I would have no idea where to start with this, but I would really like to see this on the Zero if someone is willing to take a look. I would be willing to help create a version from scratch if this port isn't possible, but I would like to see if it is possible first.
So far, ES has had releases on Windows, Pi, Debian, and Arch.

The source is located here: https://github.com/Aloshi/EmulationStation/tree/unstable#building


(I don't know what it is, but I love organization programs like these. Looking forward to feedback on this.)
« Last Edit: January 19, 2015, 05:45:06 pm by xXFrostXx »
Dingoonity is the place to be!

Nebuleon

  • Guest
Re: Emulation Station
« Reply #1 on: January 14, 2015, 03:36:38 am »
Is this thread about Emulation Station or about your game?

In either case, I say do it.

xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Re: Emulation Station
« Reply #2 on: January 14, 2015, 03:48:44 am »
The topic is regarding Emulation Station.

I'm going to try and look at the source using Eclipse.


The built in metadata scraper for ES may be a problem. (The Zero would need an internet browser for that.) But it is possible to add the information in manually. I would have to remove the scraper feature.

---

Update: Requesting this thread be moved to Development, please.
« Last Edit: January 14, 2015, 04:14:00 am by xXFrostXx »
Dingoonity is the place to be!

com64

  • *
  • Posts: 66
Re: Emulation Station
« Reply #3 on: January 15, 2015, 08:11:06 am »
GCW Zero does have a port of QT, from which you can run a working web browser; you could also compile lynx/links/links2, or use wget if you just need to download a file, I don't know what the implementation is like.

xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Re: Emulation Station
« Reply #4 on: January 16, 2015, 06:42:10 pm »
Update: Com64 and I are teaming up on this project.

He has configured CMake to use OpenGL ES, and will be posting a new thread soon.
Dingoonity is the place to be!

com64

  • *
  • Posts: 66
Re: Emulation Station
« Reply #5 on: January 17, 2015, 02:34:33 am »
I figure it's best to just post here to avoid too many threads.

Code: Just forked on GitHub.
Check my commits once I post them.

Extra packages needed:
Code: [Select]
libssh2
curl
eigen
FreeImage

Two compatibility issues so far:
1) C++11 features (std::string std::to_string(long long), and float std::stof(std::string), I think)
Some features of C++11 don't seem to be implemented in the toolchain; I'll comment their implementations out for now, or implement my own functions.

2) libiconv

com64

  • *
  • Posts: 66
Re: Emulation Station
« Reply #6 on: January 17, 2015, 03:39:53 am »
Bypassing the string functions that aren't working, here's the compile error message:
Code: [Select]
Linking CXX executable ../../emulationstation
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_between::open(char const*, char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x44): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x48): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x58): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x60): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconverter_base::~iconverter_base()':
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD2Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x20): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD2Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x24): undefined reference to `libiconv_close'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconverter_base::~iconverter_base()':
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD0Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x34): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD0Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x38): undefined reference to `libiconv_close'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_between::~iconv_between()':
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_betweenD2Ev[_ZN5boost6locale4conv4impl13iconv_betweenD5Ev]+0x20): undefined reference to `libiconv_close'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o):codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_betweenD2Ev[_ZN5boost6locale4conv4impl13iconv_betweenD5Ev]+0x24): more undefined references to `libiconv_close' follow
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE]+0x5c): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_to_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x34): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x38): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x50): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x3c): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x40): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x5c): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_to_utf<char>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x34): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x38): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x50): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<char>::convert(char const*, char const*)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0xbc): undefined reference to `libiconv'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0xcc): undefined reference to `libiconv'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0x144): undefined reference to `libiconv'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0x154): undefined reference to `libiconv'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<wchar_t>::convert(wchar_t const*, wchar_t const*)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_]+0xc0): undefined reference to `libiconv'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o):codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_]+0xd0): more undefined references to `libiconv' follow
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libfreeimage.a(dec.o): In function `VP8DspInit':
dec.c:(.text+0x4d38): undefined reference to `VP8DspInitMIPS32'
dec.c:(.text+0x4d3c): undefined reference to `VP8DspInitMIPS32'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libfreeimage.a(upsampling.o): In function `WebPInitSamplers':
upsampling.c:(.text+0x9038): undefined reference to `WebPInitSamplersMIPS32'
upsampling.c:(.text+0x903c): undefined reference to `WebPInitSamplersMIPS32'
collect2: error: ld returned 1 exit status
es-app/CMakeFiles/emulationstation.dir/build.make:862: recipe for target '../emulationstation' failed
make[2]: *** [../emulationstation] Error 1
CMakeFiles/Makefile2:246: recipe for target 'es-app/CMakeFiles/emulationstation.dir/all' failed
make[1]: *** [es-app/CMakeFiles/emulationstation.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
make: *** [all] Error 2

xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Re: Emulation Station
« Reply #7 on: January 17, 2015, 03:51:19 am »
Bypassing the string functions that aren't working, here's the compile error message:
Code: [Select]
Linking CXX executable ../../emulationstation
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_between::open(char const*, char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x44): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x48): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x58): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE[_ZN5boost6locale4conv4impl13iconv_between4openEPKcS5_NS1_11method_typeE]+0x60): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconverter_base::~iconverter_base()':
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD2Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x20): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD2Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x24): undefined reference to `libiconv_close'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconverter_base::~iconverter_base()':
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD0Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x34): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl15iconverter_baseD0Ev[_ZN5boost6locale4conv4impl15iconverter_baseD5Ev]+0x38): undefined reference to `libiconv_close'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_between::~iconv_between()':
codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_betweenD2Ev[_ZN5boost6locale4conv4impl13iconv_betweenD5Ev]+0x20): undefined reference to `libiconv_close'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o):codepage.cpp:(.text._ZN5boost6locale4conv4impl13iconv_betweenD2Ev[_ZN5boost6locale4conv4impl13iconv_betweenD5Ev]+0x24): more undefined references to `libiconv_close' follow
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIwE4openEPKcNS1_11method_typeE]+0x5c): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_to_utf<wchar_t>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x34): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x38): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x50): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIwE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<char>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x3c): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x40): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl14iconv_from_utfIcE4openEPKcNS1_11method_typeE]+0x5c): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_to_utf<char>::open(char const*, boost::locale::conv::method_type)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x34): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x38): undefined reference to `libiconv_close'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x50): undefined reference to `libiconv_open'
codepage.cpp:(.text._ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE[_ZN5boost6locale4conv4impl12iconv_to_utfIcE4openEPKcNS1_11method_typeE]+0x54): undefined reference to `libiconv_open'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<char>::convert(char const*, char const*)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0xbc): undefined reference to `libiconv'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0xcc): undefined reference to `libiconv'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0x144): undefined reference to `libiconv'
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIcE7convertEPKcS6_]+0x154): undefined reference to `libiconv'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o): In function `boost::locale::conv::impl::iconv_from_utf<wchar_t>::convert(wchar_t const*, wchar_t const*)':
codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_]+0xc0): undefined reference to `libiconv'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libboost_locale.a(codepage.o):codepage.cpp:(.text._ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_[_ZN5boost6locale4conv4impl14iconv_from_utfIwE7convertEPKwS6_]+0xd0): more undefined references to `libiconv' follow
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libfreeimage.a(dec.o): In function `VP8DspInit':
dec.c:(.text+0x4d38): undefined reference to `VP8DspInitMIPS32'
dec.c:(.text+0x4d3c): undefined reference to `VP8DspInitMIPS32'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libfreeimage.a(upsampling.o): In function `WebPInitSamplers':
upsampling.c:(.text+0x9038): undefined reference to `WebPInitSamplersMIPS32'
upsampling.c:(.text+0x903c): undefined reference to `WebPInitSamplersMIPS32'
collect2: error: ld returned 1 exit status
es-app/CMakeFiles/emulationstation.dir/build.make:862: recipe for target '../emulationstation' failed
make[2]: *** [../emulationstation] Error 1
CMakeFiles/Makefile2:246: recipe for target 'es-app/CMakeFiles/emulationstation.dir/all' failed
make[1]: *** [es-app/CMakeFiles/emulationstation.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
make: *** [all] Error 2

Looks like this is all linked to libiconv.

As for C++11, those can be re-implemented for the toolchain, correct? Originally, I was going to compile to Linux without the toolchain, but since we switched to it, and I have Mint on my old laptop, I can bring up the toolchain here.

For dependencies, Aloshi (the dev) did tell me that we need all of the following:
-Boost
-Eigen3
-cURL
-FreeImage
-FreeType2
-SDL2
-CMake

He told me that CMake and SDL2 are the most important for getting ES to run, which may be why we're getting errors.
« Last Edit: January 17, 2015, 03:53:26 am by xXFrostXx »
Dingoonity is the place to be!

com64

  • *
  • Posts: 66
Re: Emulation Station
« Reply #8 on: January 18, 2015, 03:08:08 am »
Added some linker options, now: (I might have to rebuild libfreeimage)
Code: [Select]
Linking CXX executable ../../emulationstation
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libfreeimage.a(dec.o): In function `VP8DspInit':
dec.c:(.text+0x4d38): undefined reference to `VP8DspInitMIPS32'
dec.c:(.text+0x4d3c): undefined reference to `VP8DspInitMIPS32'
/opt/gcw0-toolchain/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/lib/libfreeimage.a(upsampling.o): In function `WebPInitSamplers':
upsampling.c:(.text+0x9038): undefined reference to `WebPInitSamplersMIPS32'
upsampling.c:(.text+0x903c): undefined reference to `WebPInitSamplersMIPS32'
collect2: error: ld returned 1 exit status
es-app/CMakeFiles/emulationstation.dir/build.make:862: recipe for target '../emulationstation' failed
make[2]: *** [../emulationstation] Error 1
CMakeFiles/Makefile2:246: recipe for target 'es-app/CMakeFiles/emulationstation.dir/all' failed
make[1]: *** [es-app/CMakeFiles/emulationstation.dir/all] Error 2
Makefile:133: recipe for target 'all' failed
make: *** [all] Error 2

xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Re: Emulation Station
« Reply #9 on: January 18, 2015, 07:34:43 pm »
Something that I just realized here.

Once we do get the program compiled correctly, we will need to add entries for every console the GCW-Zero can run. I believe Aloshi told me I need to edit the .cfg file for that.

If someone could provide us with a list of all consoles that can be emulated, that would be great. Even though there's no PSX emulator yet, we'll go ahead and add that as well.
Dingoonity is the place to be!

David Knight


xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Re: Emulation Station
« Reply #11 on: January 18, 2015, 10:05:17 pm »
http://boards.dingoonity.org/gcw-releases/gcw-zero-release-index/  ;)

Well, yes, there's that. I have a lot of emulators on my GCW-Zero. It's just that I found Temper (TurboGrafx 16) the other day, which isn't listed anywhere, and I was wondering if there are any others that aren't shown.
Dingoonity is the place to be!

howie_k

  • *
  • Posts: 145
Re: Emulation Station
« Reply #12 on: January 18, 2015, 10:09:07 pm »
There is also Vice (C64) and Unreal Speccy Portable.

xXFrostXx (OP)

  • * Former Staff
  • Posts: 234
Re: Emulation Station
« Reply #13 on: January 18, 2015, 10:13:31 pm »
There is also Vice (C64) and Unreal Speccy Portable.

Alright. Just making sure so we eventually add entries for all of the consoles.
Thanks!
Dingoonity is the place to be!

com64

  • *
  • Posts: 66
Re: Emulation Station
« Reply #14 on: January 18, 2015, 11:22:41 pm »
Good news: I have it running now! Also added an archive of some required toolchain libraries; just copy those over and you shouldn't need to compile any.

opk here
libs here
git repository here

Complains about system entries, buy I'll let you handle that.