desura / desura-app

Free online games platform, with an open source client. In these scenarios, Desura's free online games are the perfect solution. These games don't require a high-powered computer or lengthy installation processes.
https://www.desura.com/
Other
121 stars 31 forks source link

Ubuntu 14.04 - UtilFs.cpp compilation error #1009

Open makson96 opened 9 years ago

makson96 commented 9 years ago

Hi all, I am evaluating bringing back desura-app (last time it was Desurium) to Ubuntu repository: https://launchpad.net/~makson96/+archive/ubuntu/desurium

I have encountered an error during compilation (without CEF).

cmake -DCMAKE_INSTALL_PREFIX=../install -DBUILD_CEF=OFF -DWITH_GTEST=OFF

-- The C compiler identification is GNU 4.8.2
-- The CXX compiler identification is GNU 4.8.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- using GCC
-- detected 64bit
-- Working multilib, enable 32bit support
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.26") 
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   filesystem
--   system
-- Found CURL: /usr/lib/x86_64-linux-gnu/libcurl.so (found suitable version "7.35.0", minimum required is "7.19.1") 
-- checking for module 'freetype2'
--   found freetype2, version 17.1.11
-- Found Freetype: /usr/lib/x86_64-linux-gnu/libfreetype.so (found version "17.1.11") 
-- Found GTK2_GTK: /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so  
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- checking for module 'gthread-2.0'
--   found gthread-2.0, version 2.40.2
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- 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  
-- checking for one of the modules 'glib-2.0'
-- Found GLib2: glib-2.0 /usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include
-- Looking for include file glib/gregex.h
-- Looking for include file glib/gregex.h - not found
-- Performing Test LIBNOTIFY_VERSION_04
-- Performing Test LIBNOTIFY_VERSION_04 - Failed
-- Performing Test LIBNOTIFY_VERSION_07
-- Performing Test LIBNOTIFY_VERSION_07 - Success
-- Found libnotify: '/usr/lib/x86_64-linux-gnu/libnotify.so' and header in '/usr/include/libnotify' version => 0.7
-- Found TINYXML: /usr/lib/x86_64-linux-gnu/libtinyxml2.so  
-- Performing Test TINYXML_API_TEST
-- Performing Test TINYXML_API_TEST - Failed
-- System TinyXml2 found but is too old, using local tinyxml2
-- Found BZip2: /usr/lib/x86_64-linux-gnu/libbz2.so (found version "1.0.6") 
-- Looking for BZ2_bzCompressInit in /usr/lib/x86_64-linux-gnu/libbz2.so
-- Looking for BZ2_bzCompressInit in /usr/lib/x86_64-linux-gnu/libbz2.so - found
-- Found Sqlite3 header file in /usr/include
-- Found Sqlite3 libraries: /usr/lib/x86_64-linux-gnu/libsqlite3.so
-- Found wxWidgets: TRUE (Required is at least version "3.0") 
-- Found PythonInterp: /usr/bin/python (found version "2.7.6") 
-- Found Patch: /usr/bin/patch  
-- Configuring done
-- Generating done
-- Build files have been written to: /home/makson/Publiczny/desura-app/build_dir

make

[ 21%] Building CXX object src/static/util_fs/CMakeFiles/util_fs.dir/code/UtilFs.cpp.o
In file included from /home/makson/Publiczny/desura-app/src/static/util_fs/code/UtilFs.cpp:26:0:
/home/makson/Publiczny/desura-app/src/common/Common.h:447:0: warning: ignoring #pragma warning  [-Wunknown-pragmas]
  #pragma warning( disable: 4251 )
 ^
/home/makson/Publiczny/desura-app/src/static/util_fs/code/UtilFs.cpp:33:19: fatal error: codecvt: No such file or directory
 #include 
                   ^
compilation terminated.
make[2]: *** [src/static/util_fs/CMakeFiles/util_fs.dir/code/UtilFs.cpp.o] Error 1
make[1]: *** [src/static/util_fs/CMakeFiles/util_fs.dir/all] Error 2
make: *** [all] Error 2

any idea what went wrong?

yurikoles commented 9 years ago

As you can see codecvt is in libc++-dev, but this header has different path. Here is a patch. I will try to create pull request.

diff --git a/install_deps.sh b/install_deps.sh
index e3a020d..8e8d206 100755
--- a/install_deps.sh
+++ b/install_deps.sh
@@ -8,7 +8,7 @@ fi

 if [ -f /etc/debian_version ]; then # Debian/Ubuntu
        echo "\033[1;31mDebian/Ubuntu detected!\033[0m"
-       DEPS="autoconf automake binutils bison build-essential cmake flex gcc gperf libasound2-dev libboost-dev libboost-filesystem-dev libboost-system-dev li
+       DEPS="autoconf automake binutils bison build-essential cmake flex gcc gperf libasound2-dev libboost-dev libboost-filesystem-dev libboost-system-dev li
        if [ `uname -m` = 'x86_64' ]; then # 64 bit dependencies for 32BIT_SUPPORT
                DEPS=${DEPS}" gcc-multilib libc6-dev-i386"
        fi