March 28, 2005
"J C Calvarese" <jcc7@cox.net> wrote in message news:d281d0$s64$1@digitaldaemon.com...
> Matthew wrote:
>> Ok, here's the fast version:
>>
>> 1. Download and install STLSoft 1.8.3 beta 4. Wherever you put it - e.g. C:\3pty\STLSoft\1.8.3 or /usr/include/stlsoft/1.8.3 - you need to setup and environment variable STLSOFT_INCLUDE that points to the directory containing stlsoft.h. The other headers that are in relative directories - e.g. winstl/path.hpp - are under that main directory. Note: recls 1.6.x also uses some of the "in progress" STLSoft components - things that are very likely to go in on the next non-beta release - but the recls makefiles contain include directorives for both "-I$(STLSOFT_INCLUDE)" and "-I$(STLSOFT_INCLUDE)/inprogress", so you shouldn't have to worry about that. (Just FYI, in case <g>)
>>
>> 2. Say you're building recls for DMC++ on Win32. You'll need to be in a CLI which has the STLSOFT_INCLUDE environment set, and can see the DMC++ toolset. Then go to the <recls>/build/dm directory, and just type "make". Or type "make test" and it'll run the sample programs after a successful build.
>>
>> 3. If 1. is set up, which should mean that 2. builds ok, then you'll have recls.dm.lib and recls.dm.debug.lib in the <recls>/lib directory. That contains all the core library, and 'll need to be linked in to your exe
>>
>> 4. Then just go to <recls>/mappings/D, and compile <recls>/mappings/D/std/recls.d. If you like, you can use the makefile there, and just type "make". Assuming DMD is successfully installed and all components visible, you should have the libraries recls.D.debug.lib and recls.D.lib, which, along with the core library, can be linked to form you exe.
>>
>> That should be it, but I may have missed something obvious. HTH
>
> Thanks. Looks good. I've added already added this to Wiki4D. I plan to go in and explain a tad more about installing DMC and STLport (and adding STLport to the INCLUDE path in sc.ini), but I think what you've written covers most of the bases for the actual recls part.
>
> I finally managed to compile recls.dm.lib, but I can't get my test program to link:
>
> <code>
> import std.recls;
>
> void main()
> {
>     FileSearch  search  = new FileSearch(".", "*.*", RECLS_FLAG.RECLS_F_RECURSIVE);
>     foreach(Entry entry; search)
>     {
>         with(entry)
>         {
>             if(!shortFile())
>                 printf("%.*s%.*s\n", directoryPath(), file());
>             else
>                 printf("%.*s%.*s (%.*s)\n", directoryPath(), file(), shortFile());
>         }
>     }
> }
> </code>
>
>
> <command line>
> I:\pgm\d\recls>dmd test.d D:\dm\recls-1.6.1\lib\recls.dm.lib -ID:\dm\recls-1.6.1
> \mappings\D
> d:\dmd\bin\..\..\dm\bin\link.exe test,,,D:\dm\recls-1.6.1\lib\recls.dm.lib+user3
> 2+kernel32/noi;
> OPTLINK (R) for Win32  Release 7.50B1
> Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>
> test.obj(test)
>  Error 42: Symbol Undefined __Class_3std5recls10FileSearch
> test.obj(test)
>  Error 42: Symbol Undefined _D3std5recls10FileSearch5_ctorFAaAakZC3std5recls10Fi
> leSearch
> --- errorlevel 2
> </command line>
>
> My instinct is that I need to recompile Phobos to get it to work since it's called std.recls. It's too late for me to play around with this more tonight. I plan to continue my investigation tomorrow. I think I'm close to understanding what's going on. ;)

Hmm. Nothing immediately springs to mind as wrong, although I note you've omitted the recls core library from the link. But since it's complaining about not seeing the recls/D mapping lib, which you've specified, that may not have anything to do with it.

FYI: I've never had a problem with linking the recls lib along with the standard Phobos distro. It's always selected the one explicitly specified to the linker.

