[ Forum ]

[Deprecated] Installing UltraCopier on Ubuntu

For the other topic

[Deprecated] Installing UltraCopier on Ubuntu

Postby ybznek » Thu Sep 05, 2013 8:45 pm

I cannot install the latest UC on Ubuntu, there are missing many libs which cannot be downloaded via apt.

I have successfully installed 0.2.0.16 from ppa, but it is very old version.

Is there any easy way how install new version of UC?
ybznek
 
Posts: 1
Joined: Thu Sep 05, 2013 8:33 pm

Re: Installing UltraCopier on Ubuntu

Postby alpha_one_x86 » Thu Sep 05, 2013 8:50 pm

Already asked. No easy solution.
The unique way is ask to Ubuntu tu support it.
Developer of ImageUltracopier/ImageSupercopier and of the game ImageCatchChallenger
User avatar
alpha_one_x86
Site Admin
 
Posts: 1242
Joined: Sun Oct 26, 2008 9:09 am

Re: Installing UltraCopier on Ubuntu

Postby StMark » Fri Dec 19, 2014 12:54 pm

I have downloaded the tar.xz package. Is it still a problem to install on Ubuntu? I don't know what to do with this package.
StMark
 
Posts: 1
Joined: Thu Dec 18, 2014 5:57 pm

Re: Installing UltraCopier on Ubuntu

Postby alpha_one_x86 » Fri Dec 19, 2014 1:03 pm

No problem if you know how compil it.
Developer of ImageUltracopier/ImageSupercopier and of the game ImageCatchChallenger
User avatar
alpha_one_x86
Site Admin
 
Posts: 1242
Joined: Sun Oct 26, 2008 9:09 am

Re: Installing UltraCopier on Ubuntu

Postby alpha_one_x86 » Thu Nov 19, 2015 8:31 pm

Code: Select all
   ultracopier compile howto for linux.
 
get qt5.4
        sudo add-apt-repository ppa:beineri/opt-qt542-trusty
         
        sudo apt-get install qt54base
         
        get & unpack ultracopier
         
        cd ultracopier
         
        in EventDispatcher.cpp ,
        uncomment line 118 to 155 to get rid of the key entrance. (setting the Variable did not work)
         
        disable dbug mode:
         
        find -name "Variable.h" -exec sed -i "s/#define ULTRACOPIER_DEBUG/\/\/#define ULTRACOPIER_DEBUG/g" {} \;
        find -name "Variable.h" -exec sed -i "s/#define ULTRACOPIER_PLUGIN_DEBUG/\/\/#define ULTRACOPIER_PLUGIN_DEBUG/g" {} \;
        find -name "Variable.h" -exec sed -i "s/#define ULTRACOPIER_PLUGIN_DEBUG_WINDOW/\/\/#define ULTRACOPIER_PLUGIN_DEBUG_WINDOW/g" {} \;
         
         
        get lrelease from ubuntu package search (content),  put into ultracopier folder
         
         
         export LD_LIBRARY_PATH=/opt/qt54/lib/:$LD_LIBRARY_PATH
        ./lrelease  should work now.
         
        ./lrelease resources/Languages/en/translation.ts
        ./lrelease plugins/CopyEngine/Ultracopier/Languages/fr/translation.ts
        ./lrelease plugins/Themes/Oxygen/Languages/fr/translation.ts
        ./lrelease plugins/Languages/fr/translation.ts
         
         
        /opt/qt54/bin/qmake ultracopier-core.pro
        make
         
        cd  plugins/CopyEngine/Ultracopier
        /opt/qt54/bin/qmake CopyEngine.pro
        make
        cd ../../../
         
        cd  plugins/CopyEngine/Rsync
        /opt/qt54/bin/qmake Rsync.pro
        make
        cd ../../../
         
        cd plugins/Themes/Oxygen
        /opt/qt54/bin/qmake interface.pro
        make
        cd ../../../         
         
        cd plugins/Listener/catchcopy-v0002
        /opt/qt54/bin/qmake listener.pro
        make
        cd ../../../         
         
        cd plugins/PluginLoader/catchcopy-v0002
        /opt/qt54/bin/qmake pluginLoader.pro
        make
        cd ../../../
         
        cd plugins/SessionLoader/KDE4/
        /opt/qt54/bin/qmake sessionLoader.pro
        make
        cd ../../../
         
         
         
         
         
