JournalX v0.1

garth on 2002-05-19T03:05:52

The application: JournalX

The source: JournalX Source

You need to know your uid for the site to get your journal, which can be found on the front page when you are logged into the site. You also need to fill in your user details in your preferences before anything can happen.

The following modules are required: HTTP::Cookies SOAP::Lite Digest::MD5 Date::Simple

If anyone actually uses it, or has any suggestions for improvments, I would love to hear from you :-)

Update: Looks like the executable/bundle doesn't bring the camelbones framework along with it. So, to run the application, you need to install the camelbones framework, which can be downloaded from here

Update again:Second time lucky, hopefully. The link above now goes to a newer version of the application, which has the framework as part of the application bundle. It should work without needing to download the camelbones framework yourself.


Linking! Arggh!

acme on 2002-05-19T08:29:13

It looks like the binary isn't relocatable (unless I have a user called sherm ;-):

dyld: /Volumes/JournalX/JournalX.app/Contents/MacOS/JournalX can't open library: /Users/sherm/Projects/CamelBones/build/CamelBones.framework/Versions/A/ CamelBones (No such file or directory, errno = 2)

I'll try building from source.

Re:Linking! Arggh!

garth on 2002-05-19T11:27:08

Bugger!

Looks like it wants the camelbones framework. I would have thought that would get compiled into the application, but obviously not...

You can get the framework from here if you want to compile it.

I guess I need to try and find out how to get the framework linked into the application.

Re:Linking! Arggh!

garth on 2002-05-19T12:59:06

Could you try again, with the newer version, and see if it works?

You can grab it here

Re:Linking! Arggh!

acme on 2002-05-19T15:17:26

Looks great!

Now, what should I do if I want to use a non-system perl, like my /Users/acme/bin/perl (bleadperl) in Camelbones?

Cheers, Leon

Re:Linking! Arggh!

garth on 2002-05-20T00:15:43

You are exposing my lack of Cocoa/Framework knowledge here :-)

I would guess that you need to re-compile the framework from source, pointing to the desired perl install, and making the installation location as "@executable_path/../Frameworks", as described in this article. Then to use that framework in the application, you would need to open up the bundle, and replace the current framework in JournalX.app/Contents/Frameworks.

I haven't tried any of this, so it could be completely and utterly wrong. If I get a chance, I will grab a newer version of perl tonight and give it a try.

Oh, and if it doesn't work, you could try asking Sherm or Dan, as both of them should know camelbones better than I.

Re:Linking! Arggh!

Sherm on 2002-10-22T04:39:00

That's pretty much how it's done. Pointing to the desired Perl install amounts to changing a couple of build settings. The article you pointed to is a great one.



Although I'd like to point out that having a shared /Library/Frameworks/CamelBones.framework will eliminate the need to replace the framework in individual apps. If an app uses the shared framework, it doesn't care about what version of libperl that framework is linked against. That doesn't matter much, if you have only one Cocoa-Perl app; if you have a dozen, having to update them individually could be a pain.



Fact is, I'm sitting firmly on the fence on this issue. Drag and drop installs are a long-standing Mac tradition, they're convenient for end users, and many folks are skeptical regarding Apple's Installer - rightly so, after the iTunes fiasco.



On the other paw, embedding the framework in your .app bundle complicates things when libperl gets updated. Apple can't drag their feet on 5.8.0 forever - and many folks have taken matters into their own hands and compiled their own. When that happens - and sooner or later, it will - it will be much, much simpler for end users to simply install a single updated framework, than it will be for them to either download and install updated apps, or try to update all the embedded frameworks.

How long should the first connection take?

Sherm on 2002-10-22T04:48:55

Okay, stupid me, I used my user name instead of the number the first time, and that didn't work. So, I blew away the preferences and tried it again.



Now, it seems to connect OK - but it keeps talking back and forth to the server endlessly. Well, maybe not endlessly - I watched my modem lights blink furiously for about fifteen minutes before I finally gave up and killed it.



I realize that, since I'm on dial-up, and SOAP is a rather chatty protocol, a certain amount of patience is necessary. But, I have only a single one-line journal entry, so I don't think it should take that long. Any ideas?