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

    [C++] compatibilità tra compilatori

    La mia domanda è semplice: se compilo una libreria da sorgente con un compilatore, e poi uso il .lib ottenuto con un altro, è possibile che ottenga errori di linking?

    Io ho compilato MySQL++ con VS2008 e ho ottenuto il file .lib, ora sto tentando di linkarlo da codeblocks + mingw.. e mi da errori di linking anche se ho specificato il path del .lib nalle opzioni del linker. Da cosa può dipendere?

    Grazie a tutti
    To understand recursion, we must first understand recursion

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    QUALI errori? Hai compilato in modalità Debug o Release?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    dunque..

    questo è il file che usa il la libreria MySQL++:

    codice:
    #include <mysql++.h>
    
    #define DB "db"
    #define HOST "localhost"
    #define USER "fabi"
    #define PASSW "pasw"
    
    int Database_Connect()
    {
            mysqlpp::Connection conn(false);
            if (!conn.connect(DB, HOST, USER, PASSW))
                wxMessageBox(_("asdf"), _("Error"));
            else
                wxMessageBox(_("Connected"), _("Ok"));
            return 0;
    }

    gli errori non me li fa postare... dice che inserisco troppe immagini nel messaggio... bah.. comunque sono tutti errori undefined reference etc...

    Modalità relase....
    To understand recursion, we must first understand recursion

  4. #4
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Tra compilatori diversi non c'è compatibilità binaria. E volte può non esserci compatibilità nemmeno tra due diverse release dello stesso compilatore.
    In altre parole un .lib compilato con VC++ non è usabile da Borland o da g++.
    Controlla se tra le utilities del compilatore c'è un programmino che effettua la conversione da .lib in .a (Borland lo ha.)
    Ovviamente i due files dovranno risiedere nella stessa dir.
    This code and information is provided "as is" without warranty of any kind, either expressed
    or implied, including but not limited to the implied warranties of merchantability and/or
    fitness for a particular purpose.

  5. #5
    ho provato un tool per convertire ma ninete... ho risolto ricompilando la libreria con mingw... grazie mille comunque!
    To understand recursion, we must first understand recursion

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 © 2025 vBulletin Solutions, Inc. All rights reserved.