Skip to content

Pub package manager does not handle native extensions #250

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

Closed
DartBot opened this issue Jun 5, 2015 · 2 comments
Closed

Pub package manager does not handle native extensions #250

DartBot opened this issue Jun 5, 2015 · 2 comments
Labels
closed-duplicate Closed in favor of an existing report type-bug Incorrect behavior (everything from a crash to more subtle misbehavior)

Comments

@DartBot
Copy link

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/4905639?v=3" align="left" width="96" height="96"hspace="10"> Issue by whesse
Originally opened as dart-lang/sdk#6290


I don't think that pub will correctly manage and download the native extension shared libraries for a Dart extension. These are typically dart libraries with an import statement like

import("dart-ext:foo"),

which makes the standalone Dart binary load a library named foo.dll, libfoo.so, or libfoo.dylib, and run the initialization routine. To distribute these packages, pub would have to download the appropriate native library to the package cache.

This is also blocked on proper handling of the package: prefix in the URL of the importing library, when figuring out the path of the native shared library from the (relative) path in the dart-ext: import. This is issue dart-lang/sdk#6264.

@DartBot
Copy link
Author

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/2311549?v=3" align="left" width="48" height="48"hspace="10"> Comment by mezoni


Once again you are part approach to solving this problem.
I'll give a little hint.

At what host machine they will be compiled and linked?
Not all operating systems are free.

Not everyone can be on your machine have a different number of platforms.

I think that soon you will not solve this problem.

Unless, of course, will not be found any suitable solution. Compromise.

Or do you have a deck of cards with a more than four aces.

@DartBot
Copy link
Author

DartBot commented Jun 5, 2015

<img src="https://avatars.githubusercontent.com/u/5479?v=3" align="left" width="48" height="48"hspace="10"> Comment by sethladd


Added Duplicate label.
Marked as being merged into #39.

@DartBot DartBot added type-bug Incorrect behavior (everything from a crash to more subtle misbehavior) closed-duplicate Closed in favor of an existing report Priority-Medium labels Jun 5, 2015
@DartBot DartBot closed this as completed Jun 5, 2015
sigurdm pushed a commit to sigurdm/pub that referenced this issue Nov 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
closed-duplicate Closed in favor of an existing report type-bug Incorrect behavior (everything from a crash to more subtle misbehavior)
Projects
None yet
Development

No branches or pull requests

1 participant