[OGo-MacOSX] Instructions for MacOSX install... solution for bundle loading

Alexander Lamb macosx@opengroupware.org
Fri, 21 Apr 2006 15:21:28 +0200


Ok, it was the RTFM again syndrome:

Defaults write NSGlobalDomain NGBundlePath '"/GNUstep/Library/ 
OpenGroupware.org-1.1/Commands:/GNUstep/Library/OpenGroupware.org-1.1/ 
DataSources:/GNUstep/Library/OpenGroupware.org-1.1/WebUI:/GNUstep/ 
Library/OpenGroupware.org-1.1"'

In order to have the server know where to find the bundles. Need to  
do the same for images.
Probably because my GNUstep root is not in a "normal" place.

Alex
--
Alexander Lamb
alamb@mac.com



On Apr 21, 2006, at 12:29 PM, Alexander Lamb wrote:

> Hello,
>
> Sorry for cross posting... I simply "replied" to the other post!
>
> Here is the post which should have been in this list:
>
> ====
> Ok,
>
> It is not perfect, but here is what I managed to do. Basically, it  
> compiles, installs.... however, when I run the server I get errors  
> and can't connect to it (neither in direct mode, nor through the  
> Apache adaptor).
>
> The errors I get in the terminal are:
>
> ($:/GNUstep/Tools)-> /GNUstep/Tools/ogo-webui-1.1 -WOPort 20000 - 
> WOHttpAllowHost localhost
> 2006-04-21 12:23:36.978 ogo-webui-1.1[12360] ERROR 
> (NGBundleManager): did not find bundle 'LSAddress' (type=cmd)  
> required by bundle /GNUstep/Library/OpenGroupware.org-1.1/Commands/ 
> LSAccount.cmd.
> 2006-04-21 12:23:37.011 ogo-webui-1.1[12360] account::change- 
> password: using password field: 'userPassword'
> 2006-04-21 12:23:37.016 ogo-webui-1.1[12360] ERROR 
> (NGBundleManager): did not find bundle 'LSSearch' (type=cmd)  
> required by bundle /GNUstep/Library/OpenGroupware.org-1.1/Commands/ 
> LSAddress.cmd.
> 2006-04-21 12:23:37.046 ogo-webui-1.1[12360] Note: storing cached  
> vCards files in: '/var/lib/opengroupware.org/documents'
> 2006-04-21 12:23:37.077 ogo-webui-1.1[12360] ERROR 
> (NGBundleManager): did not find bundle 'LSSearch' (type=cmd)  
> required by bundle /GNUstep/Library/OpenGroupware.org-1.1/Commands/ 
> LSDocuments.cmd.
> 2006-04-21 12:23:37.106 ogo-webui-1.1[12360] ERROR 
> (NGBundleManager): did not find bundle 'LSSearch' (type=cmd)  
> required by bundle /GNUstep/Library/OpenGroupware.org-1.1/Commands/ 
> LSMail.cmd.
> 2006-04-21 12:23:37.111 ogo-webui-1.1[12360] ERROR: did not find  
> executable sendmail file: '/usr/lib/sendmail'
> 2006-04-21 12:23:37.138 ogo-webui-1.1[12360] ERROR 
> (NGBundleManager): did not find bundle 'LSSearch' (type=cmd)  
> required by bundle /GNUstep/Library/OpenGroupware.org-1.1/Commands/ 
> LSProject.cmd.
> 2006-04-21 12:23:37.217 ogo-webui-1.1[12360] Note: members of role  
> team 'team creators' are allowed to create teams.
> 2006-04-21 12:23:37.386 ogo-webui-1.1[12360] Note: located themes:  
> OOo, blue, kde, orange
> 2006-04-21 12:23:37.388 ogo-webui-1.1[12360] Note: located no  
> additional translations.
> Apr 21 12:23:37 ogo-webui-1.1 [12360]: |ogo-webui-1.1| CTI Dialers:
> 2006-04-21 12:23:37.404 ogo-webui-1.1[12360] WOCompoundElement:  
> pool embedding is on.
> 2006-04-21 12:23:37.404 ogo-webui-1.1[12360] WOCompoundElement: id  
> logging is on.
> Apr 21 12:23:37 ogo-webui-1.1 [12360]: [WARN] <0x005B9230 
> [OGoContextManager]> disabled login spaces which are unsupported on  
> this Foundation library.
> Apr 21 12:23:37 ogo-webui-1.1 [12360]: |ogo-webui-1.1| root has no  
> password, you need to assign one!
> Apr 21 12:23:37 ogo-webui-1.1 [12360]: |ogo-webui-1.1|  
> OpenGroupware.org instance initialized.
> Apr 21 12:23:37 ogo-webui-1.1 [12360]: |ogo-webui-1.1|  
> WOHttpAdaptor listening on address *:20000
>
> ====
> Now, here are the instructions I put together with the help of the  
> documentation and feedback from Helge!
>
> ==============================================
> OpenGroupware MacOSX Install:
>
> 1: Postgres install and initial config
> ======================================
>
> Download it from www.entropy.ch
>
> It's easy, it's a package.
>
> Then follow instructions on site to create a postgres user and  
> start the database server.
>
> You can also install a package which shall create a StartupItem in / 
> Library to start postgres upon startup of the system.
>
> Now, you need to create a database for OGo. If you create a  
> database called OGo with a user OGo and no password, the OGo server  
> will login automatically without needing any additionnal setup.
> First become postgres (if you are continuing from the steps  
> described on the entropy site, you are probably already postgres):
>
> 	su - postgres
>
> Then create a OGo user:
>
> 	/usr/local/bin/createuser OGo
>
> 	(answer no to the three questions: is a super user, can create  
> databases, can create roles)
>
> Finally create the database (named OGo with owner OGo):
>
> 	/usr/local/bin/createdb -O OGo OGo
>
> To check the database exists, you can simply connect to it:
>
> 	/usr/local/bin/psql OGo
>
> If you are doing this from your postgres account (suggested) you  
> will be a superuser for this database and see the following prompt:
>
> 	OGo=#
>
> You can quit typing "\q"
>
> Now exit from your postgres account:
>
> 	exit
>
> And try to connect again to the database, but this time you will  
> need to identify yourself:
>
> 	/usr/local/bin/psql -U OGo
>
> No password is needed (we didn't set one on purpose) so you will  
> see the following prompt:
>
> 	OGo=>
>
> Quit by typing "\q"
>
>
> 2: Create a workspace and download the source for SOPE and OGo
> ==============================================================
>
> For example create : $HOME/_Workspace
>
> Then get the SOPE package:
>
> for example, the latest release of SOPE (as of 19th of april 2006)
>
> 	svn co http://svn.opengroupware.org/SOPE/releases/4.5.6-morecore/  
> $HOME/_Workspace/SOPE-4.5.6
>
> and the latest release of OGo
>
> 	svn co http://svn.opengroupware.org/OpenGroupware.org/releases/ 
> 1.1.3-moveon/ $HOME/_Workspace/OGo-1.1.3
>
>
> 4: Compile the source
> =====================
> Although the distribution contains xcode projects, in order to  
> compile and run OGo, you need to compile it in the GNUstep way.  
> This will ensure the libraries are compiled and installed in the  
> correct place for OGo.
>
> 4.1: Preparing the make environment
> ===================================
> There are two things important here. The first is to decide where  
> the GNUstep directory is going to be installed. You could put it in  
> your home but since it will be used for libraries, etc... I  
> recommend simply puting at the root of your disk (like /opt or / 
> usr). The second important thing is to specify apple-apple-nil for  
> the library-combo option. This will indicate you are using the  
> Cocoa libraries instead of the GNUstep libraries for a certain  
> number of foundation functions.
>
> So, from your SOPE directory:
>
> 	cd gnustep-make
> 	./configure 	--prefix=/GNUstep \
> 			--without-system-root \
> 			--with-network-root=/GNUstep \
> 			--with-local-root=/GNUstep \
> 			--with-user-root=/GNUstep \
> 			--with-library-combo=apple-apple-nil
>
> Now you can build your GNUstep environment:
>
> 	make install
>
> You can see a /GNUstep directory at the root of your disk.
>
> Now, run:
>
> 	source /GNUstep/Library/Makefiles/GNUstep.sh
>
> (assuming you put GNUstep at the root of your disk).
>
> In order to have environment variables correctly set, it is a good  
> idea to add that line to your .bashrc file in your home directory  
> (or in any home which might have to compile or run OGo).
>
> 4.2: Compile and install SOPE
> =============================
>
> First go to the SOPE directory.
> Then run configure:
>
> 	./configure --disable-strip --enable-debug --with-gnustep
>
> Then make:
>
> 	make all
>
> Then make install (if you are installing in the GNUstep tree you  
> created yourself, you shouldn't need to sudo):
>
> 	make install
>
> The install will add (in your GNUstep tree):
>
> 	Library/GDLAdaptors-4.5/...
> 	Library/SaxDrivers-4.5/...
> 	Library/SaxMappings/...
> 	Library/SoProducts-4.5/...
> 	Library/WOxElemBuilders-4.5/...
>
> 	Library/Headers/manydirectoriesfullofheaders...
>
> 	Library/Libraries/manylibraries...
>
> 	Library/Libraries/Resources/NGObjWeb/...
>
> 	Library/Makefiles/woapp.make
> 	Library/Makefiles/wobundle.make
> 	Library/Makefiles/Additional/ngobjweb.make
>
> 	Library/Tools/connect-EOAdaptor
> 	Library/Tools/domxml
> 	Library/Tools/gcs_cat
> 	Library/Tools/gcs_gensql
> 	Library/Tools/gcs_ls
> 	Library/Tools/gcs_mkdir
> 	Library/Tools/gcs_recreatequick
> 	Library/Tools/ldap2dsml
> 	Library/Tools/ldapchkpwd
> 	Library/Tools/ldapls
> 	Library/Tools/load-EOAdaptor
> 	Library/Tools/rss2plist1
> 	Library/Tools/rss2plist2
> 	Library/Tools/rssparse
> 	Library/Tools/saxxml
> 	Library/Tools/sope-4.5
> 	Library/Tools/testqp
> 	Library/Tools/wod
> 	Library/Tools/xmln
> 	Library/Tools/xmlrpc_call
>
> 4.3: Compile and install OGo
> ============================
>
> First go to the OGo directory.
>
> Then run configure:
>
> 	./configure --disable-strip --enable-debug --with-gnustep
>
> Then make:
>
> 	make all
>
> You might see some warnings such as
>
> Linking bundle PrefsUI ...
> /usr/bin/ld: warning can't open dynamic library:  
> libLSFoundation_d.dylib.5.3 referenced from: ../ZSBackend/./ 
> shared_debug_obj/libZSBackend_d.dylib (checking for undefined  
> symbols may be affected) (No such file or directory, errno = 2)
> /usr/bin/ld: warning can't open dynamic library: libNGLdap_d.dylib. 
> 4.5 referenced from: ../ZSBackend/./shared_debug_obj/ 
> libZSBackend_d.dylib (checking for undefined symbols may be  
> affected) (No such file or directory, errno = 2)
>
> or
>
> Linking bundle LSAddress ...
> /usr/bin/ld: warning can't open dynamic library: libNGiCal_d.dylib. 
> 4.5 referenced from: ././shared_debug_obj/libLSAddress_d.dylib  
> (checking for undefined symbols may be affected) (No such file or  
> directory, errno = 2)
>
> But it doesn't seem to be important...
>
> Then install:
>
> 	make install
>
> The install process moved some files to your GNUstep tree:
>
> 	OpenGroupware.org-1.1/...
>
> 	Library/Headers/LSFoundation/...
> 	Library/Headers/OGoAccounts/...
> 	Library/Headers/OGoBase/...
> 	Library/Headers/OGoContacts/...
> 	Library/Headers/OGoDatabaseProject/...
> 	Library/Headers/OGoDocuments/...
> 	Library/Headers/OGoFileSystemProject/...
> 	Library/Headers/OGoFoundation/...
> 	Library/Headers/OGoJobs/...
> 	Library/Headers/OGoProject/...
> 	Library/Headers/OGoRawDatabase/...
> 	Library/Headers/OGoScheduler/...
> 	Library/Headers/OGoSchedulerTools/...
> 	Library/Headers/OGoWebMail/...
>
> 	Library/Libraries/...
>
> 	Library/Libraries/Resources/OGoScheduler/...
>
> 	Tools/load-LSModel
> 	Tools/ogo-webui-1.1
>
>
> 5: Create the OGo database schema
> =================================
>
> So, now everything is in place, we can create the Postgres database  
> schema.
>
> Again become a postgres user:
>
> 	su - postgres
>
> Then go to the directory containing the scripts (in the OGo source  
> tree):
>
> 	cd the_path_to_ogo/Database/PostgreSQL
>
> Connect to the database OGo as user OGo and run the script:
>
> 	/usr/local/bin/psql -h localhost OGo OGo < pg-build-schema.psql
>
> 6: Enable OGo to find its resources
> ===================================
>
> From the command line (as usuall):
>
> 	pushd $GNUSTEP_USER_ROOT
> 	ln -s the_path_to_the_ogo_sources/OGo-1.1.3/WebUI/Resources .
>
> (don't forget the final "." and don't add a trailing "/" to Resources)
>
> 	ln -s the_path_to_the_ogo_sources/OGo-1.1.3/Themes/ 
> WebServerResources .
> 	ln -s the_path_to_the_ogo_sources/_Workspace/OGo-1.1.3/WebUI/ 
> Templates Library/OpenGroupware.org-1.1/Templates
> 	
> You can now see a in your GNUstep root, a link to Resources,  
> another one to WebServerResources and one to Templates in Library/ 
> OpenGroupware.org-1.1
>
> 7: Build the Apache adaptor
> ===========================
>
> The adaptor is in your SOPE source:
>
> 	cd path_to_sope/SOPE-4.5/sope-appserver/mod_ngobjweb
>
> You will need to edit the GNUMakeFile (make a backup first) and  
> comment out the following lines:
>
> 	# lowercase are commandline args (eg make apxs=/usr/bin/apxs)
> 	#ifneq ($(apxs),no)
> 	#ifneq ($(apxs),yes)
> 	#ifneq ($(apxs),)
> 	#APXS=$(apxs)
> 	#else
> 	#APXS=$(shell which apxs 2>/dev/null)
> 	#endif
> 	#else
> 	#APXS=$(shell which apxs 2>/dev/null)
> 	#endif
> 	#else
> 	#APXS=
> 	#endif
>
> 	# lowercase are commandline args (eg make apr=/usr/bin/apr)
> 	#ifneq ($(apr),no)
> 	#ifneq ($(apr),yes)
> 	#ifneq ($(apr),)
> 	#APR=$(apr)
> 	#else
> 	#APR=$(shell which apr-config 2>/dev/null)
> 	#endif
> 	#else
> 	#APR=$(shell which apr-config 2>/dev/null)
> 	#endif
> 	#else
> 	#APR=
> 	#endif
>
> 	#ifeq ($(APXS),)
> 	#APXS=$(shell which apxs2 2>/dev/null)
> 	#ifeq ($(APXS),)
> 	#APXS   = $(APACHE)/sbin/apxs2
> 	#endif
> 	#endif
>
> Then build the adaptor:
>
> 	make
>
> It should create (after a few warnings) a file called mod_ngobjweb.so
> You need to copy it into the modules directory for Apache:
>
> 	sudo cp mod_ngobjweb.so /usr/libexec/httpd
>
> Then modify your httpd.conf file to make Apache load the module.
> It is located in /etc/httpd
>
> After the lines loading other modules, add:
>
> 	LoadModule ngobjweb_module	libexec/httpd/mod_ngobjweb.so
>
> Same after the line adding the .c files:
>
> 	AddModule ngobjweb_module.c
>
> In order to have the module redirect calls correctly, you need to  
> add this to the end of the httpd.conf file:
>
> 	<LocationMatch "^/OpenGroupware*">
> 	SetHandler ngobjweb-adaptor
> 	SetAppPort 20000
> 	</LocationMatch>
>
> 8: Start the server!
> ====================
>
> Make sure you stoped and started the Apache server (simplest  
> through the preferences panel "Sharing").
>
> Then start from a terminal your OGo server:
>
> 	/GNUstep/Tools/ogo-webui-1.1 -WOPort 20000 -WOHttpAllowHost localhost
>
> 9: Connect to the server
> ========================
>
> In a browser, type
>
> 	http://localhost/OpenGroupware
>
>
>
> ===
>
> --
> Alexander Lamb
> alamb@mac.com
>
>
>
> On Apr 21, 2006, at 6:50 AM, Alexander Lamb wrote:
>
>
>> Hello,
>>
>> I am in the middle of it. Currently writing a little summary.
>> If you can "give" me half a day, I will post some explanation (I  
>> didn't have time to go through the whole install yet).
>>
>> Alex
>> --
>> Alexander Lamb
>> alamb@mac.com
>>
>>
>>
>> On Apr 20, 2006, at 9:51 PM, Peter Schraufstetter wrote:
>>
>>
>>> Hi folks,
>>>
>>> has anybody here setup OGo on Mac OS X (Tiger)?
>>> I tried to install it but i am getting errors during the  
>>> installation when compiling SOPE during the "make install" .
>>>
>>> Here are the last lines of my terminal output:
>>>
>>> make[3]: *** [internal-bundle-install_] Error 1
>>> make[2]: *** [libxmlSAXDriver.install.bundle.variables] Error 2
>>> make[1]: *** [internal-install] Error 2
>>> make: *** [internal-install] Error 2
>>>
>>> I have no idea what goes wrong.
>>>
>>> Thanx
>>> Peter
>>> -- 
>>> OpenGroupware.org Users
>>> users@opengroupware.org
>>> http://mail.opengroupware.org/mailman/listinfo/users
>>>
>>
>> -- 
>> OpenGroupware.org Users
>> users@opengroupware.org
>> http://mail.opengroupware.org/mailman/listinfo/users
>>
>
>
> --
> Alexander Lamb
> alamb@mac.com
>
>
>
> -- 
> OpenGroupware.org MacOS X
> macosx@opengroupware.org
> http://mail.opengroupware.org/mailman/listinfo/macosx