Hey,
I'm trying not to get frustrated, seeing how posts like this one (on compiling externals for Windows) are either ignored or answered way too cryptically:
http://lists.puredata.info/pipermail/pd-list/2007-06/051182.html
I posted a similar question to the "PURE DATA forum~" a few days ago, and so far it too has gone unanswered:
http://puredata.hurleur.com/sujet-1029-problem-compiling-external-windows
Is compiling an external for Windows so mysterious that no one knows how to do it? The responses that I've seen so far usually amount to "well this is how it's done on linux, try changing this to that and maybe it'll work". The famous external tutorial ( http://iem.at/pd/externals-HOWTO/ ) looks very interesting, but it does me no good without knowing how to get from .c to .pd ...
The request is simple: List the steps required (without skipping any!) to take the C source file "helloworld.c" and make it into a usable object in pd.
Someone, please, help me out. Also feel free to tackle the other specific questions in my forum~ post. I'm sure there are plenty of other confused Windows programmers out there.
Thanks.
Mark Polesky wrote:
Hey,
hi.
unfortunately i am not in the position on fullfilling your request, but i'll give it another "cryptic" try...
The famous external tutorial ( http://iem.at/pd/externals-HOWTO/ ) looks very interesting, but it does me no good without knowing how to get from .c to .pd ...
the externals howto's examples are checked in at the sourceforge cvs, they come with a makefile which should be useable on windows too.
The request is simple: List the steps required (without skipping any!) to take the C source file "helloworld.c" and make it into a usable object in pd.
haha.
have you tried any online resources: e.g. http://puredata.info/docs/developer lists at least 2 pages that only deal with compiling on windows (http://puredata.info/docs/developer/mingw which basically deals with compiling pd itself on windows; but once you are there, it is simple; http://nul.jp/2002/pd_bc deals with compiling externals with the borland-compiler).
i can give you a step-by-step guide for compiling zexy though (but mind that this is how i _remember_ it; i will not go and search for a windows machine with VC installed just to verify each step).
ftp://ftp.iem.at/pub/pd/Externals/ZEXY/)
folder; this should open VC
locale) and change the settings to match your setup (mainly these are the paths to find pd's headers and libraries; you should basically go through every item in the settings for the "release" and/or "debug" builds; the most important stuff is in "compiler->preprocessor", "compiler->path" and "linker->path"
(return to item-6) or the project is a bit out-of-date; the latter basically means, that the c-files to be included have not been updated; to fix this, just delete all the c-files from the project file browser (here this used to be un the left-side of the project-window), then right click on the folder in the project file browser that used to contain these files and select "add"; in the openpanel choose all c-files in zexy/src and hit "OK"
mind, that you must not use the dll while it is created (best close pd)
if you want step-by-step instructions for vc7, vc2000, vc2006 and vc3000, please send them to me and i'll give it a go :-) (dev-elitarism again)
pd comes with some externals (e.g. the foo-stuff, or [fiddle~]) and uses makefiles to build these. for this to work, you have to setup your environment correctly:
favourite text-editor and correct all the paths that are wrong
these lines; it was a .bat-file which would set your envirnment variables when run; more modern incarnations might do without the .bat
your compiler-incarnation
if nmake, cl, link cannot be found, you might want to add the paths to them to your PATH variable.
any more questions?
fmga.dr IOhannes
Mark Polesky wrote:
Hey,
I'm trying not to get frustrated, seeing how posts like this one (on compiling externals for Windows) are either ignored or answered way too cryptically:
http://lists.puredata.info/pipermail/pd-list/2007-06/051182.html
I guess they get answered over and over again and then forgotten over and over again.
I posted a similar question to the "PURE DATA forum~" a few days ago, and so far it too has gone unanswered:
http://puredata.hurleur.com/sujet-1029-problem-compiling-external-windows
Is compiling an external for Windows so mysterious that no one knows how to do it? The responses that I've seen so far usually amount to "well this is how it's done on linux, try changing this to that and maybe it'll work". The famous external tutorial ( http://iem.at/pd/externals-HOWTO/ ) looks very interesting, but it does me no good without knowing how to get from .c to .pd ...
There really should be a section in that HOWTO for compiling on the different OSs.
The request is simple: List the steps required (without skipping any!) to take the C source file " helloworld.c" and make it into a usable object in pd.
If you're on some kind of MSVC, you set up a project to build a dll, in "preprocessor defines" define MSW, in "additional include paths" include the path to pd/src/m_pd.h, link with pd.lib from pd/bin, and in the linker command line add "/export:yourexternal_setup" to export the setup function. All the other functions in your code can be static and don't need to be exported. After it builds you take the dll from the release folder and put it in your pd/extra folder. That should be everything you need, but if it's too cryptic I can go into more detail...
Martin
On Jun 27, 2007, at 3:17 PM, Martin Peach wrote:
Mark Polesky wrote:
Hey,
I'm trying not to get frustrated, seeing how posts like this one (on compiling externals for Windows) are either ignored or answered way too cryptically:
http://lists.puredata.info/pipermail/pd-list/2007-06/051182.html
I guess they get answered over and over again and then forgotten over and over again.
Yes, this is sad but true. It would be nice to have all this
information gathered into the docs wiki so it would be easy to find.
Please, everyone, feel free to add to this section of the website.
Don't worry too much about how it looks, think wiki style. It's
better to have messy or incomplete info than none at all.
.hc
I posted a similar question to the "PURE DATA forum~" a few days ago, and so far it too has gone unanswered:
http://puredata.hurleur.com/sujet-1029-problem-compiling-external- windows
Is compiling an external for Windows so mysterious that no one knows how to do it? The responses that I've seen so far usually amount to "well this is how it's done on linux, try changing this to that and maybe it'll work". The famous external tutorial ( http://iem.at/pd/externals-HOWTO/ ) looks very interesting, but it does me no good without knowing how to get from .c to .pd ...
There really should be a section in that HOWTO for compiling on the different OSs.
The request is simple: List the steps required (without skipping
any!) to take the C source file " helloworld.c" and make it into a usable object in pd.If you're on some kind of MSVC, you set up a project to build a
dll, in "preprocessor defines" define MSW, in "additional include paths"
include the path to pd/src/m_pd.h, link with pd.lib from pd/bin, and in the linker command line add "/export:yourexternal_setup" to export the
setup function. All the other functions in your code can be static and don't need to be exported. After it builds you take the dll from the release folder and put it in your pd/extra folder. That should be everything you need, but if it's too cryptic I can go into more detail...Martin
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/ listinfo/pd-list
¡El pueblo unido jamás será vencido!
Martin Peach <martin.peach <at> sympatico.ca> writes:
If you're on some kind of MSVC, you set up a project to build a dll, in "preprocessor defines" define MSW, in "additional include paths" include the path to pd/src/m_pd.h, link with pd.lib from pd/bin
I had a bit of problems finding those m_pd.h and pd.lib files.
From the puredata forum I found out, that pd-extended users need to download at
least the m_pd.h from: http://pure-data.cvs.sourceforge.net/*checkout*/pure-data/pd/src/m_pd.h
(Link to the original forum-post: http://puredata.hurleur.com/viewtopic.php?pid=4107#p4107 )
I still don't know where to get the pd.lib file, since it seems not to be in my pd/bin folder??
Cheers,
-JoGi
Antti Poikola wrote:
Martin Peach <martin.peach <at> sympatico.ca> writes:
If you're on some kind of MSVC, you set up a project to build a dll, in "preprocessor defines" define MSW, in "additional include paths" include the path to pd/src/m_pd.h, link with pd.lib from pd/bin
I had a bit of problems finding those m_pd.h and pd.lib files.
From the puredata forum I found out, that pd-extended users need to download at
least the m_pd.h from: http://pure-data.cvs.sourceforge.net/*checkout*/pure-data/pd/src/m_pd.h
(Link to the original forum-post: http://puredata.hurleur.com/viewtopic.php?pid=4107#p4107 )
I still don't know where to get the pd.lib file, since it seems not to be in my pd/bin folder??
What I did was get a version of pd from Miller's site. It has m_pd.h in pd/src and pd.lib in pd/bin. pd extended doesn't seem to have pd.lib in it, or even the src folder. This one should have everything you need: http://crca.ucsd.edu/~msp/Software/pd-0.40-2.msw.zip Martin