Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno
Con la quattordicesima generazione Lenovo ridisegna il suo ThinkPad più iconico attorno al nuovo Space Frame e ai processori Intel Core Ultra Series 3. Resta sotto 1Kg, è molto più semplice da riparare e si rivolge al professionista che lavora in mobilità, con un prezzo da prodotto di vertice.
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro
Le Jabra Evolve3 85 non sono semplicemente cuffie Bluetooth con cancellazione del rumore. Sono un dispositivo professionale pensato per chi trascorre gran parte della giornata in riunione, al telefono o davanti a un assistente basato sull'intelligenza artificiale
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi
Abbiamo provato MSI PRO MAX EDGE AI+, un mini-PC professionale progettato per eseguire modelli di intelligenza artificiale in locale, senza dipendere dal cloud. Il sistema abbina il processore AMD Ryzen AI Max+ 395, 128 GB di memoria unificata e un telaio in alluminio da appena 4 litri, con l'obiettivo di offrire capacità di elaborazione elevate in un formato compatto.
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


Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno Lenovo ThinkPad X1 Carbon Gen 14: il business ul...
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro Jabra Evolve3 85: le cuffie sia per l'intratteni...
MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB per far girare in locale anche i modelli più grandi MSI PRO MAX EDGE AI+, Ryzen AI Max+ 395 e 128 GB...
Recensione vivo X500 Pro Max: la fotografia mobile ha un nuovo protagonista Recensione vivo X500 Pro Max: la fotografia mobi...
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
PCSpecialist Black Friday 2026: cinque P...
Asahi Linux accusa: codice copiato e rip...
Energica torna in vita: moto elettriche ...
OpenAI incassa altri miliardi, ma qualco...
Dal 33% al 43%: una ricerca spagnola apr...
TikTok non è più solo un s...
Passo indietro per OPPO: cancellato il n...
Microsoft 365 nel caos: email regolari r...
Nuova strategia per Huawei: l'azienda ci...
Microsoft, il datacenter di Amsterdam di...
Steam Deck: Epic conferma il supporto de...
Claude Code può salvare credenziali in c...
L'algoritmo di TikTok ti intrappola: l'a...
WoW Forever è stato il miglior la...
gputaskman, arriva il Task Manager per G...
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: 11:03.


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