...

Still pondering your command line. I can't see anything. I'll keep thinking ...



March 28, 2005
Matthew wrote:
> "J C Calvarese" <jcc7@cox.net> wrote in message news:d281d0$s64$1@digitaldaemon.com...
...
>><command line>
>>I:\pgm\d\recls>dmd test.d D:\dm\recls-1.6.1\lib\recls.dm.lib -ID:\dm\recls-1.6.1
>>\mappings\D
>>d:\dmd\bin\..\..\dm\bin\link.exe test,,,D:\dm\recls-1.6.1\lib\recls.dm.lib+user3
>>2+kernel32/noi;
>>OPTLINK (R) for Win32  Release 7.50B1
>>Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>>
>>test.obj(test)
>> Error 42: Symbol Undefined __Class_3std5recls10FileSearch
>>test.obj(test)
>> Error 42: Symbol Undefined _D3std5recls10FileSearch5_ctorFAaAakZC3std5recls10Fi
>>leSearch
>>--- errorlevel 2
>></command line>
>>
>>My instinct is that I need to recompile Phobos to get it to work since it's called std.recls. It's too late for me to play around with this more tonight. I plan to continue my investigation tomorrow. I think I'm close to understanding what's going on. ;)
> 
> 
> Hmm. Nothing immediately springs to mind as wrong, although I note you've omitted the recls core library from the link. But since it's complaining about not seeing the recls/D mapping lib, which you've specified, that may not have anything to do with it.

You mean the recls core library is something other than "recls.dm.lib"?

> FYI: I've never had a problem with linking the recls lib along with the standard Phobos distro. It's always selected the one explicitly specified to the linker.

Okay, I just thought that might be a problem. Maybe I'll do a fresh reinstall of DMC and try again. It could be something weird about how my system is cobbled together. I tend to just unzip one version of the DM compiler tools over the old stuff.

-- 
Justin (a/k/a jcc7)
http://jcc_7.tripod.com/d/
March 28, 2005
"J C Calvarese" <jcc7@cox.net> wrote in message news:d283c8$u1h$1@digitaldaemon.com...
> Matthew wrote:
>> "J C Calvarese" <jcc7@cox.net> wrote in message news:d281d0$s64$1@digitaldaemon.com...
> ...
>>><command line>
>>>I:\pgm\d\recls>dmd test.d D:\dm\recls-1.6.1\lib\recls.dm.lib -ID:\dm\recls-1.6.1
>>>\mappings\D
>>>d:\dmd\bin\..\..\dm\bin\link.exe test,,,D:\dm\recls-1.6.1\lib\recls.dm.lib+user3
>>>2+kernel32/noi;
>>>OPTLINK (R) for Win32  Release 7.50B1
>>>Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved
>>>
>>>test.obj(test)
>>> Error 42: Symbol Undefined __Class_3std5recls10FileSearch
>>>test.obj(test)
>>> Error 42: Symbol Undefined _D3std5recls10FileSearch5_ctorFAaAakZC3std5recls10Fi
>>>leSearch
>>>--- errorlevel 2
>>></command line>
>>>
>>>My instinct is that I need to recompile Phobos to get it to work since it's called std.recls. It's too late for me to play around with this more tonight. I plan to continue my investigation tomorrow. I think I'm close to understanding what's going on. ;)
>>
>>
>> Hmm. Nothing immediately springs to mind as wrong, although I note you've omitted the recls core library from the link. But since it's complaining about not seeing the recls/D mapping lib, which you've specified, that may not have anything to do with it.
>
> You mean the recls core library is something other than "recls.dm.lib"?

No. He he. We've both been hit by the little men with the large green bats.

You need to specify
    recls.D.lib - the recls/D mapping
    recls.dm.lib - the recls core C/C++ library

I couldn't see the woods for the tree! :-)



March 28, 2005
Matthew wrote:
> "J C Calvarese" <jcc7@cox.net> wrote in message news:d283c8$u1h$1@digitaldaemon.com...
> 
...
>>You mean the recls core library is something other than "recls.dm.lib"?
> 
> No. He he. We've both been hit by the little men with the large green bats.

