Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. How install Qt from tmp in Ubuntu?

How install Qt from tmp in Ubuntu?

Scheduled Pinned Locked Moved Installation and Deployment
installer
3 Posts 2 Posters 2.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • feniks_fireF Offline
    feniks_fireF Offline
    feniks_fire
    wrote on last edited by
    #1

    Well I have Qt in Ubuntu before but by my mistake I remove it(Shift+delete to few folders and I went to eat
    breakfast :D). So today I run Qt installer: "qt-unified-linux-x64-2.0.3-1-online.run". When I start install, I select version 5.7 Qt and some files began to download, after downloading Qt want install files, but stop install for around 40%. After 10-15 minuts program crashed. This maybe been accident. Well I have limit for internet and I want to ask a question. I see in '/tmp' folder in Ubuntu I have all files whose installer download but I don't know how I can install Qt by them. Sry for my english, but someone can help me?

    raven-worxR 1 Reply Last reply
    0
    • feniks_fireF feniks_fire

      Well I have Qt in Ubuntu before but by my mistake I remove it(Shift+delete to few folders and I went to eat
      breakfast :D). So today I run Qt installer: "qt-unified-linux-x64-2.0.3-1-online.run". When I start install, I select version 5.7 Qt and some files began to download, after downloading Qt want install files, but stop install for around 40%. After 10-15 minuts program crashed. This maybe been accident. Well I have limit for internet and I want to ask a question. I see in '/tmp' folder in Ubuntu I have all files whose installer download but I don't know how I can install Qt by them. Sry for my english, but someone can help me?

      raven-worxR Offline
      raven-worxR Offline
      raven-worx
      Moderators
      wrote on last edited by raven-worx
      #2

      @feniks_fire
      there are also offline installers available (Linux 64bit):
      https://www.qt.io/download-open-source/#section-3

      --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
      If you have a question please use the forum so others can benefit from the solution in the future

      1 Reply Last reply
      0
      • feniks_fireF Offline
        feniks_fireF Offline
        feniks_fire
        wrote on last edited by feniks_fire
        #3

        @raven-worx
        Ehh I know that is also offline installer but as I said "Well I have limit for internet and I want to ask a question." Maybe I must better explain my problem. I also said " I see in '/tmp' folder in Ubuntu I have all files" for qt installation. So I have for example "5.7.0-1qt-everywhere-opensource-src-5.7.0 .7z" from "http://download.qt.io/online/qtsdkrepository/linux_x64/desktop/qt5_57_src_doc_examples/qt.57.src/", I have "4.0.3-0qtcreator.7z" from "https://download.qt.io/online/qtsdkrepository/linux_x64/desktop/tools_qtcreator/qt.tools.qtcreator/" and like this I have all other package. I can extract "4.0.3-0qtcreator.7z" and I have full working Qt Creator but these packages is few hundred and I don't know where I must extract each package and probably it must not work. Each folder have also "installscript.qs". I think there must be some way to install them as it does after the installer online downloading files.

        Maybe someone know how to run in Linux *.qs files similar to this:

        installscript.qs for 4.0.3-0qtcreator.7z:

        /****************************************************************************
        **
        ** Copyright (C) 2015 Digia Plc and/or its subsidiary(-ies).
        ** Contact: http://www.qt-project.org/legal
        **
        ** This file is part of the tools applications of the Qt Toolkit.
        **
        ** $QT_BEGIN_LICENSE:LGPL$
        ** Commercial License Usage
        ** Licensees holding valid commercial Qt licenses may use this file in
        ** accordance with the commercial license agreement provided with the
        ** Software or, alternatively, in accordance with the terms contained in
        ** a written agreement between you and Digia.  For licensing terms and
        ** conditions see http://qt.digia.com/licensing.  For further information
        ** use the contact form at http://qt.digia.com/contact-us.
        **
        ** GNU Lesser General Public License Usage
        ** Alternatively, this file may be used under the terms of the GNU Lesser
        ** General Public License version 2.1 as published by the Free Software
        ** Foundation and appearing in the file LICENSE.LGPL included in the
        ** packaging of this file.  Please review the following information to
        ** ensure the GNU Lesser General Public License version 2.1 requirements
        ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
        **
        ** In addition, as a special exception, Digia gives you certain additional
        ** rights.  These rights are described in the Digia Qt LGPL Exception
        ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
        **
        ** GNU General Public License Usage
        ** Alternatively, this file may be used under the terms of the GNU
        ** General Public License version 3.0 as published by the Free Software
        ** Foundation and appearing in the file LICENSE.GPL included in the
        ** packaging of this file.  Please review the following information to
        ** ensure the GNU General Public License version 3.0 requirements will be
        ** met: http://www.gnu.org/copyleft/gpl.html.
        **
        **
        ** $QT_END_LICENSE$
        **
        ****************************************************************************/
        
        var native_path_separator = "/";
        
        // constructor
        function Component()
        {
            component.loaded.connect(this, Component.prototype.loaded);
            installer.installationFinished.connect(this, Component.prototype.installationFinishedPageIsShown);
            installer.finishButtonClicked.connect(this, Component.prototype.installationFinished);
            installer.valueChanged.connect(this, Component.prototype.reactOnTargetDirChange);
        
            if (installer.value("os") == "win") {
                // Creator needs vcredist 32bit on windows
                component.addDependency("qt.tools.vcredist_msvc2013_x86");
            }
        
            if (installer.value("os") == "x11") {
                // set installation directory
                installer.setValue("EmbeddedInstallationRootDir", "/usr/local/Trolltech");
                installer.setValue("EmbeddedToolchainDir", "/usr/local/angstrom/arm");
            }
        
            // set the default values to SDKToolBinary and QtCreatorInstallerSettingsFile
            Component.prototype.reactOnTargetDirChange("TargetDir", installer.value("TargetDir"));
        }
        
        Component.prototype.loaded = function()
        {
            try {
                if (installer.value("os") == "win" && installer.isInstaller())
                    installer.addWizardPageItem(component, "AssociateCommonFiletypesForm", QInstaller.TargetDirectory);
            } catch(e) {
                print(e);
            }
        }
        
        Component.prototype.beginInstallation = function()
        {
            if (installer.value("os") === "win")
                component.addStopProcessForUpdateRequest(component.qtCreatorBinaryPath);
        }
        
        Component.prototype.reactOnTargetDirChange = function(key, value)
        {
            if (key == "TargetDir") {
                component.qtCreatorBinaryPath = value;
                if (installer.value("os") == "win") {
                    installer.setValue("QtCreatorInstallerSettingsFile", value + "//Tools/QtCreator/share/qtcreator/QtProject/QtCreator.ini");
                    installer.setValue("SDKToolBinary", value + "\\/Tools/QtCreator\\bin\\sdktool.exe");
                    component.qtCreatorBinaryPath = value + "\\/Tools/QtCreator\\bin\\qtcreator.exe";
                    component.qtCreatorBinaryPath = component.qtCreatorBinaryPath.replace(/\//g, "\\");
                } else if (installer.value("os") == "mac") {
                    installer.setValue("QtCreatorInstallerSettingsFile", value + "//Tools/QtCreator/Qt Creator.app/Contents/Resources/QtProject/QtCreator.ini");
                    installer.setValue("SDKToolBinary", value + "//Tools/QtCreator/Qt Creator.app/Contents/Resources/sdktool");
                    component.qtCreatorBinaryPath = value + "//Tools/QtCreator/Qt Creator.app/Contents/MacOS/Qt Creator";
                    // fix duplicate forward slashes in path
                    component.qtCreatorBinaryPath = component.qtCreatorBinaryPath.replace(/\/+/g, "/");
                } else {
                    installer.setValue("QtCreatorInstallerSettingsFile", value + "//Tools/QtCreator/share/qtcreator/QtProject/QtCreator.ini");
                    installer.setValue("SDKToolBinary", value + "//Tools/QtCreator/libexec/qtcreator/sdktool");
                    component.qtCreatorBinaryPath = value + "//Tools/QtCreator/bin/qtcreator";
                    // fix duplicate forward slashes in path
                    component.qtCreatorBinaryPath = component.qtCreatorBinaryPath.replace(/\/+/g, "/");
                }
            }
        }
        
        registerCommonWindowsFileTypeExtensions = function()
        {
            var headerExtensions = new Array("h", "hh", "hxx", "h++", "hpp");
        
            for (var i = 0; i < headerExtensions.length; ++i) {
                component.addOperation("RegisterFileType",
                                       headerExtensions[i],
                                       component.qtCreatorBinaryPath + " -client \"%1\"",
                                       "C++ Header file",
                                       "text/plain",
                                       component.qtCreatorBinaryPath + ",3",
                                       "ProgId=QtProject.QtCreator." + headerExtensions[i]);
            }
        
            var cppExtensions = new Array("cc", "cxx", "c++", "cp", "cpp");
        
            for (var i = 0; i < cppExtensions.length; ++i) {
                component.addOperation("RegisterFileType",
                                       cppExtensions[i],
                                       component.qtCreatorBinaryPath + " -client \"%1\"",
                                       "C++ Source file",
                                       "text/plain",
                                       component.qtCreatorBinaryPath + ",2",
                                       "ProgId=QtProject.QtCreator." + cppExtensions[i]);
            }
        
            component.addOperation("RegisterFileType",
                                   "c",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "C Source file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",1",
                                   "ProgId=QtProject.QtCreator.c");
        }
        
        registerWindowsFileTypeExtensions = function()
        {
            component.addOperation("RegisterFileType",
                                   "ui",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "Qt UI file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",4",
                                   "ProgId=QtProject.QtCreator.ui");
            component.addOperation("RegisterFileType",
                                   "pro",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "Qt Project file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",5",
                                   "ProgId=QtProject.QtCreator.pro");
            component.addOperation("RegisterFileType",
                                   "pri",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "Qt Project Include file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",6",
                                   "ProgId=QtProject.QtCreator.pri");
            component.addOperation("RegisterFileType",
                                   "qbs",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "Qbs Project file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",5",
                                   "ProgId=QtProject.QtCreator.qbs");
            component.addOperation("RegisterFileType",
                                   "qs",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "Qt Script file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",0",
                                   "ProgId=QtProject.QtCreator.qs");
            component.addOperation("RegisterFileType",
                                   "qml",
                                   component.qtCreatorBinaryPath + " -client \"%1\"",
                                   "Qt Quick Markup language file",
                                   "text/plain",
                                   component.qtCreatorBinaryPath + ",7",
                                   "ProgId=QtProject.QtCreator.qml");
        }
        
        Component.prototype.createOperations = function()
        {
            // Call the base createOperations and afterwards set some registry settings
            component.createOperations();
            var maintenanceToolPath;
        
            if (installer.value("os") == "win") {
                component.addOperation("CreateShortcut",
                                       component.qtCreatorBinaryPath,
                                       "@StartMenuDir@\\Qt Creator (Community).lnk",
                                       "workingDirectory=@homeDir@");
        
                registerWindowsFileTypeExtensions();
        
                if (component.userInterface("AssociateCommonFiletypesForm").AssociateCommonFiletypesCheckBox.checked)
                    registerCommonWindowsFileTypeExtensions();
        
                maintenanceToolPath = installer.value("TargetDir") + "/MaintenanceTool.exe";
            }
            if (installer.value("os") == "x11") {
                component.addOperation("InstallIcons", installer.value("TargetDir") + "/Tools/QtCreator/share/icons" );
                component.addOperation("CreateDesktopEntry",
                                       "DigiaQt-qtcreator-community.desktop",
                                       "Type=Application\nExec=" + component.qtCreatorBinaryPath + "\nName=Qt Creator (Community)\nGenericName=The IDE of choice for Qt development.\nIcon=QtProject-qtcreator\nTerminal=false\nCategories=Development;IDE;Qt;\nMimeType=text/x-c++src;text/x-c++hdr;text/x-xsrc;application/x-designer;application/vnd.qt.qmakeprofile;application/vnd.qt.xml.resource;text/x-qml;text/x-qt.qml;text/x-qt.qbs;");
                maintenanceToolPath = installer.value("TargetDir") + "/MaintenanceTool";
            }
            if (installer.value("os") == "mac") {
                maintenanceToolPath = installer.value("TargetDir")
                        + "/MaintenanceTool.app/Contents/MacOS/MaintenanceTool";
            }
        
            var settingsFile = installer.value("QtCreatorInstallerSettingsFile");
            if (!installer.isOfflineOnly()) {
                // Configure UpdateInfo plugin
                component.addOperation("Settings", "path="+settingsFile, "method=set",
                                       "key=Updater/MaintenanceTool",
                                       "value="+maintenanceToolPath);
            }
        }
        
        function isRoot()
        {
            if (installer.value("os") == "x11" || installer.value("os") == "mac")
            {
                var id = installer.execute("/usr/bin/id", new Array("-u"))[0];
                id = id.replace(/(\r\n|\n|\r)/gm,"");
                if (id === "0")
                {
                    return true;
                }
            }
            return false;
        }
        
        Component.prototype.installationFinishedPageIsShown = function()
        {
            isroot = isRoot();
            try {
                if (component.installed && installer.isInstaller() && installer.status == QInstaller.Success && !isroot)
                    installer.addWizardPageItem( component, "LaunchQtCreatorCheckBoxForm", QInstaller.InstallationFinished );
            } catch(e) {
                print(e);
            }
        }
        
        Component.prototype.installationFinished = function()
        {
            try {
                if (component.installed && installer.isInstaller() && installer.status == QInstaller.Success && !isroot) {
                    var isLaunchQtCreatorCheckBoxChecked = component.userInterface("LaunchQtCreatorCheckBoxForm").launchQtCreatorCheckBox.checked;
                    if (isLaunchQtCreatorCheckBoxChecked)
                        installer.executeDetached(component.qtCreatorBinaryPath, new Array(), "@homeDir@");
                }
            } catch(e) {
                print(e);
            }
        }
        
        
        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved