fluid-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] pkgconfig not found


From: David Back
Subject: Re: [fluid-dev] pkgconfig not found
Date: Sun, 19 Nov 2017 14:40:58 +0000 (UTC)

Hi Tom

I am now working with version 1.1.8. which has the same linker problem as all the others.

Thanks for your reply and am interested and surprised to hear that you do not have any solution to the
linker errors.

Having done a bit of research it appears to me (and I could easily be wrong) that the problem lies
in compiling fluidsynth with a c++ compiler when the header files indicate to me that the program is written
in plain old C. (Please tell me if I am wrong.)

The linker is looking to generate extra code which initialises all the  c++  constructors it finds. (Presumably this
is the only way to initialise a .dll ). The fact that it does not find ANY constructors is probably causing the error.
(Inserting a dummy constructor may cure the problem).

I think the solution may be to compile fluidsynth with a C compiler. Does cmake have any option to force using
C rather than c++.  I tell it -G "MinGW Makefiles" (there is no other useful option) so it does not know whether
it is working with C or c++ so it goes for c++ which can (in theory) do both.

I will have to investigate portaudio. I am currently in learning mode regarding audio interfaces but it would seem
to me that fluidsynth DOES have the capability to contain ALL of the common audio interfaces (for Mac, Linux,
and Windows) and the interface it uses depends upon which one it finds first when it is run. This is documented
in fluidsynth's user documentation.

Cmake  is trying to make a working program ONLY for the system it is running on which is NOT what I want to
do. I suspect it would be best for me to write my own makefile and I can then put what I want into it. This will
avoid me trying to understand the mess (which usually does work) that cmake creates.

Best Wishes
David.


From: Tom M. <address@hidden>
To: David Back <address@hidden>
Cc: FluidSynth Mailing List <address@hidden>
Sent: Saturday, 18 November 2017, 12:35
Subject: Re: [fluid-dev] pkgconfig not found

Ok, good to hear. You should however use 1.1.8 for your testings, as the older versions are unsupported. For those linker errors I currently cant provide a solution.

> I will need some extra packages to get Pulseaudio and otherLinux and mac sound drivers incorporated.

Sry, never attempted to make pulseaudio run on windows myself.

> The whole purpose of thisexercise is to get a fluidsynth.dll which has ALL the sound drivers available so it SHOULD work on allsystems (under Wine) with minimum latency.

That would be awful job I guess, you should consider simply using portaudio, as it provides exactly that kind of abstraction.

Tom


Am Freitag, 17. November 2017, 21:20:24 CET schrieb David Back:
> Tom
> C:\MinGW32 is the correct case sensitive path, the reason for the discrepancy you foundis that I typed "dir c:\mingw32 > dir.txt" when I made the dir.txt file knowing that Windows didnot care about the case. It has printed what I typed in the file and not the actual real path.
> As far as I know c:\mingw32\bin\libglib-2.0-0.dll did come from the official mingw source -- Iupdated mingw a few days ago. I have been careful not to "corrupt" it with any of your files.
> The good news is that I have now got cmake working and it now runs to completion withouterrors. The solution was "belt and braces" I added the original complete unzipped foldersI downloaded from you into the c:\mingw32\deps\bin folder as well as the executable filesalready there (as in the directory listing I sent you).
> I have run the Makefile on fluidsynth-1.1.6, fluidsynth-1.1.7 and fluidsynth-master.
> 1.1.6 and master give a linker error "cannot find -lintl collect2.exe". The files intl.dlland collect2.exe are both in the mingw32 folder. I am not totally sure which file itcannot find because collect2.exe is in c:\mingw32\libexec\gcc\mingw32\6.3.0 andis not found when I type collect2 on the command line -- though I would expect the compilerand linker to know where it was located. intl.dll is in your deps folder Looking on Googlethis type of error is quite common but I did not find any useful solution. It is important that thiserror is cured, can you help?
> 1.1.7 has an obscure error in one of fluidsynth's  .h files and will not compile any further.It will likely have the other linker error as well. I will not bother with this version any further.
> The two files requested are attached. Your commands to make cmake.log needed a bit of adjustment but file wasmade OK. Looking at this file myself I can see that I will need some extra packages to get Pulseaudio and otherLinux and mac sound drivers incorporated. Where am I supposed to get these? The whole purpose of thisexercise is to get a fluidsynth.dll which has ALL the sound drivers available so it SHOULD work on allsystems (under Wine) with minimum latency.
> The project is an organ, you can download it from my website https:\\midimusic.github.io (its calledeplayOrgan, link on home page) and try it out yourself.
> David
>
>
>
>      From: Tom M. <address@hidden>
>  To: David Back <address@hidden>
> Cc: FluidSynth Mailing List <address@hidden>
>  Sent: Friday, 17 November 2017, 16:52
>  Subject: Re: [fluid-dev] pkgconfig not found
>   
> Ok, your environment looks good so far. The only thing that strikes me is that your %PATH% contains C:\MinGW32 but according to `dir` it should be c:\mingw32. I know dirs are case insensitive on win, but I vaguely remeber to once have used unix software on windows that enforced case sensitivity.
>
> c:\mingw32\bin\libglib-2.0-0.dll comes from mingw installation?
>
> Please post:
>
> pkg-config --list-all
>
> rmdir fluidsynth\bluid\ /s
> mkdir build
> cd build
> cmake .. > cmake.log
>
>
> Tom
>
>
>   





reply via email to

[Prev in Thread] Current Thread [Next in Thread]