ich werd noch mal bleede mit die sch...
Ausgangslage :
ich hab cdparanoia 10.3 als quellen installiert, übersetzt und lüppt auch alles
ich hab ein kleines beispiel c-prog und linke das gegen cdparanoia - klappt auch.
Soweit so gut und hier kommt das Problem:
ich hab eine inzwischen total gestrippte Kopie des c-progs als *.cpp und angepasste Makefiles, bzw übersetze inzwischen (fast) von Hand.
Das "programm" (lt.cpp) sieht so aus:
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <string.h>
#include <sstream>
#include <getopt.h>
#include <iostream>
#include <sstream>
#include <unistd.h>
#include <linphone/config.h>
#include <linphone/linphonecore.h>
#include <linphone/lpconfig.h>
#include <cdda_interface.h>
#include <cdda_paranoia.h>
int main(int argc, char* argv[]) {
char message[256], *m = &message[0];
printf("Start\n");
cdrom_drive *cd;
printf("Version is %s\n", linphone_core_get_version());
cd = cdda_identify("/dev/cdrom", 1, &m);
printf("Ende\n");
exit(0);
}
Alles anzeigen
Das Thema "linphone" dient mir nur zur Kontrolle - das Problem habe ich nur mit cdda_interface (cdparanoia)
Es passieren jetzt im Wechsel 2 Dinge :
wenn ich bei der Übersetzung (g++) des .cpp "-shared" angebe, bekomme ich ein executeable, welches beim Start "segfault produziert" - egal, was noch im "Programm" verbleibt - und sei es nur "printf("Hello world\n");
wenn ich das weglasse, dann bekomme ich beim linken unresolved symbol für cdda_identify. Die Libs für cdparanoia liegen am gleichen Platz wie die für linphone (das dient mir der Kontrolle) - ebenso die Includes - das hinzubinden der linphone-lib funktioniert 1a!
Zusammenfassung :
ich habe Probleme die shared-libs von cdparanoia aus einem c++-Prog zu nutzen und keine Ahnung, woran es liegt - es muß zumindest auch an cdparanoia liegen, da ja lin* funzt. ich kann mit sicherheit sagen, daß cdda_identify Bestandteil von libcdda_interface ist, und daß die Lib am selben Platz liegt, wie liblin*
bin für jede (auch noch so blöde) idee dankbar, mache nämlich schon Tage dran rum.