Hallo,
ich möchte für ein Programm das ich mit QT Creator in C++ schreibe
libsndfile (http://www.mega-nerd.com/libsndfile/) verwenden.
Dazu habe ich ein einfaches "Qt-Gui-Anwendung"-Projekt erstellt und über
"Bibliothek hinzufügen" die .lib welche sich im Projektordner befindet
hinzugefügt.
Zum testen möchte ich einfach beim anklicken eines Buttons eine
wav-Datei öffnen:
1 | #include "mainwindow.h"
|
2 | #include "ui_mainwindow.h"
|
3 | #include <sndfile.h>
|
4 |
|
5 | MainWindow::MainWindow(QWidget *parent) :
|
6 | QMainWindow(parent),
|
7 | ui(new Ui::MainWindow)
|
8 | {
|
9 | ui->setupUi(this);
|
10 | }
|
11 |
|
12 | MainWindow::~MainWindow()
|
13 | {
|
14 | delete ui;
|
15 | }
|
16 |
|
17 | void MainWindow::ButtonHandler()
|
18 | {
|
19 | //create filepointer
|
20 | SNDFILE* pst_SourceFile;
|
21 | SF_INFO* pst_SourceInfo;
|
22 |
|
23 | //open File
|
24 | pst_SourceFile = sf_open( "Z:\\Audio_Projekte\\testfiles\\file1.wav" , SFM_READ, pst_SourceInfo) ;
|
25 |
|
26 | }
|
beim übersetzen kommt aber die Fehlermeldung:
1 | Fehler:undefined reference to `sf_open'
|
Jemand eine Idee woran das liegen könnte oder was ich noch machen muss
um die Bibliothek zu verwenden?
In der Projektdatei wurde übrigens folgender code erstellt durch das
hinzufügen der Bibliothek:
1 | unix:!macx:!symbian|win32: LIBS += -L$$PWD/libsndfile/lib/ -llibsndfile-1
|
2 |
|
3 | INCLUDEPATH += $$PWD/libsndfile/include
|
4 | DEPENDPATH += $$PWD/libsndfile/include
|
5 |
|
6 | win32: PRE_TARGETDEPS += $$PWD/libsndfile/lib/libsndfile-1.lib
|
7 | else:unix:!macx:!symbian: PRE_TARGETDEPS += $$PWD/libsndfile/lib/liblibsndfile-1.a
|
8 |
|
9 | OTHER_FILES += \
|
10 | libsndfile/lib/libsndfile-1.lib
|