Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026
Sono molte le novità che ASUS ha scelto di presentare al CES 2026 di Las Vegas, partendo da una gamma di soluzioni NUC con varie opzioni di processore passando sino agli schermi gaming con tecnologia OLED. Il tutto senza dimenticare le periferiche di input della gamma ROG e le soluzioni legate alla connettività domestica
Le novità ASUS per il 2026 nel settore dei PC desktop
Le novità ASUS per il 2026 nel settore dei PC desktop
Molte le novità anticipate da ASUS per il 2026 al CES di Las Vegas: da schede madri per processori AMD Ryzen top di gamma a chassis e ventole, passando per i kit di raffreddamento all in one integrati sino a una nuova scheda video GeForce RTX 5090. In sottofondo il tema dell'intelligenza artificiale con una workstation molto potente per installazioni non in datacenter
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-11-2003, 16:04   #1
skazzo
Senior Member
 
Iscritto dal: May 2002
Città: Trento (Lavis)
Messaggi: 2583
niubbo... Dev-c++ e id3lib...

Ciao a tutti!
mi sono cimentato nella programmazione in c++, e grazie a Dev-c++ e wxWindows costruire l'interfaccia grafica è stato abbastanza semplice...

Il problema nasce ora che devo aggiungere funzionalità come la lettura delle tag Id3 e degli OggVorbis Comments...
come faccio a includere in mamiera corretta le librerie?
finora, usando solo wxWindows, mi sono servito dei devpacks, per installare le librerie, e ora sono nella c@cc@!

dunque, ho provato a fare questo:
ho scaricato id3lib, versione sorgente e i binari per windows.
ho posizionato i binari nella cartella "lib", mentre i file della cartella "include" dei sorgenti l'ho copiata pari pari nella cartella "include" di dev c++, senza avere bisogno di linkare tali file nelle proprietà del progetto, e per averli disponibili per altre applicazioni.
inoltre, ho copiato la cartella "src" dei sorgenti nella cartella del mio progetto e rinominata "id3", per avere le funzioni di base (misc_support.cpp, contenente le funzioni per leggere le tag senza dover scrivere kilometri di roba).
fatto questo, ho aggiunto le seguenti righe nel file audiorun.h (praticamente il mio main.h):

#define ID3LIB_LINKOPTION 1
#include <id3/tag.h>
#include "id3/misc_support.h"

oltre agli altre include per wxwindows...
ed ecco la funzione incriminata:
Codice:
wxString
AppFrame::leggiTitolo(wxString percorso)
{
    char *titolo;
    wxString tmp;
    if (percorso.Right(4) == ".mp3")
    {
        //legge tag MP3
        //provo a leggere ID3v2
        ID3_Tag tagBrano(percorso);
        titolo = ID3_GetTitle(&tagBrano);
        if (NULL != &titolo)
        {
            //trovata ID3v2, restituisco il titolo
            return titolo;
        }
        else
        {
            //ID3v2 non trovata, provo con ID3v1
            tagBrano.Link("song.mp3", ID3TT_ID3V1);
            titolo = ID3_GetTitle(&tagBrano);
            if (NULL != &titolo)
            {
                //trovata ID3v1, restituisco il titolo
                return titolo;
            }
            else
            {
                //nessuna tag, uso il nome del file senza estensione
                tmp = percorso.AfterLast(char(92));
                tmp.Remove(tmp.Len() - 4);
                return tmp;
            }
        }
    }
    else if (percorso.Right(4) == ".ogg")
    {
    //legge commento OggVorbis
    tmp = percorso.AfterLast(char(92));
    tmp.Remove(tmp.Len() - 4);
    return tmp;
    }
}
ed ecco gli errori:
Codice:
[Linker error] undefined reference to `ID3_Tag::ID3_Tag(char const *)'
[Linker error] undefined reference to `ID3_GetTitle(ID3_Tag const *)'
[Linker error] undefined reference to `ID3_Tag::~ID3_Tag(void)'
[Linker error] undefined reference to `ID3_Tag::Link(char const *, unsigned short)'
[Linker error] undefined reference to `ID3_GetTitle(ID3_Tag const *)'
[Linker error] undefined reference to `ID3_Tag::~ID3_Tag(void)'
[Linker error] undefined reference to `ID3_Tag::~ID3_Tag(void)'
[Linker error] undefined reference to `ID3_Tag::~ID3_Tag(void)'
C:\Andrea\Mio\Cpp\AudioRun\Makefile.win [Build Error]  [AudioRun.exe] Error 1
che ho sbagliato?
è problema di codice, di installazione della libreria o che altro?
non è che magari esiste un devpack delle id3lib????
grazie per l'aiutone!!!!

ciao a tutti!
__________________
Blog - ROMsCat - Guida a GeexBox -
VENDO 1 - VENDO 2
skazzo è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2003, 19:14   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Nella libreria dovresti aver trovato anche dei file con estensione .lib...
Questi devono essere linkati al tuo eseguibile:

Project -> Project Options -> Parameters -> Add library or object

e ci aggiungi i .lib che ti servono...

Potrebbe nascere anche un problema sulla compatibilità del .lib con il compilatore MinGW...in tal caso dovresti ricompilare il sorgente della libreria e generare il .a (quivalente del .lib per MinGW)...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2003, 15:54   #3
skazzo
Senior Member
 
Iscritto dal: May 2002
Città: Trento (Lavis)
Messaggi: 2583
grazie!
aggiungendo la libreria per gli ogg ho rilevato lo stesso problema, e grazie al tuo aiuto l'ho risolto...
ma l'id3lib ancora non funziona, l'errore è sempre quello....provvederò a ricompilare la libreria... se trovo tutto il necessario... sto facendo un po' di casino con 'sti file!

ciao e grazie!
__________________
Blog - ROMsCat - Guida a GeexBox -
VENDO 1 - VENDO 2
skazzo è offline   Rispondi citando il messaggio o parte di esso
Old 17-11-2003, 11:41   #4
skazzo
Senior Member
 
Iscritto dal: May 2002
Città: Trento (Lavis)
Messaggi: 2583
help...
non riesco a capire come compilare la libreria...
posso creare un nuovo progetto con dev-c++ o è meglio che uso il make da riga di comando? se sì, mi dai (date) le direttive? con tutti sti switch ci capisco poco o niente...

ciao e grazie mille!
__________________
Blog - ROMsCat - Guida a GeexBox -
VENDO 1 - VENDO 2
skazzo è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2003, 10:52   #5
skazzo
Senior Member
 
Iscritto dal: May 2002
Città: Trento (Lavis)
Messaggi: 2583
qualcuno sa darmi un riferimento per la guida del mingw o sa spiegarmi come faccio a ricompilare la libreria?
l'errore persiste...

ah, e magari conoscete un metodo migliore per leggere i commenti dei file ogg usando la libreria vorbisfile? quest'ltima pretende ch eil file sia già aperto e messo in stdin, ma io ho solo bisogno di leggere i commenti, per ora...
ciao!
__________________
Blog - ROMsCat - Guida a GeexBox -
VENDO 1 - VENDO 2
skazzo è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2003, 14:50   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Magari se ci dai il link al sito della libreria da ricompilare
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2003, 15:15   #7
skazzo
Senior Member
 
Iscritto dal: May 2002
Città: Trento (Lavis)
Messaggi: 2583
Quote:
Originariamente inviato da cionci
Magari se ci dai il link al sito della libreria da ricompilare
id3lib.sourceforge.net

credevo che conoscessi id3lib... sorry!

ciao e grazie!
__________________
Blog - ROMsCat - Guida a GeexBox -
VENDO 1 - VENDO 2
skazzo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
Le novità MSI del 2026 per i videogiocatori Le novità MSI del 2026 per i videogiocato...
I nuovi schermi QD-OLED di quinta generazione di MSI, per i gamers I nuovi schermi QD-OLED di quinta generazione di...
Le scope elettriche Tineco stanno domina...
Questi robot aspirapolvere stanno facend...
Malware AI arriva su macOS: un finto cli...
Formula E Mexico City, solita gara folle...
Instagram nega il data breach: la presun...
Cloudflare contro l'Italia: 'Piracy Shie...
Space Forge genera plasma in orbita: pas...
Australia, Meta chiude oltre mezzo milio...
2 mini PC con super processori Intel Cor...
La Xiaomi SU7 Ultra distrugge una Ferrar...
Jensen Huang: la narrativa apocalittica ...
Un polmone umano su chip riproduce respi...
TSMC chiude il 2025 con ricavi record: o...
Il tasso di adozione di iOS 26 è ...
Inserire link in un documento Word diven...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:19.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v