SLI(Simple and Light Interface) Libraries for C users

Very useful libraries handling various streams, string and FITS I/O for C users

Nipponese version

back to Chisato's page  Any reports are welcome: EMAIL: cyamauch (at) ir.isas.jaxa.jp


SLLIB (Script-Like C-language Library) / SFITSIO

SLLIB (Script-Like C-language Library)

SLLIB (Script-Like C-language Library) is a library to append script-like APIs to C language. Using this library, you can handle various streams (e.g., gzip, bzip2, http, ftp, etc.) by learning few APIs, and (associative) array of string can be easily used like PHP.

The SLLIB was developed for the implementation of SFITSIO. The SFITSIO can handle not only standard files but also compressed files and network streams. That is, the SLLIB enabled them.

"SLI" means "Simple and Light Interface". "SLI" in this page has no relation to NVIDIA.

Software package and Document

We release new stable version 1.4.6a at Jun.3,2022.
You can select the license of this software, from GPL or MIT license.
Currently we can provide only Japanese manual. English manual will also prepared in near future.

[Version 1.4 series]
- Software Package (sllib-1.4.6a.tar.gz)
- Software Package (sllib-1.4.5c.tar.gz)

Manuals for version 1.4 is now updating.
- English Basic Manual 1.4.2 [not complete yet!] (pdf)
Use version 1.1 for advance version for now:
- Advamced Manual 1.1 (pdf)

[Version 1.2 series: old version]
- Software Package (sllib-1.2.1f.tar.gz)
- English Basic Manual 1.2.1 (pdf)

[Header files of Version 1.4.5]

You can build this software under Linux, FreeBSD, MacOSX, Solaris and Cygwin.

[How to build]

Installation of zlib, bz2lib and readline is required to build this software. Install them like this:
 $ yum install zlib-devel
 $ yum install bzip2-devel
 $ yum install readline-devel

Then, build SLLIB. Do not use IDE to build this library.
 $ gzip -dc sllib-xxx.tar.gz | tar xvf -
 $ cd sllib-xxx
 $ make
 $ su
 # make install32
When you use 64-bit OS, replace "install32" with "install64".
If you want to build 64-bit library under MacOSX, etc., append an argument like this:
$ make CCFLAGS=-m64
If you want to create a binary package, you can use overrides of PREFIX and DESTDIR.


SFITSIO (A new FITS I/O library for next generation)

SFITSIO is a new FITS I/O library, usable for the C language users, independent from existing FITS libraries, and full-scratched. This next-generation library supports your writing of C-language code with minimizing your efforts, and you can intuitively write your code for FITS I/O in your programs. The APIs express the structure of FITS, therefore, you do not forget usage of APIs. By using SFITSIO, you can escape the nuisance that you frequently read the manual document while writing your code for FITS I/O.
The SFITSIO supports r/w of Image, Ascii Table and Binary Table, and some CFITSIO extensions.

Target users Level Image Group ATE BTE BTE string array BTE n-dim array BTE v-length array CONTINUE header
C or C++ Medium rw - rw rw rw rw rw(low-level API) rw

To compile this library and your code, C++ compiler "g++" is required. However, the APIs of SFITSIO do not depend on classes in C++ standard library. (SFITSIO contains a lot of C-style codes such as printf() function rather than C++ style codes). Therefore, you can use the SFITSIO without C++ experience.

ADASS2009 poster

Software package and Document

We release new stable version 1.4.6 at Oct.24,2022.
You can use this software under MIT license.
In the case of software developments (e.g., OS distribution, etc.) using SFITSIO, there are no requirements of displaying acknowledgment.
Scientific and technical publications using SFITSIO should include the acknowledgment of this software.

[Version 1.4 series]
- Software Package (sfitsio-1.4.6.tar.gz)

Manuals for version 1.4 is now updating.
- English Manual 1.4.2 [not complete yet] (pdf)

[Version 1.2 series old version]
- Software Package (sfitsio-1.2.1c.tar.gz)
- English Manual 1.2.1 (pdf)

[Header files of Version 1.4.4]

You can build this software under Linux, FreeBSD, MacOSX, Solaris and Cygwin. Installation of SLLIB is required to build this software.

[How to build]

WARNING: Do not use IDE to build this library.
Install SLLIB-1.4.2 or later for version 1.4 series, before building SFITSIO. Then build SFITSIO:
 $ gzip -dc sfitsio-xxx.tar.gz | tar xvf -
 $ cd sfitsio-xxx
 $ make
 $ su
 # make install32
When you use 64-bit OS, replace "install32" with "install64".
If you want to build 64-bit library under MacOSX, etc., append an argument like this:
 $ make CCFLAGS=-m64
If you want to create a binary package, you can use overrides of PREFIX and DESTDIR.

Links


Last Modified: Oct.24,2022