Difference between revisions of "Protege4DevDocs"

From Protege Wiki
Jump to: navigation, search
(Building The FaCT++ jni library)
(Building The FaCT++ jni library)
Line 40: Line 40:
 
== Building The FaCT++ jni library ==
 
== Building The FaCT++ jni library ==
  
On some occasions FaCT++ will have problems...
+
Because FaCT++ is written in C++, it is a little harder to get it to compile properly across platforms.  In particular, a user may see errors such as
 +
Link (dyld) error:
 +
Symbol not found: _clock$UNIX2003
 +
or a  java.lang.UnsatisfiedLinkError with a message similar to the following
 +
libFaCTPlusPlusJNI.so: /usr/lib/libstdc++.so.6: version `GL IBCXX_3.4.9' not found (required by libFaCTPlusPlusJNI.so)
 +
This happens because the version of FaCT++ that was compiled into the Protege 4 owl editor is not compatible with the libraries in the users operating system.  If this happens on a windows or an OS X machine then send a message to the [mailto:p4-feedback@lists.stanford.edu P4 mailing list] because the developers probably should fix  this situation.  However on a linux or other operating system this is much more difficult because there are too many different variants.  In this case you will probably have to build you own version of FaCT++. Hence we added the following page to make the work a little easier.
  
 
* [[BuildingTheFactJniLibrary|Building the FaCT++ JNI Library]]
 
* [[BuildingTheFactJniLibrary|Building the FaCT++ JNI Library]]

Revision as of 08:32, April 18, 2008

Protege 4 Developer Documentation

This page is still somewhat under construction...



Working with the Protege source code

Compiling and Running the Protege-OWL editor in a Generic IDE

This section describes how to set up an IDE for plugin development. We describe this in two steps - first the core Protege sources are downloaded and compiled and then a plugin project is created. While these instructions were put together using eclipse we believe that they can be applied to other development environments and we welcome contributions from people using other development environments.

Compiling and Running a Plugin for Eclipse Users Only (Windows and Linux only)

Unlike the approaches for plugin development described above, the following instructions are only relevant to eclipse developers. These instructions use the OSGi development capabilities of eclipse (aka plugin development or rich client platform development). As far as I know - eclipse is the best IDE environment for developing OSGI applications.

Unfortunately - though we now know that this works - we have not yet finished the documentation. While this also has not yet been verified, it may be necessary to download the latest version of eclipse to get the OSGi runnable to work.

Writing a simple view plugin (with example code)

A short guide to writing a plug-in to show the class hierarchy. This doesn't delve deeply into setting up your build environment, but concentrates on a simple code example and making sure you understand the components and the structure of a plug-in.

Troubleshooting

Building The FaCT++ jni library

Because FaCT++ is written in C++, it is a little harder to get it to compile properly across platforms. In particular, a user may see errors such as

Link (dyld) error:
Symbol not found: _clock$UNIX2003

or a java.lang.UnsatisfiedLinkError with a message similar to the following

libFaCTPlusPlusJNI.so: /usr/lib/libstdc++.so.6: version `GL IBCXX_3.4.9' not found (required by libFaCTPlusPlusJNI.so)

This happens because the version of FaCT++ that was compiled into the Protege 4 owl editor is not compatible with the libraries in the users operating system. If this happens on a windows or an OS X machine then send a message to the P4 mailing list because the developers probably should fix this situation. However on a linux or other operating system this is much more difficult because there are too many different variants. In this case you will probably have to build you own version of FaCT++. Hence we added the following page to make the work a little easier.