make release:         
         
        mkdir release
         
        cd release
        cp ../ultracopier .
         
         
        mkdir fr
         
        cp ../plugins/Languages/fr/flag.png fr
        cp ../plugins/Languages/fr/informations.xml fr
        cp ../plugins/Languages/fr/translation.qm fr
         
         
        mkdir -p CopyEngine/Ultracopier/Languages/fr
         
        cp ../plugins/CopyEngine/Ultracopier/Languages/fr/translation.qm CopyEngine/Ultracopier/Languages/fr
        cp ../plugins/CopyEngine/Ultracopier/libcopyEngine.so CopyEngine/Ultracopier/
        cp ../plugins/CopyEngine/Ultracopier/informations.xml CopyEngine/Ultracopier/
         
        mkdir -p CopyEngine/Rsync
         
        cp ../plugins/CopyEngine/Rsync/libcopyEngine.so CopyEngine/Rsync
        create custom Informations.xml out of  CopyEngine/Ultracopier/informations.xml ; change name to rsync.
         
        mkdir -p Themes/Oxygen/Languages/fr/
         
        cp ../plugins/Themes/Oxygen/Languages/fr/translation.qm Themes/Oxygen/Languages/fr/
        cp ../plugins/Themes/Oxygen/informations.xml Themes/Oxygen/
        cp ../plugins/Themes/Oxygen/libinterface.so Themes/Oxygen/
         
        mkdir -p Listener/catchcopy-v0002/
         
        cp ../plugins/Listener/catchcopy-v0002/informations.xml Listener/catchcopy-v0002/
        cp ../plugins/Listener/catchcopy-v0002/liblistener.so Listener/catchcopy-v0002/
         
        mkdir -p PluginLoader/catchcopy-v0002/
         
        cp ../plugins/PluginLoader/catchcopy-v0002/libpluginLoader.so PluginLoader/catchcopy-v0002/
        cp ../plugins/PluginLoader/catchcopy-v0002/informations.xml PluginLoader/catchcopy-v0002/
         
        mkdir -p SessionLoader/KDE4/
         
        cp ../plugins/SessionLoader/KDE4/libsessionLoader.so SessionLoader/KDE4/
        cp ../plugins/SessionLoader/KDE4/informations.xml SessionLoader/KDE4/
         
         
         
        replace
         
                <architecture>windows--</architecture>
         
        with
                <architecture>linux-x86_64-pc</architecture>
         
         
        in all informations.xml files.
         
         
        start ultracopier in release folder with ./ultracopier
         
        packaging: rename release to ultracopier
        copy ultracopier folder to /opt
        mkdir /lib
         
        from /opt/qt54/lib
        copy libs into it:
        /opt/ultracopier/lib/libQt5Core.so
        /opt/ultracopier/lib/libQt5Core.so.5
        /opt/ultracopier/lib/libQt5Core.so.5.4
        /opt/ultracopier/lib/libQt5DBus.so
        /opt/ultracopier/lib/libQt5DBus.so.5
        /opt/ultracopier/lib/libQt5DBus.so.5.4
        /opt/ultracopier/lib/libQt5Gui.so.5
        /opt/ultracopier/lib/libQt5Gui.so.5.4
        /opt/ultracopier/lib/libQt5Network.so
        /opt/ultracopier/lib/libQt5Network.so.5
        /opt/ultracopier/lib/libQt5Network.so.5.4
        /opt/ultracopier/lib/libQt5OpenGL.so
        /opt/ultracopier/lib/libQt5OpenGL.so.5
        /opt/ultracopier/lib/libQt5OpenGL.so.5.4
        /opt/ultracopier/lib/libQt5Widgets.so
        /opt/ultracopier/lib/libQt5Widgets.so.5
        /opt/ultracopier/lib/libQt5Widgets.so.5.4
        /opt/ultracopier/lib/libQt5Core.so.5.4.2
        /opt/ultracopier/lib/libQt5DBus.so.5.4.2
        /opt/ultracopier/lib/libQt5Gui.so.5.4.2
        /opt/ultracopier/lib/libQt5Network.so.5.4.2
        /opt/ultracopier/lib/libQt5OpenGL.so.5.4.2
        /opt/ultracopier/lib/libQt5Widgets.so.5.4.2
        /opt/ultracopier/lib/libQt5Xml.so.5.4.2
        /opt/ultracopier/lib/libQt5Xml.so.5.4
        /opt/ultracopier/lib/libQt5Xml.so.5
        /opt/ultracopier/lib/libQt5Xml.so
         
         
        and /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/libqxcb.so
        to /opt/ultracopier/lib/plugins/platforms/libqxcb.so
         
        If you start ultracopier with:
         
        #!/bin/bash
         
        export LD_LIBRARY_PATH=/opt/ultracopier/lib::$LD_LIBRARY_PATH
        export QT_PLUGIN_PATH=$QT_PLUGIN_PATH:/opt/ultracopier/lib/plugins
        cd /opt/ultracopier
        ./ultracopier "$@"
         
        you can deinstall qt54base and ultracopier should work as it is now selfcontained, all the libraries that it
        needs to run now ship with it.
        As long as the dependencies of which any version of qt4/5 depend on are installed, it should work
        on many different distros as well. One could go one step further and also add these to lib folder
        to make it even more portable.
         
        now I made a .deb out of it.
       



