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: Tue, 21 Nov 2017 11:50:24 +0000 (UTC)

Tom

EXTRA EXTRA Later additional response to your previous email.

I have now downloaded and installed libintl-0.14.4 and put its bin
folder on the PATH. This folder contains libconv2.dll and libintl3.dll

With this in place I have tried all of your three cmake options starting
from an empty build folder each time. The linker error is exactly the
same as before.

It looks as if my experience of failure to compile and link fluidsynth on a
Windows system continues.

Can you please put me in touch with the person you said has succeeded
as I would like to know how and when he did it.

It would seem to me that older versions of fluidsynth may be better
than new versions which appear have a lot of unnecessary features
and fail to include some of the more useful features.

How many people are there who want to give fluidsynth command line
text in Chinese?

David



From: Tom M. <address@hidden>
To: David Back <address@hidden>; FluidSynth Mailing List <address@hidden>
Sent: Monday, 20 November 2017, 14:30
Subject: Re: [fluid-dev] pkgconfig not found

Regarding the build log, I dont see why you think it uses c++ as linker. It correctly calls gcc.exe, line 15. Still strange that it doesnt find libintl although it should be in %path%. Have no further ideas so far.

> Are these cmake -D options? I will try them later.Do you mean for example "cmake -DCMAKE_LINKER=gcc.exe"

Anyway, yes, that would be the correct useage.


Even if you manage it to get "appropriate header files" for all audio drivers, against which libraries would you link in order to create that single dll, given the fact that alsa, oss and coreaudio are not available on windows?


Tom

Am Montag, 20. November 2017, 12:58:14 CET schrieb David Back:
>
> Tom
> Herewith attached the build.log as requested. I had to redirect stderr to the file as well otherwise the interestingbit was not recorded in the file.
> I do not understand your CMAKE_LINKER etc. Are these cmake -D options? I will try them later.Do you mean for example "cmake -DCMAKE_LINKER=gcc.exe"
> Compiling support for other (foreign to windows) sound systems is just a matter of using the appropriateheader files. No problem at all. I am already compiling similar support for foreign midi inputs into my project.Obviously it wont use the interfaces when the program is run on windows but it can use them when it isrun on other operating systems. Read the fluidsynth user documentation and read up about, or even trymy eplayOrgan which uses four instances of fluidsynth. See https://midimusic.github.io/and can redirect each output to a different sound driver.
> eplayOrgan will run on ANY system as supplied, without any recompiling or other changes.
> Good luck with the build.log
> David
>      From: Tom M. <address@hidden>
>  To: David Back <address@hidden>
> Cc: address@hidden
>  Sent: Sunday, 19 November 2017, 15:57
>  Subject: Re: [fluid-dev] pkgconfig not found
>   
> It uses c++ as linker? No matter 1.1.6, 1.1.7 or master? Shouldnt happen. I think it's time for a full build log:
>
> cmake -DCMAKE_VERBOSE_MAKEFILE=1 ..
> make > build.log
>
> You can try setting these cmake variables to gcc.exe
> CMAKE_LINKER
> CMAKE_C_LINK_EXECUTABLE
> CMAKE_CXX_LINK_EXECUTABLE
>
> > Cmake is trying to make a working program ONLY for the system it is running on which is NOT what I want to do.
>
> But this is exactly how cross platform deployment works. I dont understand why you want to bundle all audio drivers (even foreign ones) in a single dll. Think about it: How would you compile fluidsynth with ALSA or OSS support on windows? The ABI and calling conventions between different OSs vary. I dont see how this could work.
>
> And unless you want to privately fork fluidsynth, writing a custom makefile is IMO the worst choice you could make. If upstream changes anything related to the buildsystem your build will break.
>
> Tom
>
>
> Am Sonntag, 19. November 2017, 15:40:58 CET schrieben Sie:
> > 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 thelinker errors.
> > Having done a bit of research it appears to me (and I could easily be wrong) that the problem liesin compiling fluidsynth with a c++ compiler when the header files indicate to me that the program is writtenin 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 thisis 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 usingC rather than c++.  I tell it -G "MinGW Makefiles" (there is no other useful option) so it does not know whetherit 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 seemto 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 documentedin 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 todo. I suspect it would be best for me to write my own makefile and I can then put what I want into it. This willavoid me trying to understand the mess (which usually does work) that cmake creates.
> > Best WishesDavid.
> >
> >      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
>
>
>
>   





reply via email to

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