Or giant white rabbits.

> You need to specify
>     recls.D.lib - the recls/D mapping
>     recls.dm.lib - the recls core C/C++ library

I hadn't even created a recls.D.lib. I figured the magical build process had taken care of those types of issues and put D's information in recls.dm.lib. Oops!

So I did something like this:

dmd -c std\recls.d D:\dm\recls-1.6.1\lib\recls.dm.lib
lib -c D:\dm\recls-1.6.1\lib\recls.D.lib recls.obj

Voila! recls.D.lib is born!

> I couldn't see the woods for the tree! :-)

Pretty much, yeah.

Thanks for bearing with me. I finally got it to work!

dmd test.d D:\dm\recls-1.6.1\lib\recls.dm.lib D:\dm\recls-1.6.1\lib\recls.D.lib -ID:\dm\recls-1.6.1\mappings\D wininet.lib

(By the way, I don't know where you found your wininet.lib, but I was able to create my own, so that's what I used: http://svn.dsource.org/svn/projects/bindings/trunk/lib/wininet.lib. I guess I'll know if it's actually correct when I try to search an FTP site sometime.)

-- 
Justin (a/k/a jcc7)
http://jcc_7.tripod.com/d/
March 28, 2005
Matthew wrote:

>> Maybe I'm missing something here, but what does Apple's support has
>> to with Linux ? If anything, it should have more to do with Mac OS
>> X, yes ? (although I am running both Mac OS X and Linux on my own
>> Apple machines)
> 
> Oh, I was just going to use getting an Apple into springboarding me
> into doing D primarily on Linux. ;) Since they've demotivated me re
> buying one, it's put a crimp on that side of things.

Doing Linux on Apple computers is a lot "harder" than with PCs,
since, well, Microsoft don't make the hardware too ? (yet ;-) )
It can be done, but you regularly lose things like hardware drivers
(fan control, AirPort, OpenGL, audio, etc, etc) that Apple provides...

There is also the general problem of people confusing "Linux" with
"Linux x86", which means that a lot of closed software won't work
(and you usually have to recompile the open third party stuff too)
Usually the supported PPC platform is Mac OS X, not any kind of Linux.


But, it is worth the effort (I think) - and works great in the end...
(Assuming you need some kind of Linux interaction, otherwise just using
Mac OS X and its DeveloperTools and Darwin BSD-system should be plenty!)

Some nice Linux distributions that support PowerPC and Macintosh are:
- Debian
- Gentoo 2005.0
- Yellow Dog Linux 4.0.1
- Ubuntu Linux "The Hoary Hedgehog"

It should also be noted that you can run both Linux and Darwin on your
regular X86 box too, even if the hardware support for OpenDarwin is a
bit limited still. But probably simpler than shifting X86 -> PPC ?

You can get a virtualization program, if you don't like dual-booting.
(unfortunately the options for doing this *on* Mac is now more or less
limited to emulation like Virtual PC for Mac, not "native" Xen-style)


And none of this should stop you from getting a Mac Mini, of course :-)

--anders
March 29, 2005
Inspired by this, I tried a lamp-foot Mac at a Mac-only friend.

