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

Onboarding dlang noob test #883

Closed
12 tasks done
p0nce opened this issue Nov 27, 2024 · 4 comments
Closed
12 tasks done

Onboarding dlang noob test #883

p0nce opened this issue Nov 27, 2024 · 4 comments
Labels
Documentation This issue is about documentation. Enhancement This issue is about a new feature rather than a bug. Mental load Is related to API usability.

Comments

@p0nce
Copy link
Collaborator

p0nce commented Nov 27, 2024

Paid someone to onboard on Dlang + Windows + Dplug and see what happens. Well it was interesting to say the least.

List of problems encountered:

  • in current dplug.org, Getting Started is at the end, it should be on top => fixed in new website
  • did find How to start wiki page
  • did find our tutorial here https://p0nce.github.io/d-idioms/#Installing-Dlang-on-Windows
    • HOWEVER the Table Of Contents led him to chase downloads instead of following the tutorial instructions, remove that
    • AND following the instructions is long especially in the VS selection screen but works
  • suggest if DMD isn't mandatory, remove its mention in the Wiki
  • in the Wiki, single-line command-line starting with $ are annoying when you copy paste. Only useful for multilines.
  • EVERY LDC executable are blocked by antivirus, report the false positives => Can't download LDC 1.39 from Chrome or Brave ldc-developers/ldc#4794 => reported 4 false detections
  • Founds its way to the VisualD installer, which installs a C++ runtime, but expected to find LDC somewhere and don't know where it is. Installed LDC from GitHub anyway, which worked. Probably shouldn't mention VisualD at all? I have no idea where VisualD installs LDC either. => is it recommended by Stephane? => yes => no particular issue
  • say he doesn't know where VisualD installer puts LDC. I don't know either.
  • and then it didn't build since missing some functions. This issue solved by download VS Community 2022 installer and running it, but needed outside intervention to know.=> adapted FAQ
  • But rated the onboarding as "I've seen worse by far"

End Result
In the end, was able to build a dlang executable but not a plugin due to missing libcmt.lib
Not sure if static C++ runtime installed at all.

So right now it's almost impossible to try Dplug on Windows if you're not already deep in D.

@p0nce p0nce added Enhancement This issue is about a new feature rather than a bug. Documentation This issue is about documentation. Mental load Is related to API usability. labels Nov 27, 2024
@p0nce
Copy link
Collaborator Author

p0nce commented Nov 28, 2024

Why we static link on Windows? it's because it seems Phobos and LDC can become dynlinked themselves.
Else Luna says there isn't much reasons since Windows changes in 2017 to static link vcruntime

@p0nce
Copy link
Collaborator Author

p0nce commented Nov 29, 2024

@hadrien-thomas-dev
Copy link

hadrien-thomas-dev commented Nov 29, 2024

Here is the summary of this afternoon session

  • Show at the end of the build example session what is and where to find the output of the build ak .vst in ./builds
  • Add a section: create your first plugin and suggest to copy paste template and go to gui.d
  • I got a misleading error saying info: Missing "licensePath" in plugin.json (eg: "license.txt") it was in fact a problem with pluginUniqueID and vendorUniqueID format => bundled the license with each example instead of pointing in parent directory
  • Maybe edit the template plugin to show a text like Greetings in your plugin, this is its content with a specific background (not blank) to help identify which is which in terms of UI
  • The distort plugin and template plugin do not share the same folder and files structure. It would be a plus to match them because we copy template and then get some snippets from the other real exemple plugins like distort
  • I did not succeed in making all template occurrences disappear: I still have template.lib, template.pdb et template.exp. No explanation on why. I put the verbose build at the end of the comment if it helps => Windows LINK.EXE => uselessly show .lib and .exp? dlang/dub#2979 => explain why they are there, because a few of them believe are just confusion => people seem not to care in the Dplug discord => used targetPath to avoid pollution
  • I succeeded in generating my first plugin but I struggled on the next step like adding some text or buttons. Is there an API?
...stripped...
Copying target from C:\Users\thoma\AppData\Local\dub\cache\template\~master\build\VST3-debug-r3220VnsYVu-RaJyOI0dig\template.dll to C:\Users\thoma\projects\Dplug\examples\dhibou
Copying target from C:\Users\thoma\AppData\Local\dub\cache\template\~master\build\VST3-debug-r3220VnsYVu-RaJyOI0dig\template.pdb to C:\Users\thoma\projects\Dplug\examples\dhibou
Copying target from C:\Users\thoma\AppData\Local\dub\cache\template\~master\build\VST3-debug-r3220VnsYVu-RaJyOI0dig\template.lib to C:\Users\thoma\projects\Dplug\examples\dhibou
Copying target from C:\Users\thoma\AppData\Local\dub\cache\template\~master\build\VST3-debug-r3220VnsYVu-RaJyOI0dig\template.exp to C:\Users\thoma\projects\Dplug\examples\dhibou

@p0nce
Copy link
Collaborator Author

p0nce commented Dec 2, 2024

Everything solved so far.

@p0nce p0nce closed this as completed Dec 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation This issue is about documentation. Enhancement This issue is about a new feature rather than a bug. Mental load Is related to API usability.
Projects
None yet
Development

No branches or pull requests

2 participants