This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
en:software:porting [2010/12/03 14:31] – stefan | en:software:porting [2012/07/04 19:25] – [MacOS port] 109.125.102.124 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Porting to other Platforms | + | ====== Porting to other Platforms ====== |
The SDK contains two platform dependent components: the JNI library of libusbJava and the [[en: | The SDK contains two platform dependent components: the JNI library of libusbJava and the [[en: | ||
- | The package contains 32 bit Linux and Windows | + | The package contains |
- | recompile anything. Users of 32 bit Linux usually only need to recompile the JNI library. | + | |
- | Users who ported any component are asked to send me the libraries / binaries in order that I can include them into the SDK and make them | + | In order to add support |
- | usable | + | |
===== Compiling the JNI library ===== | ===== Compiling the JNI library ===== | ||
Line 12: | Line 10: | ||
- Change to the directory '' | - Change to the directory '' | ||
- | - Set '' | + | - in '' |
- | - For other OS than Linux: replace '' | + | - in '' |
+ | - in '' | ||
- Run '' | - Run '' | ||
- Run '' | - Run '' | ||
- | |||
- | '' | ||
- | When libusbJava starts it first tries to load the shared version which uses the libusb of the system. | ||
- | version is tried which also runs on computers where no libusb is installed. | ||
After a new JNI library has been compiled and installed the jar archives need to be repacked. This can be done by removing the jar file and by running make in the same directory. | After a new JNI library has been compiled and installed the jar archives need to be repacked. This can be done by removing the jar file and by running make in the same directory. | ||
Line 25: | Line 20: | ||
===== bmp ===== | ===== bmp ===== | ||
- | + | The [[en: | |
- | The [[en: | + | |
- Change to the directory '' | - Change to the directory '' | ||
+ | - in '' | ||
- Run '' | - Run '' | ||
- Run '' | - Run '' | ||
+ | NOTE that FreePascal recently (Jan 1st, 2012) released a major new version, 2.6.0. This includes extensive language changes, and breaks compatibility with the [[en: | ||
+ | |||
+ | A quick and dirty hack may be possible, but it's sensitive code (recursively parsing using a derived class). I'm not this conservative usually, but my (catfish) advice is simply to use an earlier version of FPC that supports passing derived classes to var- and out-parameters. It is confirmed that bmp will compile on FPC 1.0, 2.0 and 2.2 - these are no longer supported. I can further confirm that FPC 2.4.0 will successfully compile bmp (tested on 32-bit and | ||
+ | 64-bit Mac OS X 10.6 Snow Leopard, on both genuine Apple hardware and Hackintosh rigs, and 64-bit Linux). | ||
+ | |||
+ | ===== MacOS port ===== | ||
+ | |||
+ | A MacOS port of the JNI library has been made available by a user. In order to run the jar packages generated with the SDK under MacOS the library file [[http:// | ||
+ | Note that this file only supports the Intel Platform (Universal Binary i386 and x86_64) - if you are running an old PowerPC system obviously an x86 binary will not work, you have to compile a version suitable for your system yourself. | ||
+ | |||
+ | A better solution is to install the libusb_compat port from MacPorts or homebrew and then compile the libusbJava SDK source using the catfish Makefile. This will produce both 32-bit and 64-bit (if your system supports it) JNI library files, which can either be installed into the system or simply copied into the folder used for ZTEX Java applications. | ||
{{indexmenu_n> | {{indexmenu_n> | ||