To my utter embarrasment, I couldn't find the command line?? Is it true that there really isn't one? (He obviously hadn't heard of such a thing, being a Mac-only person. :-( )

I mean, OS X is built on a real operating system, right? So, have they actually hidden/removed/nuked any means to use a Mac with an xterm window, ssh, or even telnet?

:-( Not that I'd be surprised, knowing their attitude problem.

Matthew wrote:
> "Anders F Björklund" <afb@algonet.se> wrote in message news:d24ofu$jv8$1@digitaldaemon.com...
> 
>>Matthew wrote:
>>
>>
>>>Alas - partly because of the stunning lack of Apple customer service - I've not yet got to the point of using D on Linux. I'd be more than happy for people to make changes to the std/recls.d file in the latest release (http://recls.org/downloads.html) and feed them back to me.
>>
>>Maybe I'm missing something here, but what does Apple's support has to with Linux ? If anything, it should have more to do with Mac OS X, yes ?
>>(although I am running both Mac OS X and Linux on my own Apple machines)
> 
> 
> Oh, I was just going to use getting an Apple into springboarding me into doing D primarily on Linux. ;) Since they've demotivated me re buying one, it's put a crimp on that side of things.
> 
> 
>>>The latter is more my responsibility, since I've not (yet) got around to having D on Linux. Is this easy to do? If so, I'll bite the bullet and get it done. Then it'll all be in Walter's court.
>>
>>It's not very hard to install GDC on a regular Linux platform...
>>There's a specfile for RPM, an ebuild for Gentoo, and a Makefile ?
>>http://www.algonet.se/~afb/d/Makefile (downloads, compiles, installs)
>>
>>Installing DMD, on a supported X86 Linux, is even easier to do :
>>http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial/InstallingDCompiler
> 
> 
> Thanks. I'll note this down. :-)
> 
> 
> 
March 29, 2005
I played around with a couple of iBooks in DJs the other day, and could find a terminal on one easily, but couldn't find it on another despite several minutes of searching.

So I guess it's there, but different models go to different lengths to pretend to be a GUI

"Georg Wrede" <georg.wrede@nospam.org> wrote in message news:424933EF.2050904@nospam.org...
>
> Inspired by this, I tried a lamp-foot Mac at a Mac-only friend.
>
> To my utter embarrasment, I couldn't find the command line?? Is it true that there really isn't one? (He obviously hadn't heard of such a thing, being a Mac-only person. :-( )
>
> I mean, OS X is built on a real operating system, right? So, have they actually hidden/removed/nuked any means to use a Mac with an xterm window, ssh, or even telnet?
>
> :-( Not that I'd be surprised, knowing their attitude problem.
>
> Matthew wrote:
>> "Anders F Björklund" <afb@algonet.se> wrote in message news:d24ofu$jv8$1@digitaldaemon.com...
>>
>>>Matthew wrote:
>>>
>>>
>>>>Alas - partly because of the stunning lack of Apple customer service - I've not yet got to the point of using D on Linux. I'd be more than happy for people to make changes to the std/recls.d file in the latest release (http://recls.org/downloads.html) and feed them back to me.
>>>
>>>Maybe I'm missing something here, but what does Apple's support has to with Linux ? If anything, it should have more
>>>to do with Mac OS X, yes ?
>>>(although I am running both Mac OS X and Linux on my own Apple machines)
>>
>>
>> Oh, I was just going to use getting an Apple into springboarding me into doing D primarily on Linux. ;) Since they've demotivated me re buying one, it's put a crimp on that side of things.
>>
>>
>>>>The latter is more my responsibility, since I've not (yet) got around to having D on Linux. Is this easy to do? If so, I'll bite the bullet and get it done. Then it'll all be in Walter's court.
>>>
>>>It's not very hard to install GDC on a regular Linux platform... There's a specfile for RPM, an ebuild for Gentoo, and a Makefile ? http://www.algonet.se/~afb/d/Makefile (downloads, compiles, installs)
>>>
>>>Installing DMD, on a supported X86 Linux, is even easier to do : http://www.prowiki.org/wiki4d/wiki.cgi?D__Tutorial/InstallingDCompiler
>>
>>
>> Thanks. I'll note this down. :-)
>>
>> 

March 29, 2005
Georg Wrede wrote:

> Inspired by this, I tried a lamp-foot Mac at a Mac-only friend.
>
> To my utter embarrasment, I couldn't find the command line?? Is it true that there really isn't one? (He obviously hadn't heard of such a thing, being a Mac-only person. :-( )

It's hidden under /Applications/Utilities/Terminal.app... :-)
(shown as Program > Verktygsprogram > Terminal here, Swedish)

You can also enable SSH access from remote, under Sharing.

--anders
March 29, 2005
Dave wrote:
> It sounds like you were ready to spring (for an above avg. cost) new
> system.
> 
> If that's the case - could I suggest something? I'm really impressed
> with the AMD64 chip and some of the boards coming out for it now, as
> well as the Linux support for them (in general). If a laptop is what
> you need, I've been told some of the systems running the AMD64 chip
> are nice as well, as long as you don't need to run them on battery a
> lot.

There are two speeds for a computer: too slow, and adequate.

Buy something 500 times faster than adequate, and you won't even see the difference to adequate. (Everything happens "right now" anyhow.) I've used the biggest Cray in the Nordic Countries, so I know.

> Dual- (Windows/Linux32) or tri- (Windows/Linux32/Linux64) boot the
> new AMD64 system and you'll have a nice all-around, reasonably
> high-perf. system for a reasonable cost as well.

Dunno. Ok, if the real motivation is to explain to wife why you need the coolest laptop around, then Linux64 might be the thing. But for non-game use, I'd use an older laptop.

An older one has got several advantages: longer battery life compared to the screamers (that even burn your willy), and all popular distros install right off the box, with all hardware detected and properly configured.

I bought two IBM ThinkPad T21 machines second-hand, 18 months ago. Both have a 20GB disk, and an 800MHz cpu, with 256MB ram. Got even a 6 month warranty, and Original Licenses for Windows, actually backed up by IBM service!

On one, I use RedHat 9 and Windows 98, on the other Fedora 3 and Windows 2000.

The Linuxes have always been Full installs, and on the windowses I have a lot of applications (Start/Programs is taller than the screen, even though I've grouped apps), Open Office, Microsoft Office, full Cygwin, graphics programs, programming languages, etc. Not having windows on NTFS file system gives me full read/write access from Linux.

Not downloading music or movies lets me have ample disk space. (I'm too old to listen to music while programming, and too much "TV-watching" only erodes your IQ.)  :-) Currently I use these laptops, often side by side, with one on windows and the other on linux.

> I'd also suggest making sure the Linux distro. you are thinking of
> using supports the board you buy, though (for example, up until
> recently SATA support for Linux was about 6 months behind Windows
> support, and you might want to Google for problems supporting the new
> system's Video Card - things like that).

SATA and newest main boards simply are not needed for work use. Especially with Linux!
March 29, 2005
Anders F Björklund wrote:
> Georg Wrede wrote:
> 
>> Inspired by this, I tried a lamp-foot Mac at a Mac-only friend.
>>
>> To my utter embarrasment, I couldn't find the command line?? Is it true that there really isn't one? (He obviously hadn't heard of such a thing, being a Mac-only person. :-( )
> 
> 
> It's hidden under /Applications/Utilities/Terminal.app... :-)
> (shown as Program > Verktygsprogram > Terminal here, Swedish)
> 
> You can also enable SSH access from remote, under Sharing.

Gee, thanks! I'll try that the next time.

Funny, I don't even remember what language his was. Guess I'm just too used to all three. (Finnish, Swedish, English)

Incidentally, your answer came at the last momemt: I was just going to dig up my old tomahawk (Native American war axe, with "Apple" written in permanent felt tip on it) that I've saved for this kind of things. But now I can again think that even Apple may now be an alternative. :-)

<polite fit>

The UI does look even nicer than in magazine pictures. And the screen with the transparent frame was kind of cool. Not to mention the small, cool globular transparent loudspeakers, which had a better sound than designed-to-death gadgets usually do.

The whole thing really looked like a piece of value furniture. Fit to be kept on a mahogany desk with a crimson genuine leather writing area, decorated with 24k gold leaf. Like what you see at rich peoples' next to the top-of-the-line SLR camera, cigar cutter, hand engraved shotgun, and the sword that Really Has Been wielded by Karl the [many sticks, some of them crossed]. None of which the rich guy can properly operate.

</polite fit>