Mac build works - sort of

David Reiser <[email protected]> Wed, 9 Feb 2005 19:37:34 -0500
Newsgroups gmane.comp.db.rekall.devel
Message-ID <[email protected]>
I finally got the Mac build to work -- at least the main app. Trying to 
start the help system triggers a claim that the app can't find the 
browser in any of the usual places.

I did have to tweak rkBuilder.py in order to get around the hard coded 
library paths:

--- /Users/dbr/Desktop/rekall-CVS-Feb5/scons/rkBuilder.py	Tue Jan 11 
13:23:22 2005
+++ /Applications/rekallsrc/scons/rkBuilder.py	Wed Feb  9 17:02:35 2005
@@ -352,8 +352,11 @@
          if self.m_build in [ buildMAC ] :
              self.addInclude(rkConfig.qt3IncDir) ;
              self.addLibPath(rkConfig.qt3LibDir) ;
-            self.addLib    ('qt')
-
+            self.addLib    ('qt-mt')
+            if self.m_type == typeSharedLib :
+                 self.addLFlags 
('-Wl,-install_name,@executable_path/../Frameworks/%s' % (self.m_target 
+ '.dylib'))
+            if self.m_type == typeLoadedLib :
+                 self.addLFlags 
('-Wl,-install_name,@executable_path/../Plugins/%s' % (self.m_target + 
'.dylib'))

          if rkConfig.debug :
              self.addCFlags ('-g')


The 'qt-mt' change was needed because I compiled Qt with the -thread 
switch. (And there's at least one other place that substitution is 
needed...)

A side effect of the rkBuilder.py mods is that the linker suddenly 
insisted that it needed the el32 info in -L and -l switches for linking 
all the plugins (except the db drivers) and libkbase_app.dylib. So I 
tweaked the SConscripts for those directories.

There is certainly lots of strange behavior in the app the way it ended 
up on my machine. I may go back and try to do a Fink style install to 
see if the interface elements that are behaving strangely get better in 
the plain Qt/Unix flavor. But I'm excited to have it working this well. 
Now, I need to learn MySQL and Rekall. Tally Ho.

As suggested by the diff output, my compile used the source from CVS as 
of Saturday, Feb 5.

Dave