Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [c++][Qt] Come creare un eseguibile

    Ciao a tutti!!
    Ho creato l' applicazione Notepad che propongono nella guida di qt:
    http://qt-project.org/doc/qt-5.0/qtd...startedqt.html

    Adesso però vorrei creare il file eseguibile ed eseguirla su vari pc...
    Il mio SO è linux e uso qtcreator.

    Ho provato ad eseguire il file "eseguibile" del Debug e quello della Release e non funzionano fuori dalla cartella dichiarata come workspace.

    La domanda è: Come faccio a creare l'eseguibile? questo può essere aperto pure su pc con SO Windows?

    Grazie a tutti in anticipo!!

  2. #2

    Re: [c++][Qt] Come creare un eseguibile

    Originariamente inviato da cataDesign
    Ho provato ad eseguire il file "eseguibile" del Debug e quello della Release e non funzionano fuori dalla cartella dichiarata come workspace.
    Non è normale, l'eseguibile generato dovrebbe andare tranquillamente; inoltre, che intendi per "non funzionano"?
    La domanda è: Come faccio a creare l'eseguibile?
    Con il comando Build->Build all (Ctrl+Shift+B).
    questo può essere aperto pure su pc con SO Windows?
    Ovviamente no, per generare eseguibili per Windows devi compilare su Windows (o meglio, esiste la possibilità della cross-compilazione, ma non è semplicissimo).

    P.S.: come detto in passato, evita di segnalarmi le discussioni in privato, se ho tempo/possibilità di rispondere provvedo anche senza segnalarmele direttamente.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Ok

    Comunque ho provato a mettere l'eseguibile su un altro so linux (dando pure i permessi di esecuzione) e si appriva una finestra che mi chiedeva di cercare e installare un programma per eseguire "l'eseguibile "

    Mi chiedo. .. non è necessario installare o portare dietro con l'eseguibile pure le librerie qt?

    Grazie di tutto e scusami per il pm

  4. #4
    Originariamente inviato da cataDesign
    Comunque ho provato a mettere l'eseguibile su un altro so linux (dando pure i permessi di esecuzione) e si appriva una finestra che mi chiedeva di cercare e installare un programma per eseguire "l'eseguibile "
    Sicuro di aver copiato il file giusto?
    Mi chiedo. .. non è necessario installare o portare dietro con l'eseguibile pure le librerie qt?
    È necessario che ci siano le Qt installate (anche se mi pare sia possibile linkarle staticamente), ma l'errore che ottieni non c'entra con questo, sembra piuttosto che tu abbia portato un file che non c'entra invece dell'eseguibile...
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    L'eseguibile nella cartella del debug, e in quello delle release apre il programma se lo lancio.

    Il problema sorge quando con una pendrive porto l'eseguibile in un altro pc linux (tra l'altro senza librerie) e mi da quel problema... come faccio a portarmi dietro pure le librerie qt?


    Nel caso sono file esterni con estenzione .dll oppure sono inclusi nell'eseguibile??

    Quando tu crei un applicazione Cosa consegni all'utente finale?

  6. #6
    L'argomento è spinoso, se sull'altro sistema Linux c'è la stessa versione delle Qt (e delle altre librerie a cui si fa riferimento - in particolare, libstdc++) non ci sono problemi, altrimenti la strada più sicura è il linking statico o creare un pacchetto che si tira dietro tutte le librerie; leggi:
    http://qt-project.org/doc/qt-4.8/deployment.html
    http://qt-project.org/doc/qt-4.8/deployment-x11.html
    anche se la cosa più comoda per l'utente finale è creare (direttamente su un'installazione della distribuzione-target) un pacchetto specifico per la sua distribuzione, che si tiri dietro le varie librerie necessarie come dipendenze.

    Se il progetto è opensource comunque spesso è buona norma fornire una tarball con i sorgenti e lasciare la possibilità che l'utente si compili il tutto per i fatti suoi (qmake && make && make install).
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Allora sto seguendo la documentazione che mi hai postato, e sono arrivato a questo punto

    http://qt-project.org/doc/qt-4.8/dep...n-dependencies

    Dove parla di Linking the Application to Qt as a Shared Library

    Non ho capito una cosa ma quando dice:

    codice:
     After ensuring that Qt is built as a shared library, 
    we can build the Plug & Paint application. 
    First, we must go into the directory that contains the application:   
    cd /path/to/Qt/examples/tools/plugandpaint   
    io in quale cartella devo posizionarmi quella che installo con qt oppure quella della mia applicazione?

    Oltretutto il path che indicano loro è diverso da quello in cui ho la cartella plugandpaint

    -----------------------------------------

    Sono andato avanti (assumendo che la cartella giusta fosse quella dev'è installata l'app qtcreator)
    e ho provato ad eseguire da terminale make clean con il seguente errore make: *** No rule to make target `clean'. Stop. ( come altra informazione posso dirvi che in quella cartella il file make non c'è)

    Boh!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.