Forum OpenACS Q&A: compiling nsxml on debian.

Collapse
Posted by Klyde Beattie on
Apperantly there is a compatability problem with the nsxml src and somthing on my debian system (I think the header files) I get an error like this:

gcc -g -I/usr/lib/aolserver/include -D_REENTRANT -pipe -fPIC -Wall -Wno-unused -DHAVE_CMMSG=1 -DUSE_FIONREAD=1 -DHAVE_COND_EINTR=1 -c -o ns_xml.o ns_xml.c ns_xml.c: In function `Ns_ModuleInit': ns_xml.c:1510: warning: implicit declaration of function `xmlMemSetup' ns_xml.c:1510: `xmlFreeFunc' undeclared (first use in this function) ns_xml.c:1510: (Each undeclared identifier is reported only once ns_xml.c:1510: for each function it appears in.) ns_xml.c:1510: parse error before `ns_free' ns_xml.c:1519: warning: implicit declaration of function `xmlInitParser' make: *** [ns_xml.o] Error 1

I just used a binary from davb compiled with libxml2 2.4.6 you can find this at http://www.thedesignexperience.org/nsxml.so

if anyone knows whats happening feel free to post, and thanks to all the people who helped me get OACS working :)

Collapse
Posted by Jowell Sabino on
I had to add this to my Makefile to compile ns_xml:

CFLAGS += -I/usr/include/libxml2 

I'm using Debian woody.

Collapse
Posted by Klyde Beattie on
That didn't seem to help me.
Collapse
Posted by Jowell Sabino on
One of these days I will finish my guide to installing OpenACS4 on a Debian woody based computer (in the spirit of Gilbert Wong's guide to installing on BSD). I think somebody else started on it, but I can't find his name by searching the forums.

I'm currently using the aolserver and postgresql debian packages with OpenACS4. I didn't have to compile these two packages from sources. I did replace the nsd.tcl file, and added postgres memory tweaks, though. The only real difficulty (as you are experiencing, and I did, too) is compiling the modules.

To compile the modules (esp. ns_xml), I had to download

  • aolserver-dev
  • libxml2-dev (this will put the necessary header files in /usr/include/libxml2)
  • postgresql-dev (for the postgres driver)
The Makefile should also be "debianized", so that modules are installed in the proper place. Usually, all it takes is setting NSHOME to /usr/lib/aolserver. The postgres driver has debian settings in its Makefile, so you can use it as a guide.

If the above still don't help, I may have to rewrite my guide document and fire up a fresh debian installation (thank you vmware) to retrace exactly what I did. In the perfect world, somebody will debianize openacs4 (plus modules), just like openacs3.

Collapse
Posted by Klyde Beattie on
If you need any help from a novice OACS'er intermediate Debian'er I
would be happy to help. I can do simple things such as put all the work
into a docbook, and test the guide. (I'll start by testing what you suggested)

In my opinion one should be able to, with any working debian intallation,
be able to apt-get install OpenACS and get a working version. Of course you
would have to include configuration into the install process, but as many
have stated, newbies spend most of thier time figuring out where files are/go
and a million other things that they will have to know anyway, but may not
want to focus on at this time. As i may have mentioned before _most_ of
what i know about Linux (from a user standpoint) I learned from installing ACS.

Is this a good thing or a bad thing? :P

Collapse
Posted by Talli Somekh on
An "apt-get install OpenACS" package would be beautiful, and would most likely be appreciate by many in this community. I'm beginning to sense that a very large percentage of people in the community use Debian. I don't know if that is indicative of Linux users in general, but I'm sure Debian has a nice share either way.

How much effort does it take to create a debian package anyway?

talli

Collapse
Posted by Klyde Beattie on
To become a debian maintainer you have to go through a series of requirements. This is sort of a pain, check out the part about getting a package sponsored, that might work out. To make a debian package, however you just need to use dpkg. Maybe i'll talk to the person who is maintaining OACS 3.