[Solved] Can't compile jasper from qtimageformats/thirdparty windows 7



  • Hello,

    I try to compile Qt 5.3.2 on Windows 7 with msvc2010. The problem is that the jasper part from 3party in qtimageformats are not compile. Because of this I have problems at compiling of all my other apps.

    Here is my config for compile:
    @configure -static -commercial -release -no-opengl -plugin-sql-mysql -qt-sql-sqlite -qt-libjpeg -skip qtdeclarative -skip qtlocation -skip qtwinextras -skip qtwebkit -nomake examples -nomake tests -no-openssl -platform win32-msvc2010 -prefix "C:\Qt\5.3.2"@

    The build compiles complete (nmake && nmake install) - but if I compile my apps the jasper compile starts everytime again. Because of this the compiling time is very long.

    Is it posible to switch of jasper before compiling qt5.3.2? Or is there an other solution for it?

    I hope my text is understandable.Thank you for your help.
    Kind regards
    richard


  • Lifetime Qt Champion

    Hi,

    Something's not clear, are you saying that when you compile one of your own project, it triggers the build of jasper ?



  • Hi,

    thank you for your answer.

    yes - everytime I build an own project.
    Here are the terminal outputs I get everytime:

    @Code wird generiert.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\jpc\jpc_t1cod.c(160) : warning C4715: "JPC_NOMINALGAIN": Nicht alle Steuerelementpfade geben einen W
    ert zurück.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\jp2\jp2_enc.c(436) : warning C4715: "clrspctojp2": Nicht alle Steuerelementpfade geben einen Wert zu
    rück.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\jpg\jpg_enc.c(363) : warning C4715: "tojpgcs": Nicht alle Steuerelementpfade geben einen Wert zurück
    .
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\base\jas_cm.c(1277) : warning C4715: "jas_clrspc_numchans": Nicht alle Steuerelementpfade geben eine
    n Wert zurück.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\base\jas_cm.c(1068) : warning C4715: "icctoclrspc": Nicht alle Steuerelementpfade geben einen Wert z
    urück.
    Codegenerierung ist abgeschlossen.@

    Ans because of that I thought about to switch it off in the configure.bat. But I don't now how.


  • Lifetime Qt Champion

    What's your project ? How do you build it ?



  • Sorry for the late answer. I try to build for example little GUI-Apps. I tested it with an complete new GUI-App like this:

    pro-File:
    @#-------------------------------------------------

    Project created by QtCreator 2015-01-06T09:38:57

    #-------------------------------------------------

    QT += core gui

    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

    TARGET = HelloWorld
    TEMPLATE = app

    SOURCES += main.cpp
    mainwindow.cpp

    HEADERS += mainwindow.h

    FORMS += mainwindow.ui
    @

    mainwindow.h:
    @#ifndef MAINWINDOW_H
    #define MAINWINDOW_H

    #include <QMainWindow>

    namespace Ui {
    class MainWindow;
    }

    class MainWindow : public QMainWindow
    {
    Q_OBJECT

    public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

    private:
    Ui::MainWindow *ui;
    };

    #endif // MAINWINDOW_H@

    mainwindow.cpp:
    @#include "mainwindow.h"
    #include "ui_mainwindow.h"

    MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
    {
    ui->setupUi(this);
    }

    MainWindow::~MainWindow()
    {
    delete ui;
    }@

    main.cpp:
    @#include <QApplication>
    #include "mainwindow.h"

    int main(int argc, char *argv[])
    {
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    return a.exec&#40;&#41;;
    

    }
    @

    Thats all. Only an QtCreator created GUI-App without changeings.
    I build the project with Visual Studio 2010 terminal and get following messages:

    @
    C:\Daten\src\HelloWorld>qmake
    Project WARNING: Plugin class name could not be determined for qplastiquestyle plugin.
    Project WARNING: Plugin class name could not be determined for qplastiquestyle plugin.
    Project WARNING: Plugin class name could not be determined for qplastiquestyle plugin.

    C:\Daten\src\HelloWorld>nmake

    Microsoft (R) Program Maintenance Utility, Version 10.00.40219.01
    Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

        "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\nmake.exe" -f Makefile.Release
    

    Microsoft (R) Program Maintenance Utility, Version 10.00.40219.01
    Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

        C:\Qt\5.3.2\bin\uic.exe mainwindow.ui -o ui_mainwindow.h
        C:\Qt\5.3.2\bin\moc.exe -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DNDEBUG -D_MSC_VER=1600 -D_WIN32 -IC:/Qt/5.3.2/mkspecs/win32-msvc2010
    

    src/HelloWorld -IC:/Qt/5.3.2/include -IC:/Qt/5.3.2/include/QtWidgets -IC:/Qt/5.3.2/include/QtGui -IC:/Qt/5.3.2/include/QtCore mainwindow.h -o release\moc_mainwindow.cpp
    cl -c -nologo -Zm200 -Zc:wchar_t -O2 -GL -arch:SSE2 -MT -MP2 -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DND
    ....\Qt\5.3.2\include" -I"......\Qt\5.3.2\include\QtWidgets" -I"......\Qt\5.3.2\include\QtGui" -I"......\Qt\5.3.2\include\QtCore" -I"release" -I"." -I"......\Qt\5.3.2\mks
    msvc2010" -Forelease\ @E:\Temp\nmEC0E.tmp
    main.cpp
    mainwindow.cpp
    helloworld_plugin_import.cpp
    cl -c -nologo -Zm200 -Zc:wchar_t -O2 -GL -arch:SSE2 -MT -MP2 -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DND
    ....\Qt\5.3.2\include" -I"......\Qt\5.3.2\include\QtWidgets" -I"......\Qt\5.3.2\include\QtGui" -I"......\Qt\5.3.2\include\QtCore" -I"release" -I"." -I"......\Qt\5.3.2\mks
    msvc2010" -Forelease\ @E:\Temp\nmF362.tmp
    moc_mainwindow.cpp
    link /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /NODEFAULTLIB:MSVCRT /LTCG /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls
    6.0.0.0' publicKeyToken='6595b64144ccf1df' language='' processorArchitecture=''" /MANIFEST /MANIFESTFILE:release\HelloWorld.exe.embed.manifest /OUT:release\HelloWorld.exe @E:\Te
    mp
    Bibliothek "release\HelloWorld.lib" und Objekt "release\HelloWorld.exp" werden erstellt.
    Code wird generiert.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\jpc\jpc_t1cod.c(160) : warning C4715: "JPC_NOMINALGAIN": Nicht alle Steuerelementpfade ge
    ert zurück.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\jp2\jp2_enc.c(436) : warning C4715: "clrspctojp2": Nicht alle Steuerelementpfade geben ei
    rück.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\jpg\jpg_enc.c(363) : warning C4715: "tojpgcs": Nicht alle Steuerelementpfade geben einen
    .
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\base\jas_cm.c(1277) : warning C4715: "jas_clrspc_numchans": Nicht alle Steuerelementpfade
    n Wert zurück.
    c:\qt\qt-everywhere-enterprise-src-5.3.2\qtimageformats\src\3rdparty\jasper\src\libjasper\base\jas_cm.c(1068) : warning C4715: "icctoclrspc": Nicht alle Steuerelementpfade geben e
    urück.
    Codegenerierung ist abgeschlossen.
    mt.exe /nologo /manifest release\HelloWorld.exe.embed.manifest /outputresource:release\HelloWorld.exe;1@

    This little project needs 6 minutes to compile and I think it's definetly to long.

    I hope that I understand your question and this is the answer you wanted :)


  • Lifetime Qt Champion

    Yes, that's what I wanted but I must say that, well, that's a new one…

    I see you are using qmake without any path. Where is it located ?



  • It's located at
    C:\Qt\5.3.2\bin\qmake.exe



  • Hi,

    same problem here... has anyone an idea?

    ciao,
    Chris


  • Lifetime Qt Champion

    Do you mean that you can't build qtimageformats or that when you build your application it's trying to build qtimageformats ?



  • Hi,

    when I compile my Qt app, all imageformats are recompiled, too. So each simple compile run for any app using Qt causes a recompile of all imageformat plugins.

    In between I switched from static build of Qt to shared build and above problem is gone...

    ciao,
    Chris



  • I swtiched to shared build too. And now the Problem is gone.
    Thank you for the help.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.