questions/ unresolved:       
         
        what is the plugins-alternative folder for? are the other themes relevant?
         
        does not work:
         
        ultracopier-static.pro?
         
        g++ -Wl,-O1 -Wl,-rpath,/opt/qt54/lib -o ultracopier ThemesManager.o ResourcesManager.o main.o EventDispatcher.o SystrayIcon.o DebugEngine.o OptionEngine.o HelpDialog.o PluginsManager.o LanguagesManager.o PluginInformation.o SessionLoader.o ExtraSocket.o CopyListener.o CopyEngineManager.o Core.o PluginLoader.o OptionDialog.o LocalPluginOptions.o LocalListener.o CliParser.o FacilityEngine.o LogThread.o OSSpecific.o DebugModel.o InternetUpdater.o qrc_ultracopier-resources.o qrc_ultracopier-resources_unix.o qrc_ultracopier-resources_windows.o qrc_static-plugins.o qrc_copyEngineResources.o qrc_static-plugins-oxygen.o qrc_interfaceResources_windows.o qrc_interfaceResources_unix.o qrc_interfaceResources.o moc_ResourcesManager.o moc_ThemesManager.o moc_SystrayIcon.o moc_EventDispatcher.o moc_DebugEngine.o moc_Core.o moc_OptionEngine.o moc_HelpDialog.o moc_PluginsManager.o moc_LanguagesManager.o moc_PluginInformation.o moc_SessionLoader.o moc_CopyListener.o moc_CopyEngineManager.o moc_PluginInterface_Themes.o moc_PluginInterface_SessionLoader.o moc_PluginInterface_Listener.o moc_PluginInterface_CopyEngine.o moc_OptionInterface.o moc_PluginLoader.o moc_PluginInterface_PluginLoader.o moc_OptionDialog.o moc_LocalPluginOptions.o moc_LocalListener.o moc_CliParser.o moc_FacilityEngine.o moc_LogThread.o moc_OSSpecific.o moc_InternetUpdater.o   -Lplugins -lcopyEngine -linterface -llistener -L/opt/qt54/lib -lQt5Widgets -lQt5Gui -lQt5Network -lQt5Xml -lQt5Core -lGL -lpthread  -L /home/hero/Downloads/ultracopier-src/plugins/CopyEngine/Ultracopier/ -L /home/hero/Downloads/ultracopier-src/plugins/CopyEngine/Rsync/ -L /home/hero/Downloads/ultracopier-src/plugins/Listener/catchcopy-v0002/  -L /home/hero/Downloads/ultracopier-src/plugins/Themes/Oxygen/
        main.o: In function `_GLOBAL__sub_I__ZN16ResourcesManager16resourcesManagerE':
        main.cpp:(.text.startup+0x5): undefined reference to `qt_static_plugin_CopyEngineFactory()'
        main.cpp:(.text.startup+0x15): undefined reference to `qt_static_plugin_ThemesFactory()'
        main.cpp:(.text.startup+0x25): undefined reference to `qt_static_plugin_Listener()'
        collect2: error: ld returned 1 exit status
         
         
         
         
        dbus listener.pro?
         
         
        make
        g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -I/opt/qt54/include -I/opt/qt54/include/QtGui -I/opt/qt54/include/QtNetwork -I/opt/qt54/include/QtDBus -I/opt/qt54/include/QtCore -I. -I/opt/qt54/mkspecs/linux-g++ -o listener.o listener.cpp
        g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -I/opt/qt54/include -I/opt/qt54/include/QtGui -I/opt/qt54/include/QtNetwork -I/opt/qt54/include/QtDBus -I/opt/qt54/include/QtCore -I. -I/opt/qt54/mkspecs/linux-g++ -o Catchcopy.o Catchcopy.cpp
        /opt/qt54/bin/moc -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I/opt/qt54/mkspecs/linux-g++ -I/home/hero/Downloads/Ultracopier-master/plugins/Listener/dbus -I/opt/qt54/include -I/opt/qt54/include/QtGui -I/opt/qt54/include/QtNetwork -I/opt/qt54/include/QtDBus -I/opt/qt54/include/QtCore -I/usr/include/c++/4.8 -I/usr/include/x86_64-linux-gnu/c++/4.8 -I/usr/include/c++/4.8/backward -I/usr/lib/gcc/x86_64-linux-gnu/4.8/include -I/usr/local/include -I/usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed -I/usr/include/x86_64-linux-gnu -I/usr/include listener.h -o moc_listener.cpp
         
         
        g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -I/opt/qt54/include -I/opt/qt54/include/QtGui -I/opt/qt54/include/QtNetwork -I/opt/qt54/include/QtDBus -I/opt/qt54/include/QtCore -I. -I/opt/qt54/mkspecs/linux-g++ -o moc_listener.o moc_listener.cpp
        In file included from /opt/qt54/include/QtCore/QtCore:86:0,
                         from /opt/qt54/include/QtDBus/QtDBusDepends:3,
                         from /opt/qt54/include/QtDBus/QtDBus:3,
                         from listener.h:10,
                         from moc_listener.cpp:9:
        moc_listener.cpp: In function ‘QObject* qt_plugin_instance()’:
        moc_listener.cpp:202:22: error: cannot allocate an object of abstract type ‘Listener’
         QT_MOC_EXPORT_PLUGIN(Listener, Listener)
                              ^
        /opt/qt54/include/QtCore/qplugin.h:106:33: note: in definition of macro ‘Q_PLUGIN_INSTANCE’
                         _instance = new IMPLEMENTATION; \
                                         ^
        moc_listener.cpp:202:1: note: in expansion of macro ‘QT_MOC_EXPORT_PLUGIN’
         QT_MOC_EXPORT_PLUGIN(Listener, Listener)
         ^
        In file included from moc_listener.cpp:9:0:
        listener.h:18:7: note:   because the following virtual functions are pure within ‘Listener’:
         class Listener : public PluginInterface_Listener
               ^
        In file included from listener.h:15:0,
                         from moc_listener.cpp:9:
        ../../../interface/PluginInterface_Listener.h:34:29: note:      virtual QStringList PluginInterface_Listener::clientsList() const
                 virtual QStringList clientsList() const = 0;
                                     ^
        make: *** [moc_listener.o] Error 1
Developer of ImageUltracopier/ImageSupercopier and of the game ImageCatchChallenger
User avatar
alpha_one_x86
Site Admin
 
Posts: 1242
Joined: Sun Oct 26, 2008 9:09 am


Return to Other