1

Je cherche une librairie pour le C qui permettrait de jouer des musiques .XM en fond sonore lors de l'exécution d'un programme (Y'a la solution de lancer Winamp à côté mais bon...), mais qui ne sert pas de DirectX...

Ça existe ça ?

2

Edited_763

3

fmod ? (je sais plus si elle lit les .xm mais il me semble que oui)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

4

J'ai trouvé une lib mais elle utilise DirectX... 9.

Bon à la rigueur pour une version obsolète de DirectX tongue

cross, mici bob

5

Edited_764

6

Arf, pourvu qu'elle se sert pas de DirectX 9 (parce que ça me ferait chier de programmer quelque chose qui tournerait sur un ordi dont l'hardware n'est pas prévu pour DirectX 9 (Le jeu que j'ai publié dans mon blog je l'ai codé alors qu'Allegro foirait sur mon ordi tripo))

7

Edited_765

8

minifmod est ton ami

9

tout a fait, avec minifmod, ca roule smile

bien plus pratique que fmod, et ne lit que les XM, permet d'avoir un prog sans la dll de fmod smile
avatar
pourquoi la mort ? parce qu'elle nous est si douce, au contraire de la vie :)

10

!up

J'ai installé FMOD, mais à la compilation avec Dev-C++, il m'indique des "[Linker Error] : unsolved reference to FMOD_System_Create@4" et autres consorts sad (J'ai bien inclus le <fmod.h>, il reconnaît bien les fonctions que j'appelle, mais je ne comprends pas pourquoi le compilo me rajoute des @4 ou @16 confus)

11

name mangling.
tu compiles avec un compilateur C ou C++ ?
comment sont déclarées les fonctions que tu utilises ?

12

le 4 et 16 correspondent aux nombres de parametres passés en parametres a cette fonction. 4 = 1 parametres 16 = 4*4 donc 4 parametres.
Bon j'espere que tu n'as pas compilé la dll avec une lib coff construite sous visual c car cette derniere n'a pas le meme format que celle generee via gcc.
Pour ton message d'erreur c'est qu'il ne trouve pas la lib adequat a la compilation pour linker ton prog. Voila
Bye

13

Edited_766

14

Ben oui mais s'il code en c++ il a pas trop le choix hein....

15

Edited_767

16

heu oui ça serait plutot une histoire de .a qui n'a pas été ajouté au link, les @machin ne devraient pas poser problème après happy
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

17

libfmod je dirais plutot que fmod de tete car le gcc repere ses libs avec le prefixe libquelquechose.a ...

Au fait spectras, ce n'est pas ca le name mangling au fait. grin Bref c'est pas important. grin

18

Je tiens à préciser que je code en C happy

spectras> FMOD_System_Create(*system); par exemple
skweek> La lib est déjà compilée, donc ça va happy
Orion_> Euh, bah euh, oups grin Merci du tuyau grin

19

Au fait spectras, ce n'est pas ca le name mangling au fait. Bref c'est pas important.
Pas quoi *ça* ? hum
le gcc repere ses libs avec le prefixe libquelquechose.a ...
Pas forcément. Le préfixe comme le suffixe sont configurables lors de la compilation (de gcc ou des binutils, je me souviens jamais).

20

Tu as du mal...

Relis ta phrase suivant le post de napo expliquant son probleme de compilation avec lib fmod et cie.... Donc ce n'est pas du name mangling cqfd le @4 @16 , c'est la signature des fonctions.

Pour gcc, possible... De toute facon, je ne l'utilise pas courament.

21

naPO :
Je tiens à préciser que je code en C happy

spectras> FMOD_System_Create(*system); par exemple
skweek> La lib est déjà compilée, donc ça va happy
Orion_> Euh, bah euh, oups grin Merci du tuyau grin


Oue ok, donc faut lier l

22

skweek :
naPO :
Je tiens à préciser que je code en C happy

spectras> FMOD_System_Create(*system); par exemple
skweek> La lib est déjà compilée, donc ça va happy
Orion_> Euh, bah euh, oups grin Merci du tuyau grin


Oue ok, donc faut lier avec libfmod. Si mes souvenirs sont bons, tu dois aller dans les options de compilations et ajouter -llibfmod ou -lfmod et ca sera good.
Si tu utilises mingw en ligne de commandes c'est presque la meme chose sauf que tu devras saisir le -lfmod ou -llibfmod au moment de la comil via gcc.


23

Edited_768

24

Tu as raison, je perds mon temps a repondre aux posts qui m'interessent pas et surtout parler de gcc ca me donne des boutons. smile

25

Relis ta phrase suivant le post de napo expliquant son probleme de compilation avec lib fmod et cie.... Donc ce n'est pas du name mangling cqfd le @4 @16 , c'est la signature des fonctions.
C'est quoi le name mangling à ton avis ?

Et je peux même te dire qu'il compile avec une convention d'appel de type stdcall.
En tous cas, son code à lui essaie d'appeler fmod avec cette convention.

D'où ma question sur comment les fonctions sont déclarées, vu que la convention d'appel peut être modifiée par des directives.
Tu as du mal...
pom pom pom...

26

C'est bon vous etes des gros boss, j'ai compris... Allez tchao

27

@4 et @16 c'est du name mangling C sous Windows
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_core_argument_passing_and_naming_conventions.asp

En C++, on aurait eu droit à du ?fonction@@blabla@&é"*$è'è*
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

28

(juste un petit message pour skweek)

Nan mais ça arrive à tout le monde de pas savoir, ou de dire des bêtises parce qu'on se souvient mal d'un truc, qu'on a mal interpreté une doc ou que ça fait longtemps qu'on n'a pas revu le sujet. Si tu cherches un peu sur le forum, tu devrais pas avoir de mal à trouver quelques posts où j'ai dit de grosses conneries, même si j'essaie d'éviter autant que possible.

La différence, c'est que je les agrémente pas de "Tu as du mal..."
Parce que là forcément tu prends les gens de haut, ce qui n'est jamais très bien vu, a fortiori par les premiers concernés. Alors forcément si en plus tu n'es pas sûr à 100% de ce que tu affirmes, tu prends le risque d'une réplique bien sentie. Et je n'ai même pas été méchant.

Sans rancune. happy

29

Link :
@4 et @16 c'est du name mangling C sous Windows
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclang/html/_core_argument_passing_and_naming_conventions.asp

En C++, on aurait eu droit à du ?fonction@@blabla@&é"*$è'è*

Le pire dans ce genre de truc, reste encore les DLLs qui n'ont pas été "bien faites" et donc les nom exporté sont celle lié généré par le mangling couic

Va sortir une liste propre des fonctions exporté quand ta 15000 ?fonction@@blabla@&é"*$è'è* couic
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

30

Pour spectras :
Non, je connais rien et je suis idiot.
Quand a savoir, comment je formule mes argumentations cela ne regarde que moi et moi seul.
Si je derape, les moderateurs se chargeront de mon cas.
Je clos cette fois mon propos, pas la peine de surrenchir, je n'y pretais pas attention.