I've explored a bit the source files of pd-extended externals and didn't see a single one with .cpp extension available on windows, the solution I've found is ugly
#ifdef NT extern "C" __declspec(dllexport) void readanysf_tilde_setup(void) { #else extern "C" void readanysf_tilde_setup(void) { #endif
----- "Hans-Christoph Steiner" hans@at.or.at a écrit :
You only need __declspec(dllexport) for the Windows linker. MinGW
doesn't need it. That template Makefile is used in many external
libraries included in Pd-extended, therefore it works for many many
objects on Windows..hc
On Apr 28, 2011, at 12:45 PM, Patrice Colet wrote:
I even tried to put manually:
__declspec(dllexport) void readanysf_tilde_setup(void)
but still same error pd can't read it, there is nothing else I can
do,
someone with better knowledge of makefile should look at it.
attached is attempt to rewrite a makefile that compiles on mingw,
and that would be easy to adapt for linux and osx, it's inspired from gridflow/Makefile----- "august" august@alien.mur.at a écrit :
I did notice that in externals/frankenstein/Makefile, it does this for Visual Studio:
link /dll /export:$*_setup $*.obj common.obj $(PDNTLIB)
Are extra linking directives necessary for mingw externals?
As for C++ files and the template Makefile, you might be able to
just
set "CC=cpp" somewhere before it starts the compile
Would be great to FINALLY get this thing going in windows. :)
still doesn't recognize readanysf_tilde_setup even with
-Wl,--enable-auto-import
by defining -DMSW in CFLAGS the compiler should read this macro
in
m_pd.h:
#define EXTERN __declspec(dllimport) extern
but it doesn't
is there a more explicit template makefile for cpp sources?
the only working example that work I can get is from gridflow but
it's so tricky,
sources are processed with ruby before being compiled by g++
----- "august" august@alien.mur.at a écrit :
Patrice,
Here is a new Makefile that I made looking at the template
base.
I think this should take care of exporting the tilde_setup
symbol.
again, doing it blindly...so there may be errors.
-august.
After resolving two dozens undefined references I finally have
readanysf compiled.
Curiously gmerlin_avdec needs a prepended link of each used
library.
The link flags must be at the end, like in attached file.
I had to copy missing dll's into pd/bin along with other libs
provided py pd-extended and gridflow,
libdca-0.dll libgavl-1.dll libiconv-2.dll libintl-8.dll
libtheora-0.dll lib-tiff-3.dll
it seems it's still not the good way to compile because pd
complains:
load_object: Symbol "readanysf_tilde_setup" not found
----- "august" august@alien.mur.at a écrit :
> Yeah perhaps it will be easier with the pd-extended makefiles.
I
> really > have no idea how windows handles linking and I also don't
have
> experience with pd-extended builds. > > > One problem you might have with my makefile that I didn't see
before
> is > that I test to see if the system is linux. If so, I set
appropriate
> flags. If not, I assume you have a mac and set other flags. > > > I've attached a Makefile.win that might work for you. I made
it
> blindly > since I don't have a windows setup. > > You should only need to edit these two lines: > GAVLPREFIX=/usr/local > PD_INCLUDES=/usr/include > > Maybe something else is needed, but I can't say. It should
be
simple
> enough to build from. > > best -august. > > > >> I've tried to hack the makefile but have pain to get it
compiling
> the dll because of linking problems... >> I guess it would be easier by using pd-extended externals
Makefile
> for resolving differences between os >> >> ----- "august" august@alien.mur.at a écrit : >> >>> well, if you already have gavl and gmerlin-avdecoder, you
should
> only >>> need to download and compile readanysf~ >>> >>> the Makefile is there already. If I am not mistaken, you
would
> only >>> need to copy and modify the pd_linux target so that it
creates
a
>>> readanysf~.dll instead of a readanysf~.pd_linux >>> >>> ...and then package it in a bundle so that it is usable
for
> windows >>> users. ...that will be the hard part I imagine. >>> >>> >>>> Hello, I've applied this patch then gmerlin-avdecoder
compiles
> fine >>> on mingw >>>> >>>> >>> >
http://www.mail-archive.com/gmerlin-general@lists.sourceforge.net/msg00322.h...
>>>> >>>> now we need the makefile ;) >>>> >>>> ----- "Hans-Christoph Steiner" hans@at.or.at a écrit
:
>>>> >>>>> We just need someone to get all of the required
libraries
> building >>> on >>>>> Windows/MinGW. gmerlin-avdecoder is required, then
the
more
>>> codec >>>>> libs, >>>>> the better, but it'll work without any of them, it
just
won't
> open >>> as >>>>> many files. Once we have that, making a Windows build
of
>>>>> [readanysf~] >>>>> will be easy. >>>>> >>>>> .hc >>>>> >>>>> On Wed, 27 Apr 2011 13:56 +0200, "matteo sisti sette" >>>>> matteosistisette@gmail.com wrote: >>>>>> Hi, >>>>>> >>>>>> Is there anything similar to readanysf~ available
for
> Windows? >>> I >>>>> would >>>>>> like to be able to read the audio from mov video
files.
>>>>>> >>>>>> I've found some very old threads about failed
attempts
to
> port >>>>>> readanysf~ to windows. >>>>>> Has there been any success since then? Anybody that
has
> been >>> able >>>>> to >>>>>> compile it for windows and could share the compiled
binary?
>>>>>> >>>>>> Or any similar external? >>>>>> >>>>>> thanks >>>>>> m. >>>>>> >>>>>> -- >>>>>> Matteo Sisti Sette >>>>>> matteosistisette@gmail.com >>>>>> http://www.matteosistisette.com >>>>>> >>>>>> _______________________________________________ >>>>>> Pd-list@iem.at mailing list >>>>>> UNSUBSCRIBE and account-management -> >>>>>> http://lists.puredata.info/listinfo/pd-list >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Pd-list@iem.at mailing list >>>>> UNSUBSCRIBE and account-management -> >>>>> http://lists.puredata.info/listinfo/pd-list >>>> >>>> -- >>>> Patrice Colet >>>> >>>> _______________________________________________ >>>> Pd-list@iem.at mailing list >>>> UNSUBSCRIBE and account-management -> >>> http://lists.puredata.info/listinfo/pd-list >>> >>> -- >>> ------------------- >>> http://aug.ment.org >> >> -- >> Patrice Colet >> >> _______________________________________________ >> Pd-list@iem.at mailing list >> UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list > > -- > ------------------- > http://aug.ment.org
-- Patrice Colet
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
--
-- Patrice Colet
--
-- Patrice Colet <Makefile.win>
Looking at things from a more basic level, you can come up with a more
direct solution... It may sound small in theory, but it in practice,
it can change entire economies. - Amy Smith