digitalmars.D.dwt - harmonia & build
- Hasan Aljudy (430/430) Mar 10 2006 build expects to see a "main" function inside the file sent to it thru
- Andrew Fedoniouk (16/23) Mar 11 2006 1) Windows GUI application has WinMain() function instead of main().
- Hasan Aljudy (58/96) Mar 11 2006 Yeah, I realize the thing about the main function being an
- Andrew Fedoniouk (10/108) Mar 11 2006 I tried to use boxter from phobos but D does not like templates to be
- Hasan Aljudy (19/30) Mar 11 2006 The supplied build.bat works fine.
- Andrew Fedoniouk (15/45) Mar 11 2006 I am not asking you to use make :)
- Hasan Aljudy (10/83) Mar 11 2006 I noticed a comment in the make file ..
- Hasan Aljudy (30/44) Mar 12 2006 Here's the stack frame from windbg
- Andrew Fedoniouk (15/58) Mar 12 2006 It is here:
- Hasan Aljudy (11/60) Mar 12 2006 Ah! Thanks!
- Hasan Aljudy (5/5) Mar 12 2006 Now that I got build to work with harmonia, am I allowed to publish my
- Dannerbeck Dieter (3/8) Mar 12 2006 Sounds nice!
- Hasan Aljudy (44/56) Mar 12 2006 Actually now that I think of it, the changes are minor, althu it tooks
- Dannerbeck Dieter (2/77) Mar 12 2006 I hope you update it in the svn tree:) Or maybe send the files to Andrew...
- Derek Parnell (10/15) Mar 18 2006 If you use the "-link" command line switch, it calls the linker rather
- Hasan Aljudy (5/22) Mar 18 2006 The problem was that I put harmonia in the phobos source directory. When...
build expects to see a "main" function inside the file sent to it thru the command line. Harmonia doesn't work that way. The main function is somewhere else!! How can I get build to realize this fact and properly invoke the linker to build an exe file instead of a lib file? I tried passing the win32application.d file to build, but I got some wierd link errors! ----------------------- E:\Hasan\Coding\harmonia\svn\samples\browser>build browser.d C:\dmd\src\phobos\harmonia\ui\native\win32application.d -full -clean TODO (cursorSize): make this through SystemMetrics C:\dmd\bin\..\..\dm\bin\link.exe C:\dmd\src\phobos\harmonia\ui\native\win32application+browser,browser.exe,,gdi32.lib+user32+kernel32,browser.def/noi; OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved C:\dmd\src\phobos\harmonia\ui\native\win32application.obj(win32application) Error 42: Symbol Undefined _D8harmonia2ui6native11win32window21RegisterWindowClassesFZv C:\dmd\src\phobos\harmonia\ui\native\win32application.obj(win32application) Error 42: Symbol Undefined __Class_8harmomia5utils6string18__T10TokenizerTTuZ10TokenizerT C:\dmd\src\phobos\harmonia\ui\native\win32application.obj(win32application) Error 42: Symbol Undefined _D8harmomia5utils6string18__T10TokenizerTTuZ10TokenizerT5_ctorFAuAuuZC8harmomia5utils6string18__T10TokenizerTTuZ10TokenizerT C:\dmd\src\phobos\harmonia\ui\native\win32application.obj(win32application) Error 42: Symbol Undefined _D8harmonia2ui6window6Window13_currentEventC8harmonia2ui6events5Event C:\dmd\src\phobos\harmonia\ui\native\win32application.obj(win32application) Error 42: Symbol Undefined _D8harmonia2ui6native11win32window5Popup8doEventsFZb C:\dmd\src\phobos\harmonia\ui\native\win32application.obj(win32application) Error 42: Symbol Undefined _D8harmonia2ui11application11Application8doEventsFZb browser.obj(browser) Error 42: Symbol Undefined __Class_8harmonia2ui11application10FileDialog browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2io6mmfile6MMFile4openFAuZC8harmonia2io6mmfile6MMFile browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui8commands11FileCommand4OpenC8harmonia2ui8commands7Command browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui8commands11FileCommand4ExitC8harmonia2ui8commands7Command browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2gx8geometry4rect5widthFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2gx8geometry5point6opCallFiiZS8harmonia2gx8geometry5point browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2gx8geometry4size6opCallFiiZS8harmonia2gx8geometry4size browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2gx8geometry4rect6opCallFS8harmonia2gx8geometry5pointS8harmonia2gx8geometry4sizeZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2gx8geometry4rect6heightFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget2onFC8harmonia2ui6events12EventCommandZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui11application11Application7onStartFPFZvZPFZv browser.obj(browser) Error 42: Symbol Undefined __Class_8harmonia2ui4menu4Menu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui4menu4Menu5_ctorFAuZC8harmonia2ui4menu4Menu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5_ctorFE8harmonia2ui6window6Window4TYPEC8harmonia2ui6widget6WidgetZC8harmonia2ui6window6Window browser.obj(browser) Error 42: Symbol Undefined __Class_8harmonia2ui10containers7toolbar8ToolBand browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui10containers7toolbar8ToolBand5_ctorFZC8harmonia2ui10containers7toolbar8ToolBand browser.obj(browser) Error 42: Symbol Undefined __Class_8harmonia2ui4menu7MenuBar browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui4menu7MenuBar5_ctorFZC8harmonia2ui4menu7MenuBar browser.obj(browser) Error 42: Symbol Undefined __Class_8harmonia4html4view8HtmlView browser.obj(browser) Error 42: Symbol Undefined _D8harmonia4html4view8HtmlView5_ctorFZC8harmonia4html4view8HtmlView browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window8extenderFC6ObjectZC6Object browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window8extenderFZC6Object browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window13doContextMenuFbZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window12setFocusNextFbZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window14getNextTabStopFC8harmonia2ui6widget6WidgetbZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5ownerFC8harmonia2ui6widget6WidgetZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5ownerFZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window7closingFKbZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9destroyedFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window7createdFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5movedFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window7resizedFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9showModalFDFZbZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9isVisibleFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5stateFE8harmonia2ui6window6Window5STATEkZE8harmonia2ui6window6Window5STATE browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5stateFZE8harmonia2ui6window6Window5STATE browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window6updateFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window10setCaptureFC8harmonia2ui6widget6WidgetZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window12restoreFocusFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window13commandTargetFZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window8setFocusFC8harmonia2ui6widget6WidgetbZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window17adjustWindowPlaceFS8harmonia2gx8geometry4rectZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window6renderFC8harmonia2gx8graphics8GraphicsZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window10windowTypeFZE8harmonia2ui6window6Window4TYPE browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window13windowCaptionFAuZAu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window13windowCaptionFZAu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window11windowPlaceFS8harmonia2gx8geometry4rectZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window11windowPlaceFZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window8finalizeFC8harmonia2gx8graphics8GraphicsZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window10initializeFC8harmonia2gx8graphics8GraphicsZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5_dtorFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets12layoutBlocksFKS8harmonia2gx8geometry4rectZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets10layoutFlowFKS8harmonia2gx8geometry4rectZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets6valuesFHAuS3std5boxer3boxZk browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets6valuesFZHAuS3std5boxer3box browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets11descendantsFbZS8harmonia2ui7widgets7Widgets9DEEP_ENUM browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets8backwardFZS8harmonia5types38__T5arrayTC8harmonia2ui6widget6WidgetZ5array4ENUM browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7forwardFZS8harmonia5types38__T5arrayTC8harmonia2ui6widget6WidgetZ5array4ENUM browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7opCat_rFAC8harmonia2ui6widget6WidgetZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7opCat_rFC8harmonia2ui6widget6WidgetZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets5opCatFAC8harmonia2ui6widget6WidgetZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets5opCatFC8harmonia2ui6widget6WidgetZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets11opCatAssignFAC8harmonia2ui6widget6WidgetZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets11opCatAssignFC8harmonia2ui6widget6WidgetZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7opSliceFkkZS8harmonia5types38__T5arrayTC8harmonia2ui6widget6WidgetZ5array browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7opSliceFZS8harmonia5types38__T5arrayTC8harmonia2ui6widget6WidgetZ5array browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets13opIndexAssignFC8harmonia2ui6widget6WidgetkZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7opIndexFkZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets9lastIndexFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets5clearFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7isEmptyFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets7indexOfFC8harmonia2ui6widget6WidgetZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets6removeFC8harmonia2ui6widget6WidgetZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets6insertFiAC8harmonia2ui6widget6WidgetZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets3popFZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets4pushFAC8harmonia2ui6widget6WidgetZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets6removeFiZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets6insertFiC8harmonia2ui6widget6WidgetZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets4pushFC8harmonia2ui6widget6WidgetZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window10childStyleFE8harmonia2ui11definitions11ControlTypeZC8harmonia6themes5theme5Style browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget13stopAnimationFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7animateFS8harmonia2gx8geometry4rectE8harmonia2ui5utils9ANIMATIONDFZvZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget6detachFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets16applyDescendantsFDFKC8harmonia2ui6widget6WidgetZibZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget12isAncestorOfFC8harmonia2ui6widget6WidgetZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget15isCommandTargetFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9isInFocusFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8setFocusFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8takenOutFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7takenInFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget6cursorFE8harmonia2ui6widget6Widget6CURSORZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9stopTimerFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget10startTimerFiZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5indexFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget4iconFZC8harmonia2gx6images4Icon browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget4textFAuZAu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget4textFZAu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7tabStopFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8attachedFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window6windowFZC8harmonia2ui6window6Window browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9hideCaretFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9showCaretFS8harmonia2gx8geometry4rectZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7captureFbZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets4findFS8harmonia2gx8geometry5pointZC8harmonia2ui6widget6Widget browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget19contextMenuCommandsFZAC8harmonia2ui8commands7Command browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget13onContextMenuFbZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget10onFocusOutFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9onFocusInFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window2onFC8harmonia2ui6events11EventWidgetZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7onTimerFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget2onFC8harmonia2ui6events12EventControlZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget2onFC8harmonia2ui6events8EventKeyZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window2onFC8harmonia2ui6events12EventPointerZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window7refreshFS8harmonia2gx8geometry4rectZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7refreshFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window11controlTypeFZE8harmonia2ui11definitions11ControlType browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5themeFZC8harmonia6themes5theme5Theme browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5styleFC8harmonia6themes5theme5StyleZC8harmonia6themes5theme5Style browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window5styleFZC8harmonia6themes5theme5Style browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window8graphicsFZC8harmonia2gx8graphics8Graphics browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7enabledFbZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7enabledFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7visibleFZb browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9screenPosFZS8harmonia2gx8geometry5point browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9screenPosFS8harmonia2gx8geometry5pointZS8harmonia2gx8geometry5point browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9windowPosFZS8harmonia2gx8geometry5point browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6window6Window9windowPosFS8harmonia2gx8geometry5pointZS8harmonia2gx8geometry5point browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget12doRepositionFZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9optHeightFiZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9optHeightFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8optWidthFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9maxHeightFiZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9maxHeightFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8maxWidthFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9minHeightFiZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget9minHeightFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8minWidthFZi browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget11clientPlaceFZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget7paddingFZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget6marginFZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5placeFS8harmonia2gx8geometry5pointZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5placeFS8harmonia2gx8geometry4sizeZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5placeFS8harmonia2gx8geometry4rectZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget5placeFZS8harmonia2gx8geometry4rect browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui7widgets7Widgets11drawContentFC8harmonia2gx8graphics8GraphicsZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget14drawBackgroundFC8harmonia2gx8graphics8GraphicsZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget4drawFC8harmonia2gx8graphics8GraphicsZv browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget4nameFAuZAu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget4nameFZAu browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget6parentFZC8harmonia2ui7widgets7Widgets browser.obj(browser) Error 42: Symbol Undefined _D8harmonia2ui6widget6Widget8toStringFZAa browser.obj(browser) Error 42: Symbol Undefined __Class_8harmonia2ui6window6Window --- errorlevel 158
Mar 10 2006
"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dutvqf$1pek$1 digitaldaemon.com...build expects to see a "main" function inside the file sent to it thru the command line. Harmonia doesn't work that way. The main function is somewhere else!!1) Windows GUI application has WinMain() function instead of main(). 2) Harmonia tries to isolate you from this platform specific details (e.g. you don't need to reproduce "message pump" in each your application), this is why WinMain function is a part of Harmonia implementation. You don't need to write WinMain each time. Please see: http://harmonia.terrainformatica.com/pmwiki.php/Harmonia/HarmoniaApplicationHow can I get build to realize this fact and properly invoke the linker to build an exe file instead of a lib file?I tried passing the win32application.d file to build, but I got some wierd link errors!I don't know. Would appreciate if someone will tell me. You should be able to pass to build.exe name of your main.d file and build target type - exe. Probably build.exe needs some additional flags in command line? I don't know. Andrew Fedoniouk. http://terrainformatica.com
Mar 11 2006
Yeah, I realize the thing about the main function being an implementation detail. I think when build sees the WinMain() in the win32application.d it will try to build an executable. Now, win32application.d is eventually seen by "build" as it tries to add the imported files. The problem is, When I tried this yesterday, harmonia was inside the phobos source directory; it turned out that build "ignores" phobos modules!! I discovered this when I used the -V switch on build. I tried to move harmonia to somewhere else, and it seemed to work better, but still produces errors. There were a couple of problems .. First, harmonia uses a different version of std.boxer from what's in phobos. I had to change the std.boxer that came with harmonia to somethign else (I made it hboxer) and edit a couple of files to fix the imports. The second problem was, some modules have names that don't match the path where they reside, so I had to fix those. e.g. harmonia/string.d is module harmonia.utils.string When I fixed all that, I got a series of errors along the lines of .. ------------------------------------------------------------------ C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGE C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090FFH Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_WAIT_FOREVER C:\dmd\bin\..\lib\phobos.lib(windows) Offset 0911AH Record Type 0091 Error 1: Previous Definition Different : _INVALID_HANDLE_VALUE C:\dmd\bin\..\lib\phobos.lib(windows) Offset 09139H Record Type 0091 Error 1: Previous Definition Different : _INVALID_SET_FILE_POINTER C:\dmd\bin\..\lib\phobos.lib(windows) Offset 09157H Record Type 0091 Error 1: Previous Definition Different : _INVALID_FILE_SIZE C:\dmd\bin\..\lib\phobos.lib(windows) Offset 092DEH Record Type 0091 (......) ------------------------------------------------------------------ and so on .. The good news is, build was trying to build an .exe This is what I got before the error list: --------------------------------------------------------------------- Wrong conversion! TODO: selected and value attributes TODO: selected and value attributes TODO (cursorSize): make this through SystemMetrics C:\dmd\bin\..\..\dm\bin\link.exe C:\dmd\src\other\harmonia\themes\theme+((..........))+C:\dmd\src\other\harmonia\ui\controls\editbox,browser.exe,,gdi32.lib+user32+kernel32,browser.def/noi; OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved ----------------------------------------------------------------------- I thought the clurpit was hboxer (the boxer module that harmonia uses), I just thought that maybe for some reason, the linker thinks the boxer implementation is in phobos.lib I tried to edit harmonia to use the std.boxer in phobos, it wasn't easy or fun at all, and in the end I still got the exact same kind of errors above. I thought maybe it's the windows headers that harmonia uses, but at that I was tired of trying to fix it. So I stopped working on it. Does anyone know what does this kind of error messege indicates? C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGE Andrew Fedoniouk wrote:"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dutvqf$1pek$1 digitaldaemon.com...build expects to see a "main" function inside the file sent to it thru the command line. Harmonia doesn't work that way. The main function is somewhere else!!1) Windows GUI application has WinMain() function instead of main(). 2) Harmonia tries to isolate you from this platform specific details (e.g. you don't need to reproduce "message pump" in each your application), this is why WinMain function is a part of Harmonia implementation. You don't need to write WinMain each time. Please see: http://harmonia.terrainformatica.com/pmwiki.php/Harmonia/HarmoniaApplicationHow can I get build to realize this fact and properly invoke the linker to build an exe file instead of a lib file?I tried passing the win32application.d file to build, but I got some wierd link errors!I don't know. Would appreciate if someone will tell me. You should be able to pass to build.exe name of your main.d file and build target type - exe. Probably build.exe needs some additional flags in command line? I don't know. Andrew Fedoniouk. http://terrainformatica.com
Mar 11 2006
"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:duvka2$1erk$1 digitaldaemon.com...Yeah, I realize the thing about the main function being an implementation detail. I think when build sees the WinMain() in the win32application.d it will try to build an executable. Now, win32application.d is eventually seen by "build" as it tries to add the imported files. The problem is, When I tried this yesterday, harmonia was inside the phobos source directory; it turned out that build "ignores" phobos modules!! I discovered this when I used the -V switch on build. I tried to move harmonia to somewhere else, and it seemed to work better, but still produces errors. There were a couple of problems .. First, harmonia uses a different version of std.boxer from what's in phobos. I had to change the std.boxer that came with harmonia to somethign else (I made it hboxer) and edit a couple of files to fix the imports.I tried to use boxter from phobos but D does not like templates to be in library. Did something change in this area?The second problem was, some modules have names that don't match the path where they reside, so I had to fix those. e.g. harmonia/string.d is module harmonia.utils.string When I fixed all that, I got a series of errors along the lines of .. ------------------------------------------------------------------ C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGE C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090FFH Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_WAIT_FOREVER C:\dmd\bin\..\lib\phobos.lib(windows) Offset 0911AH Record Type 0091 Error 1: Previous Definition Different : _INVALID_HANDLE_VALUE C:\dmd\bin\..\lib\phobos.lib(windows) Offset 09139H Record Type 0091 Error 1: Previous Definition Different : _INVALID_SET_FILE_POINTER C:\dmd\bin\..\lib\phobos.lib(windows) Offset 09157H Record Type 0091 Error 1: Previous Definition Different : _INVALID_FILE_SIZE C:\dmd\bin\..\lib\phobos.lib(windows) Offset 092DEH Record Type 0091 (......) ------------------------------------------------------------------ and so on .. The good news is, build was trying to build an .exe This is what I got before the error list: --------------------------------------------------------------------- Wrong conversion! TODO: selected and value attributes TODO: selected and value attributes TODO (cursorSize): make this through SystemMetrics C:\dmd\bin\..\..\dm\bin\link.exe C:\dmd\src\other\harmonia\themes\theme+((..........))+C:\dmd\src\other\harmonia\ui\controls\editbox,browser.exe,,gdi32.lib+user32+kernel32,browser.def/noi; OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved ----------------------------------------------------------------------- I thought the clurpit was hboxer (the boxer module that harmonia uses), I just thought that maybe for some reason, the linker thinks the boxer implementation is in phobos.lib I tried to edit harmonia to use the std.boxer in phobos, it wasn't easy or fun at all, and in the end I still got the exact same kind of errors above. I thought maybe it's the windows headers that harmonia uses, but at that I was tired of trying to fix it. So I stopped working on it. Does anyone know what does this kind of error messege indicates? C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGEI suspect that this means that windows.d defintions were included twice. Harmonia has its own set of Win API deifinitions. BTW: what will happen if you will just run build.bat from harmonia root folder? Will it build samples on your machine? Andrew.Andrew Fedoniouk wrote:"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dutvqf$1pek$1 digitaldaemon.com...build expects to see a "main" function inside the file sent to it thru the command line. Harmonia doesn't work that way. The main function is somewhere else!!1) Windows GUI application has WinMain() function instead of main(). 2) Harmonia tries to isolate you from this platform specific details (e.g. you don't need to reproduce "message pump" in each your application), this is why WinMain function is a part of Harmonia implementation. You don't need to write WinMain each time. Please see: http://harmonia.terrainformatica.com/pmwiki.php/Harmonia/HarmoniaApplicationHow can I get build to realize this fact and properly invoke the linker to build an exe file instead of a lib file?I tried passing the win32application.d file to build, but I got some wierd link errors!I don't know. Would appreciate if someone will tell me. You should be able to pass to build.exe name of your main.d file and build target type - exe. Probably build.exe needs some additional flags in command line? I don't know. Andrew Fedoniouk. http://terrainformatica.com
Mar 11 2006
The supplied build.bat works fine. but I don't want to have to bother with make files! I've never used make files with C++, never with D, and I don't intend to use them in the future, specially not with D! Andrew Fedoniouk wrote: <snip>I tried to use boxter from phobos but D does not like templates to be in library. Did something change in this area?I have no idea what's happening with templates nor with std.boxer! I remember hearing a couple of times that boxer requires rebuilding phobos with -release or something like that, but I really have no clue. <snip>I thought about that, but didn't really know what I should do. Windows definition are just definitions, I think the implementation is not supposed to be in phobos, but rather in some lib/dll in the WINDOWS\system32 folder (or something like that). I just discovered .. MAILSLOT_NO_MESSAGE is a windows constant!! everything else in this error list is a windows constant too! I think I might just need a way to prevent build from using the windows definitions from phobos, or something like that.Does anyone know what does this kind of error messege indicates? C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGEI suspect that this means that windows.d defintions were included twice. Harmonia has its own set of Win API deifinitions.
Mar 11 2006
"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dv0c0n$2grl$1 digitaldaemon.com...The supplied build.bat works fine. but I don't want to have to bother with make files! I've never used make files with C++, never with D, and I don't intend to use them in the future, specially not with D!I am not asking you to use make :) I just need to verify that you have everything in place you are dealing with problems of build utility and not with Harmonia itself. This is a bit different story, eh? OT: I would suggest to grab VS 6 somewhere if you don't like makefiles. There is a .dsw file - workspace file for VS (release and debug modes supported)Andrew Fedoniouk wrote: <snip>I beleive it is a bad idea to put any templated stuff in phobos.I tried to use boxter from phobos but D does not like templates to be in library. Did something change in this area?I have no idea what's happening with templates nor with std.boxer! I remember hearing a couple of times that boxer requires rebuilding phobos with -release or something like that, but I really have no clue.<snip>I think that build.exe is too smart here. It should not include anything non referenced from modules of the project. Or at least it should be some command line options for saying that. Andrew.I thought about that, but didn't really know what I should do. Windows definition are just definitions, I think the implementation is not supposed to be in phobos, but rather in some lib/dll in the WINDOWS\system32 folder (or something like that). I just discovered .. MAILSLOT_NO_MESSAGE is a windows constant!! everything else in this error list is a windows constant too! I think I might just need a way to prevent build from using the windows definitions from phobos, or something like that.Does anyone know what does this kind of error messege indicates? C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGEI suspect that this means that windows.d defintions were included twice. Harmonia has its own set of Win API deifinitions.
Mar 11 2006
I noticed a comment in the make file .. #native\win32.d - do not compile it as it is just a 'header' so I looked in the build documentation, and found that inserting version(build) { pragma(nolink); } will tell build to not link this file, so I added it to harmonia/native/win32.d and it compiled fine .. BUT When I run it, I get an "access voilation" messege and then the program exits. Andrew Fedoniouk wrote:"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dv0c0n$2grl$1 digitaldaemon.com...The supplied build.bat works fine. but I don't want to have to bother with make files! I've never used make files with C++, never with D, and I don't intend to use them in the future, specially not with D!I am not asking you to use make :) I just need to verify that you have everything in place you are dealing with problems of build utility and not with Harmonia itself. This is a bit different story, eh? OT: I would suggest to grab VS 6 somewhere if you don't like makefiles. There is a .dsw file - workspace file for VS (release and debug modes supported)Andrew Fedoniouk wrote: <snip>I beleive it is a bad idea to put any templated stuff in phobos.I tried to use boxter from phobos but D does not like templates to be in library. Did something change in this area?I have no idea what's happening with templates nor with std.boxer! I remember hearing a couple of times that boxer requires rebuilding phobos with -release or something like that, but I really have no clue.<snip>I think that build.exe is too smart here. It should not include anything non referenced from modules of the project. Or at least it should be some command line options for saying that. Andrew.I thought about that, but didn't really know what I should do. Windows definition are just definitions, I think the implementation is not supposed to be in phobos, but rather in some lib/dll in the WINDOWS\system32 folder (or something like that). I just discovered .. MAILSLOT_NO_MESSAGE is a windows constant!! everything else in this error list is a windows constant too! I think I might just need a way to prevent build from using the windows definitions from phobos, or something like that.Does anyone know what does this kind of error messege indicates? C:\dmd\bin\..\lib\phobos.lib(windows) Offset 090E3H Record Type 0091 Error 1: Previous Definition Different : _MAILSLOT_NO_MESSAGEI suspect that this means that windows.d defintions were included twice. Harmonia has its own set of Win API deifinitions.
Mar 11 2006
Hasan Aljudy wrote:I noticed a comment in the make file .. #native\win32.d - do not compile it as it is just a 'header' so I looked in the build documentation, and found that inserting version(build) { pragma(nolink); } will tell build to not link this file, so I added it to harmonia/native/win32.d and it compiled fine .. BUT When I run it, I get an "access voilation" messege and then the program exits.When I turn on the -debug switch, the messege becomes:ERROR: Access VoilationHere's the stack frame from windbg 00 image00400000!D8harmonia2ui6window6Window10childStyleFE8harmonia2ui11definitions11ControlTypeZC8harmonia6the es5theme5Style+0x17 [C:\dmd\src\other\harmonia\ui\window.d 303] 01 image00400000!D8harmonia2ui6widget6Widget5styleFZC8harmonia6the es5theme5Style+0x3f [C:\dmd\src\other\harmonia\ui\widget.d 187] 02 image00400000!D8harmonia2ui7widgets97__T10ScrollableTC8harmonia4html4view46__T10HtmlPanelTTC8harmonia2ui7widgets7WidgetsZ10HtmlPanelTZ10Scrollable11clientPlaceFZS8harmonia2g 8geometry4rect+0x48 [C:\dmd\src\other\harmonia\html\view.d 385] 03 image00400000!D8harmonia4html4view46__T10HtmlPanelTTC8harmonia2ui7widgets7WidgetsZ10HtmlPan lT4htmlFAaAuZb+0x8f [C:\dmd\src\other\harmonia\html\view.d 143] 04 image00400000!D7samples7testbed7MyFrame5_ctorFZC7samples7testbed7MyFrame+0x91 [browser.d 48] 05 image00400000!D7samples7testbed11_staticCtorFZv14__funcliteral1FZv+0x20 [browser.d 33] 06 image00400000!D8harmonia2ui6native16win32application17NativeApplication10 nitializeFAuZv+0x80 [C:\dmd\src\other\harmonia\ui\native\win32application.d 100] 07 image00400000!WinMain+0xb7 [C:\dmd\src\other\harmonia\ui\native\win32application.d 496] 08 image00400000!WinMainCRTStartup+0xaa WARNING: Stack unwind information not available. Following frames may be wrong. 09 kernel32!RegisterWaitForInputIdle+0x49
Mar 12 2006
"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dv0luu$2to5$1 digitaldaemon.com...Hasan Aljudy wrote:It is here: return Theme.defaultTheme.themeStyle(id); Seems like module harmonia.themes.pathfinder; was not included by build.exe. It has: static this() { // install this as a default theme defaultTheme = new PathfinderTheme(); } module harmonia.themes.pathfinder; is theme implementation and has no direct external references. You need to tell to build.exe somehow that it must include it.I noticed a comment in the make file .. #native\win32.d - do not compile it as it is just a 'header' so I looked in the build documentation, and found that inserting version(build) { pragma(nolink); } will tell build to not link this file, so I added it to harmonia/native/win32.d and it compiled fine .. BUT When I run it, I get an "access voilation" messege and then the program exits.When I turn on the -debug switch, the messege becomes:ERROR: Access VoilationHere's the stack frame from windbg 00 image00400000!D8harmonia2ui6window6Window10childStyleFE8harmonia2ui11definitions11ControlTypeZC8harmonia6the es5theme5Style+0x17 [C:\dmd\src\other\harmonia\ui\window.d 303]01 image00400000!D8harmonia2ui6widget6Widget5styleFZC8harmonia6the es5theme5Style+0x3f [C:\dmd\src\other\harmonia\ui\widget.d 187] 02 image00400000!D8harmonia2ui7widgets97__T10ScrollableTC8harmonia4html4view46__T10HtmlPanelTTC8harmonia2ui7widgets7WidgetsZ10HtmlPanelTZ10Scrollable11clientPlaceFZS8harmonia2g 8geometry4rect+0x48 [C:\dmd\src\other\harmonia\html\view.d 385] 03 image00400000!D8harmonia4html4view46__T10HtmlPanelTTC8harmonia2ui7widgets7WidgetsZ10HtmlPan lT4htmlFAaAuZb+0x8f [C:\dmd\src\other\harmonia\html\view.d 143] 04 image00400000!D7samples7testbed7MyFrame5_ctorFZC7samples7testbed7MyFrame+0x91 [browser.d 48] 05 image00400000!D7samples7testbed11_staticCtorFZv14__funcliteral1FZv+0x20 [browser.d 33] 06 image00400000!D8harmonia2ui6native16win32application17NativeApplication10 nitializeFAuZv+0x80 [C:\dmd\src\other\harmonia\ui\native\win32application.d 100] 07 image00400000!WinMain+0xb7 [C:\dmd\src\other\harmonia\ui\native\win32application.d 496] 08 image00400000!WinMainCRTStartup+0xaa WARNING: Stack unwind information not available. Following frames may be wrong. 09 kernel32!RegisterWaitForInputIdle+0x49
Mar 12 2006
Andrew Fedoniouk wrote:"Hasan Aljudy" <hasan.aljudy gmail.com> wrote in message news:dv0luu$2to5$1 digitaldaemon.com...Ah! Thanks! I added an import for harmonia.themes.pathfinder and now it works for half a second (shows a window) but still produces an access voilation!! Any other modules you know which are needed but not referenced?! /me goes to check the call stack .. ok, I think this one is harmonia.ui.tooltip let me try .. (after 20 seconds ...) yup! seems to work fine now!! :DHasan Aljudy wrote:It is here: return Theme.defaultTheme.themeStyle(id); Seems like module harmonia.themes.pathfinder; was not included by build.exe. It has: static this() { // install this as a default theme defaultTheme = new PathfinderTheme(); } module harmonia.themes.pathfinder; is theme implementation and has no direct external references. You need to tell to build.exe somehow that it must include it.I noticed a comment in the make file .. #native\win32.d - do not compile it as it is just a 'header' so I looked in the build documentation, and found that inserting version(build) { pragma(nolink); } will tell build to not link this file, so I added it to harmonia/native/win32.d and it compiled fine .. BUT When I run it, I get an "access voilation" messege and then the program exits.When I turn on the -debug switch, the messege becomes:ERROR: Access VoilationHere's the stack frame from windbg 00 image00400000!D8harmonia2ui6window6Window10childStyleFE8harmonia2ui11definitions11ControlTypeZC8harmonia6the es5theme5Style+0x17 [C:\dmd\src\other\harmonia\ui\window.d 303]
Mar 12 2006
Now that I got build to work with harmonia, am I allowed to publish my modifications to harmonia that allowed its programs to be built with "build"? I tried to read the license, and I didn't find anything in it that forbids me from doing that. But I'm just not good with this legal stuff ..
Mar 12 2006
Hasan Aljudy schrieb:Now that I got build to work with harmonia, am I allowed to publish my modifications to harmonia that allowed its programs to be built with "build"? I tried to read the license, and I didn't find anything in it that forbids me from doing that. But I'm just not good with this legal stuff ..Sounds nice! I'm pretty sure you are welcome to update it:) ?!
Mar 12 2006
Dannerbeck Dieter wrote:Hasan Aljudy schrieb:Actually now that I think of it, the changes are minor, althu it tooks me hours and hours! Here are the modifications I had to make: move the file std\boxer.d to harmonia\boxer.d, and change the first line to: module harmonia.boxer; and, change the following files as indicated: -----------------harmonia\html\html.d----------------- line23: change it to: module harmonia.html.html; -----------------harmonia\io\mmfile.d----------------- line 37: change it to: private import harmonia.native.win32; -----------------harmonia\native\win32.d----------------- line 9:insert the following line: version(build) { pragma(nolink); } I think you can insert it anywhere in the file. -----------------harmonia\ui\controls\all.d----------------- line 25: change it to module harmonia.ui.controls.all; line 27: change it to import harmonia.boxer; -----------------harmonia\ui\controls\buttons.d----------------- line 24: change it to: module harmonia.ui.controls.buttons; line 26: change it to: import harmonia.boxer; -----------------harmonia\ui\application.d----------------- line 17: insert the following block of code: version(build) { pragma( include, "harmonia.themes.pathfinder" ); pragma( include, "harmonia.ui.tooltip" ); } I think you can insert it anywhere in the file. -----------------harmonia\ui\definitions.d----------------- line 26: change it to import harmonia.boxer; -----------------harmonia\ui\widgets.d----------------- line 29: change it to import harmonia.boxer; -----------------harmonia\string.d----------------- line 25: change it to module harmonia.string;Now that I got build to work with harmonia, am I allowed to publish my modifications to harmonia that allowed its programs to be built with "build"? I tried to read the license, and I didn't find anything in it that forbids me from doing that. But I'm just not good with this legal stuff ..Sounds nice! I'm pretty sure you are welcome to update it:) ?!
Mar 12 2006
Hasan Aljudy schrieb:Dannerbeck Dieter wrote:I hope you update it in the svn tree:) Or maybe send the files to Andrew?!Hasan Aljudy schrieb:Actually now that I think of it, the changes are minor, althu it tooks me hours and hours! Here are the modifications I had to make: move the file std\boxer.d to harmonia\boxer.d, and change the first line to: module harmonia.boxer; and, change the following files as indicated: -----------------harmonia\html\html.d----------------- line23: change it to: module harmonia.html.html; -----------------harmonia\io\mmfile.d----------------- line 37: change it to: private import harmonia.native.win32; -----------------harmonia\native\win32.d----------------- line 9:insert the following line: version(build) { pragma(nolink); } I think you can insert it anywhere in the file. -----------------harmonia\ui\controls\all.d----------------- line 25: change it to module harmonia.ui.controls.all; line 27: change it to import harmonia.boxer; -----------------harmonia\ui\controls\buttons.d----------------- line 24: change it to: module harmonia.ui.controls.buttons; line 26: change it to: import harmonia.boxer; -----------------harmonia\ui\application.d----------------- line 17: insert the following block of code: version(build) { pragma( include, "harmonia.themes.pathfinder" ); pragma( include, "harmonia.ui.tooltip" ); } I think you can insert it anywhere in the file. -----------------harmonia\ui\definitions.d----------------- line 26: change it to import harmonia.boxer; -----------------harmonia\ui\widgets.d----------------- line 29: change it to import harmonia.boxer; -----------------harmonia\string.d----------------- line 25: change it to module harmonia.string;Now that I got build to work with harmonia, am I allowed to publish my modifications to harmonia that allowed its programs to be built with "build"? I tried to read the license, and I didn't find anything in it that forbids me from doing that. But I'm just not good with this legal stuff ..Sounds nice! I'm pretty sure you are welcome to update it:) ?!
Mar 12 2006
On Sat, 11 Mar 2006 18:56:05 +1100, Hasan Aljudy <hasan.aljudy gmail.com> wrote:build expects to see a "main" function inside the file sent to it thru the command line. Harmonia doesn't work that way. The main function is somewhere else!! How can I get build to realize this fact and properly invoke the linker to build an exe file instead of a lib file?If you use the "-link" command line switch, it calls the linker rather than the librarian. It normally calls the librarian if it doesn't find 'main' or 'WinMain'. Use -link if the 'main' is to be found in a library rather than any of the source files. Just make sure you link in the library file too, of course. -- Derek Parnell Melbourne, Australia
Mar 18 2006
Derek Parnell wrote:On Sat, 11 Mar 2006 18:56:05 +1100, Hasan Aljudy <hasan.aljudy gmail.com> wrote:The problem was that I put harmonia in the phobos source directory. When I used the -V switch on build, I saw that build ignored all module under phobos, including harmonia. I just moved harmonia somewhere else, and then build saw the main function.build expects to see a "main" function inside the file sent to it thru the command line. Harmonia doesn't work that way. The main function is somewhere else!! How can I get build to realize this fact and properly invoke the linker to build an exe file instead of a lib file?If you use the "-link" command line switch, it calls the linker rather than the librarian. It normally calls the librarian if it doesn't find 'main' or 'WinMain'. Use -link if the 'main' is to be found in a library rather than any of the source files. Just make sure you link in the library file too, of course.
Mar 18 2006