website icon indicating copy to clipboard operation
website copied to clipboard

'Developing packages' should reference instructions for installing LLVM

Open maBarabas opened this issue 1 year ago • 0 comments

Page URL

https://docs.flutter.dev/packages-and-plugins/developing-packages/

Page source

https://github.com/flutter/website/tree/main/src/packages-and-plugins/developing-packages.md

Describe the problem

LLVM must be installed for ffigen to work, but this is not explained anywhere on the page. The page asks me to run dart run ffigen --config .\ffigen.yaml which then results in an error:

[SEVERE] : Couldn't find dynamic library in default locations.
[SEVERE] : Please supply one or more path/to/llvm in ffigen's config under the key 'llvm-path'.
Unhandled exception:
Exception: Couldn't find dynamic library in default locations.
#0      findDylibAtDefaultLocations (package:ffigen/src/config_provider/spec_utils.dart:456:3)
#1      Config._getSpecs.<anonymous closure> (package:ffigen/src/config_provider/config.dart:230:29)
#2      Config._extract (package:ffigen/src/config_provider/config.dart:216:50)
#3      new Config.fromYaml (package:ffigen/src/config_provider/config.dart:171:17)
#4      getConfigFromCustomYaml (package:ffigen/src/executables/ffigen.dart:120:17)
#5      getConfig (package:ffigen/src/executables/ffigen.dart:69:14)
#6      main (package:ffigen/src/executables/ffigen.dart:47:14)
#7      _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:294:33)
#8      _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:189:12)

I see now that there is already a link to the pub.dev page of ffigen, but I don't see any reason to click this with the current text on the page. It should be more explicit that there are install instructions for ffigen behind that link.

Expected fix

https://pub.dev/packages/ffigen#installing-llvm should be referenced in section Step 3: Binding to native code

Additional context

No response

I would like to fix this problem.

  • [ ] I will try and fix this problem on docs.flutter.dev.

maBarabas avatar Nov 02 '23 10:11 maBarabas