www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Simple BeamUI project won't link

reply Daren Scot Wilson <darenw darenscotwilson.com> writes:
Trying out the beamui GUI package, obtained by git clone from 
github.  The "basic" example builds and runs.

So I create a new project from scratch, with "dub init beamy 
beamui" (ircc) in a directory outside beamui's, sibling to it in 
fact.  This builds and runs, but does not make use of beamui at 
all. So I copy a tiny bit from the basic example. It only 
initializes a GuiApp:

import std.stdio;
import beamui;

     int main()
     {
         GuiApp app;
         if (!app.initialize())   {
             writeln("App no init :(");
             return 1;
         }
         return 0;
     }


Here's the dub file:


     name "beamy"
     description "trying BeamUI"
     license "none"
     authors "darenw"

     targetName "beamy"
     targetType "executable"

     dependency "beamui"  path="../../beamui/"
     dependency "beamui:platforms"  path="../../beamui/platforms/"

Running "dub build" leads to compiling but no linking.  undefined 
reference to `initPlatformProxy'.  Note that this build takes 
place in a directory such that ../../beamui/ goes to the 
top-level directory for beamui. Changing the path or replacing 
'beamui' with 'beamuixxx' prevents the build from getting 
anywhere at all, so the path is right.

I compared everything with the basic example, but am either 
missing some obvious detail or have something screwed up, or 
failed to add something, or need to say some secret magic 
incantation.

I'm working on an Arch Linux machine with lots of RAM, but a user 
with not enough practice at D yet.
Dec 15 2020
next sibling parent reply Ferhat =?UTF-8?B?S3VydHVsbXXFnw==?= <aferust gmail.com> writes:
On Wednesday, 16 December 2020 at 07:02:11 UTC, Daren Scot Wilson 
wrote:
 Trying out the beamui GUI package, obtained by git clone from 
 github.  The "basic" example builds and runs.
 I'm working on an Arch Linux machine with lots of RAM, but a 
 user with not enough practice at D yet.
I have a little experience with beamui but only on windows. It is under WIP. You'd better open an issue with an error report on GitHub as I did before https://github.com/dayllenger/beamui/issues/16. You may get some help from the maintainer.
Dec 15 2020
next sibling parent reply Ferhat =?UTF-8?B?S3VydHVsbXXFnw==?= <aferust gmail.com> writes:
On Wednesday, 16 December 2020 at 07:40:45 UTC, Ferhat Kurtulmuş 
wrote:
 On Wednesday, 16 December 2020 at 07:02:11 UTC, Daren Scot 
 Wilson wrote:
 Trying out the beamui GUI package, obtained by git clone from 
 github.  The "basic" example builds and runs.
 I'm working on an Arch Linux machine with lots of RAM, but a 
 user with not enough practice at D yet.
I have a little experience with beamui but only on windows. It is under WIP. You'd better open an issue with an error report on GitHub as I did before https://github.com/dayllenger/beamui/issues/16. You may get some help from the maintainer.
This may be not your issue, but I could manage it to work by adding this line: subPackage "examples/myproject" to the dub.sdl of the beamui. I simply put my project in examples/ folder. And compile and run using: dub run :myproject
Dec 15 2020
parent reply Daren Scot Wilson <darenw darenscotwilson.com> writes:
On Wednesday, 16 December 2020 at 07:45:50 UTC, Ferhat Kurtulmuş 
wrote:
 On Wednesday, 16 December 2020 at 07:40:45 UTC, Ferhat 
 Kurtulmuş wrote:

 This may be not your issue, but I could manage it to work by 
 adding this line:

 subPackage "examples/myproject"

 to the dub.sdl of the beamui. I simply put my project in 
 examples/ folder.

 And compile and run using:

 dub run :myproject
The thought crossed my mind to try putting my source under examples/ but that's not a good way to organize a real project. I'd like it be under ~/projects/, naturally. What I want to make will involve a lot more than just a GUI.
Dec 18 2020
next sibling parent Ferhat =?UTF-8?B?S3VydHVsbXXFnw==?= <aferust gmail.com> writes:
On Friday, 18 December 2020 at 19:15:16 UTC, Daren Scot Wilson 
wrote:
 On Wednesday, 16 December 2020 at 07:45:50 UTC, Ferhat 
 Kurtulmuş wrote:
 On Wednesday, 16 December 2020 at 07:40:45 UTC, Ferhat 
 Kurtulmuş wrote:

 This may be not your issue, but I could manage it to work by 
 adding this line:

 subPackage "examples/myproject"

 to the dub.sdl of the beamui. I simply put my project in 
 examples/ folder.

 And compile and run using:

 dub run :myproject
The thought crossed my mind to try putting my source under examples/ but that's not a good way to organize a real project. I'd like it be under ~/projects/, naturally. What I want to make will involve a lot more than just a GUI.
İf you don't need a fancy look and can live with simple widgets, Adam D. Ruppe's arsd repository has minigui. On windows it uses native Win32 API, so it doesn't need any dependency. https://github.com/adamdruppe/arsd
Dec 18 2020
prev sibling parent aberba <karabutaworld gmail.com> writes:
On Friday, 18 December 2020 at 19:15:16 UTC, Daren Scot Wilson 
wrote:
 On Wednesday, 16 December 2020 at 07:45:50 UTC, Ferhat 
 Kurtulmuş wrote:
 On Wednesday, 16 December 2020 at 07:40:45 UTC, Ferhat 
 Kurtulmuş wrote:

 This may be not your issue, but I could manage it to work by 
 adding this line:

 subPackage "examples/myproject"

 to the dub.sdl of the beamui. I simply put my project in 
 examples/ folder.

 And compile and run using:

 dub run :myproject
The thought crossed my mind to try putting my source under examples/ but that's not a good way to organize a real project. I'd like it be under ~/projects/, naturally. What I want to make will involve a lot more than just a GUI.
When BeamUI is released, you wouldn't have to do that. It's still wip like you said. I've been using GTKd on Windows and Linux... including CSS styling for getting a pretty looking UI. It works just fine and gtkdcoding.com is just the learning resource for getting started.
Dec 19 2020
prev sibling parent reply Daren Scot Wilson <darenw darenscotwilson.com> writes:
On Wednesday, 16 December 2020 at 07:40:45 UTC, Ferhat Kurtulmuş 
wrote:
 On Wednesday, 16 December 2020 at 07:02:11 UTC, Daren Scot 
 Wilson wrote:
 Trying out the beamui GUI package, obtained by git clone from 
 github.  The "basic" example builds and runs.
 I'm working on an Arch Linux machine with lots of RAM, but a 
 user with not enough practice at D yet.
I have a little experience with beamui but only on windows. It is under WIP. You'd better open an issue with an error report on GitHub as I did before https://github.com/dayllenger/beamui/issues/16. You may get some help from the maintainer.
So maybe beamui isn't ready for the real world. It's a one-off personal tool for image processing, maybe will go up on Github, so I don't need anything super-solid or well established. OTOH, if it's too much on the WIP side with lots of loose ends, it might be more work than my free time allows. At least, beamui appears to be more workable than dlangui which seems to have fallen away.
Dec 18 2020
parent reply Kyle Ingraham <kyle kyleingraham.com> writes:
On Friday, 18 December 2020 at 19:14:25 UTC, Daren Scot Wilson 
wrote:
 So maybe beamui isn't ready for the real world.  It's a one-off 
 personal tool for image processing, maybe will go up on Github, 
 so I don't need anything super-solid or well established. OTOH, 
 if it's too much on the WIP side with lots of loose ends, it 
 might be more work than my free time allows.

 At least, beamui appears to be more workable than dlangui which 
 seems to have fallen away.
Did you find a GUI library to work with? I'm in the same boat as you working on a tool for image processing in my free time.
Jan 02
parent aberba <karabutaworld gmail.com> writes:
On Saturday, 2 January 2021 at 15:48:11 UTC, Kyle Ingraham wrote:
 On Friday, 18 December 2020 at 19:14:25 UTC, Daren Scot Wilson 
 wrote:
 So maybe beamui isn't ready for the real world.  It's a 
 one-off personal tool for image processing, maybe will go up 
 on Github, so I don't need anything super-solid or well 
 established. OTOH, if it's too much on the WIP side with lots 
 of loose ends, it might be more work than my free time allows.

 At least, beamui appears to be more workable than dlangui 
 which seems to have fallen away.
Did you find a GUI library to work with? I'm in the same boat as you working on a tool for image processing in my free time.
I always recommend gtkd. Its pretty good. See gtkdcoding.com for examples.
Jan 03
prev sibling parent aberba <karabutaworld gmail.com> writes:
On Wednesday, 16 December 2020 at 07:02:11 UTC, Daren Scot Wilson 
wrote:
 Trying out the beamui GUI package, obtained by git clone from 
 github.  The "basic" example builds and runs.

 [...]
When you look inside the examples folders, you'll see all the dependencies required to get it to work. I know because I had a similar issue and the developer gave me heads up. As already mentioned, beamUI isn't ready.... still work in progress.
Dec 16 2020