Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat
How to compile gideros from sources? - Gideros Forum

How to compile gideros from sources?

papirosnikpapirosnik Member
edited August 2016 in General questions
Hi guys.
It would be nice for us to have a nowadays' guide for compiling Gideros Studio and platform-specific libs.
At least on Windows.
I tried to do this a year or two ago. And even got GiderosStidio.exe, but it didn't work (crash on start).
Is there any step-by-step tutorial or something similiar for the current github release (2016.8)?
I saw this thread (http://giderosmobile.com/forum/discussion/5776/edit-the-sources-of-gideros-studio/p1) but it looks a bit outdated.
Which version of Qt is currently used?
What's about 64bit?
Should we edit some hardcoded pathes or all is automated via MakeFile?
Shed light on these questions, please.

Comments

  • john26john26 Maintainer
    edited August 2016
    These days we build Gideros on a Mac which uses Wine to also build the Windows version. However, the WinRT version needs to be build on a Windows 10 computer so we do that separately and copy files across. The script on Mac then builds Windows and Mac desktop versions, iOS and Android versions and packages everything into gideros.exe and gideros.dmg.

    However, if you just want to build the Windows version, WinRT and Android (not iOS and OSX), follow these instructions (you will need a Windows 10 computer):

    Clone the gideros source

    git clone https://github.com/gideros/gideros.git

    Install the latest Visual Studio (2015) with WinRT components. (I actually am still using Visual Studio 2013 for Windows but latest should be fine)

    Install Qt 5.6 (select the gcc version). Install it at c:\Qt

    Download Qscintilla: http://sourceforge.net/projects/pyqt/files/QScintilla2/QScintilla-2.8.4/QScintilla-gpl-2.8.4.zip

    Open the Qt command prompt and run
    cd Qt4Qt5
    qmake qscintilla.pro
    mingw32-make
    mingw32-make install
    Install the following Java/Android stuff

    Java JDK (both version 6 and 7 are working fine)
    Apache Ant - http://ant.apache.org/bindownload.cgi
    Android SDK version 21 (get the SDK for an existing IDE) - http://developer.android.com/sdk/index.html
    Android NDK - https://developer.android.com/tools/sdk/ndk/index.html

    Install mingw from https://sourceforge.net/projects/mingw/files/. Install at the default location, c:\mingw

    Now, in the Qt command prompt, cd to "scripts" and run
    call buildqtlibs.bat
    call buildplugins.bat
    call cleanqt.bat
    call buildqt.bat
    this will build the Windows desktop version (but if you run GiderosStudio.exe it will crash, wait till you've copied files -- see below)

    Now run the following to build Android
    call makejar.bat
    call buildandroidlibs.bat
    call buildandroidso.bat
    call buildandroidplugins.bat
    (note, the last three batch files assume you have Android NDK r11b installed. If you have another version you will have to edit the batch files and replace references to android-ndk-r11b)

    Open the Visual Studio command prompt and run
    buildwinrt.bat
    Now run
    mycopyall.bat
    This should copy the Gideros release to \gideros_gideros\release (assuming you cloned Gideros to \gideros_gideros\gideros). Check the stuff is there!

    Finally, to build win32 version, go to gideros/win32_example and run
    depends.bat
    compile.bat
    copyall.bat
    copywin32.bat
    You should then have a working Gideros on Windows which can export Windows desktop, win32, WinRT and Android. But it cannot export iOS or OSX.

    Likes: papirosnik

    +1 -1 (+1 / -0 ) Share on Facebook
  • john26john26 Maintainer
    edited August 2016
    Note: see here for a step-by-step guide to installing the Android SDK etc

    http://docs.giderosmobile.com/deployment.html

    (see "installing OS-specific SDKs" tab)

    You should install Android 21.

    Likes: papirosnik

    +1 -1 (+1 / -0 ) Share on Facebook
  • @john26,
    awesome explanation! Thank you.
    Will try this a bit later.
    However, I have a mac too... and since the main job should be performed there, could you also politely provide us instructions on how to compile all stuff on a Mac.
    We'll be immensely grateful! )

    Likes: SinisterSoft

    +1 -1 (+1 / -0 ) Share on Facebook
  • john26john26 Maintainer
    OK I will try to put something together this evening (it will be useful to remind myself!)
    +1 -1 (+2 / -0 ) Share on Facebook
  • We can hardly wait :)
  • XmanXman Member
    edited August 2016
    @john26, What the mac os version do you used for build?
    in the El Capitan 10.11, the /usr/lib is not writable, do we have to disabled rootless?

    And where to download the qt5.6.0 tar package for windows?

  • XmanXman Member
    Do you think it would be better to provide all other files that are not available on the github somewhere to download?
    Such as files in external and dependencies directory.
  • john26john26 Maintainer
    The dependencies directory contains Windows versions of NSIS, Qt and QScintilla. @ar2rsawseen provided these. The external directory contains the winrt, win32 and html5 versions which you need to build yourself (see above for winrt).
  • keszeghkeszegh Member
    edited March 2017
    @john26, i try to build gideros on win10, it partially works but not completely.
    is your explanation still valid?
    i'm curious about Qscintilla, i build it fine, but for what reason? i wonder how can the gideros building process find it? should i put it in some specific directory?

    i want to build the (g)media plugin primarily, i can even compile the dll but it is not working, when i overwrite the gmedia.dll in the gideros install folder with my one then it won't work, even if i don't alter the source code.

    also there are zillion options what to download for qt5.6, e.g. there are many options like
    mingw49_32\
    msvc2013_64\
    msvc2015_64\
    winrt_x64_msvc2015\
    winrt_x86_msvc2015\
    which one is needed? which one's path should i add to env variables? (i added mingw49_32)

    thanks in advance for any further explanations, would be great to be able to build gideros, that would allow to theoretically be able to make minor contributions.
  • i would appreciate help with compiling gideros.
    in general, having a working tutorial about how to do that would be essential for an open-source project and could help to gain more contributors (and users) to gideros (like me).

    Likes: SinisterSoft

    +1 -1 (+1 / -0 ) Share on Facebook
  • hgy29hgy29 Maintainer
    Hi @keszegh, go for mingw tooling in QT, other toolchains aren't needed.
    Qscintilla lib is installed along QT files when 'make install' is invoked on QScintilla project, so gideros can find it here.

    One of my employees wrote a compiling guide, and I posted it on the forum a few month ago. It is (still) in French but I'll repost it here just in case someone finds it useful.
    docx
    docx
    Giderose_TUTO_FR001.docx
    57K
  • thanks, @hgy29, i will give your french tutorial a try.
  • @hgy29 , I find that french tutorial useful for me too
    in general, any tutorial would be greatly appreciated )
Sign In or Register to comment.