Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

location of pd.dll when cross-compiling #45

Closed
umlaeute opened this issue Jun 8, 2017 · 5 comments
Closed

location of pd.dll when cross-compiling #45

umlaeute opened this issue Jun 8, 2017 · 5 comments

Comments

@umlaeute
Copy link
Contributor

umlaeute commented Jun 8, 2017

are you really promoting to install the pd.dll required for compiling Pd-externals for W32 into /usr/include/pd/ when cross-compiling?

a more appropriate (default) location would be /usr/lib/i686-w64-mingw32/ (when using i686-w64-mingw32-gcc as cross-compiler). at least on a Debian system this is the designated are for "foreign arch" libraries (other distros may vary)

@sletz
Copy link
Member

sletz commented Jun 13, 2017

So if "other distros may vary" what are we supposed to do? Is there any real generic location that would be more appropriate?

@umlaeute
Copy link
Contributor Author

no, I don't think that there is a generic installation directory for w32 dlls on linux systems (which is fair enough: there isn't even a generic installation directory for w32 dlls on windows systems).

however, there are a few places which I think are definitely wrong, and /usr/include is quite on top of this list.

  • use a directory that is not in contradiction to the Filesytem Hierarchy Standard
  • possibly use a directory that matches the location of other dlls on your linux system.
  • make it configurable (either via some configuration file or via an environment variable, or both)

@umlaeute
Copy link
Contributor Author

so here's a suggestion:

  • use a PDBINPATH (or FAUST_PDBINPATH) variable
  • use a sane default value like /usr/lib/i686-w64-mingw32/pd/
  • have faust2w32puredata include faustpath (after setting the variable to the default value; before using it)
  • have faustpath include optional configuration files: /etc/faust/defaults and ~/.faust/defaults (if you allow both system-wide and per-user config, allow the per-user configuration to override the system-wide config, by including it later)
  • in these config-files you (and any potential user of faust2w32puredata) can adjust the actual installation path to match their system (and distribution packagers might provide defaults in the system-wide config that matches the distribution expectations.
  • rinse and repeat for other cross-compilation targets

@sletz
Copy link
Member

sletz commented Jun 13, 2017

Thanks but well... either you can can send us a patch to do all this stuff, or just forget packaging this faust2w32puredata script...

@umlaeute
Copy link
Contributor Author

i'll come up with a patch...

umlaeute added a commit to umlaeute/faust that referenced this issue Jun 13, 2017
@sletz sletz closed this as completed in 3d9485d Jun 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants