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

    Interagire con mysql da c++

    Salve a tutti,
    ho quasi finito di realizzare un progettino scritto in c++, con l'ide eclipse e il compilatore cygwin,
    devo permettere al mio programma di interrogare un piccolo database ed eventualmente anche modificarlo.
    Vorrei quindi integrare "mysql connectore c++", ma qui arrivano i problemi,non riesco a integrarlo correttamente, ricevo
    molti errori in fase di compilazione. Nel caso qualcuno ha esperienza e sa indicarmi gli accorgimenti per non sbagliare,
    o qualcuno conosce soluzioni o librerie alternative, sarò lieto di ascoltarlo. Grazie

  2. #2
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    Il db è già dato? Deve essere utilizzato anche da altre applicazioni che siano già state create e quindi utilizzino necessariamente MySql?
    Altrimenti potresti usare SQLite come database: MySql mi pare un po' sovradimensionato per la gestione di un piccolo database, SQLite è molto più pratico e immediato.

    In ogni caso dovresti specificare che errori ottieni se vuoi essere aiutato. Il più dettagliatamente possibile.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  3. #3
    il database è già creato, il problema però non è la gestione del database, ma l'integrazione nel progetto.
    proverò quindi a descrivere i passaggi che effettuo per integrare il connector, specifico adesso che uso mysql connector c e non mysql connector c++, in quanto quest'ultimo richiedere le librerie boost , quindi altri accorgimenti per funzionare.

    In eclipse, nelle proprietà del progetto,

    in C/C++ Build --> Settings --> Cygwin C++ Compiler --> Includes ,aggiunto i path :
    "C:\Program Files\MySQL\MySQL Connector C 6.1\include" e "C:\Program Files\MySQL\MySQL Server 5.5\include"

    in C/C++ Build --> Settings --> Cygwin C++ Linker --> Includes ,aggiunto i path :
    "C:\Program Files\MySQL\MySQL Connector C 6.1\lib" e "C:\Program Files\MySQL\MySQL Server 5.5\lib"

    a questo punto mi aspetterei di poter compilare il progetto per poter successivamente utilizzare classi e metodi messi a disposizione dal connettore. ma la compilazione fallisce. vi riporto i messaggi in rosso :

    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lcygwin
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -ladvapi32
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lshell32
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -luser32
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lkernel32
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lgcc_s
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lgcc
    /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/../../../../x86_64-pc-cygwin/bin/ld: cannot find /usr/lib/gcc/x86_64-pc-cygwin/4.8.2/crtend.o: Too many open files
    makefile:50: recipe for target 'Prova.exe' failed
    collect2: error: ld returned 1 exit status
    make: *** [Prova.exe] Error 1

  4. #4
    Sicuro di non aver tolto per sbaglio altri percorsi di include? Quegli errori si riferiscono a librerie standard non trovate...

    Comunque, +1 per SQLite, ci perdi sicuramente meno tempo soprattutto in fase di deployment; tra l'altro se non dipendi da caratteristiche specifiche di MySQL il porting del database è completamente indolore.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    quello che so è che il programma viene compilato senza errori senza utilizzare le librerie sql, attualmente i metodi che implementano le chiamate al database le ho realizzate sotto forma di simulazioni, ovvero ritornano valori generati casualmente, ma devo integrare il connettore per poter ottenere il funzionamento reale dell'applicazione.

  6. #6
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    Quote Originariamente inviata da ultrasound91 Visualizza il messaggio
    quello che so è che il programma viene compilato senza errori senza utilizzare le librerie sql, attualmente i metodi che implementano le chiamate al database le ho realizzate sotto forma di simulazioni, ovvero ritornano valori generati casualmente, ma devo integrare il connettore per poter ottenere il funzionamento reale dell'applicazione.
    Come detto da MItaly sembra che aggiungendo quello ne cancelli altri
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

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.