Linus Walleij | 0dd71e9 | 2006-05-04 18:47:07 +0000 | [diff] [blame^] | 1 | Building and Installing |
| 2 | ----------------------- |
Linus Walleij | 6fd2f08 | 2006-03-28 07:19:22 +0000 | [diff] [blame] | 3 | |
Linus Walleij | 0dd71e9 | 2006-05-04 18:47:07 +0000 | [diff] [blame^] | 4 | See the "INSTALL" file. |
| 5 | |
| 6 | |
| 7 | Heritage |
| 8 | -------- |
| 9 | |
| 10 | libmtp is based on several ancestors: |
| 11 | |
| 12 | * libptp2 by Mariusz Woloszyn was the starting point used |
| 13 | by Richard A. Low for the initial starter port. You can |
| 14 | find it at http://libptp.sourceforge.net/ |
| 15 | |
| 16 | * libgphoto2 by Mariusz Woloszyn and Marcus Meissner was |
| 17 | used at a later stage since it was (is) more actively |
| 18 | maintained. libmtp tracks the PTP implementation in |
| 19 | libgphoto2 and considers it an upstream project. We will |
| 20 | try to submit anything generally useful back to libgphoto2 |
| 21 | and not make double efforts. In practice this means we |
| 22 | use ptp.c, ptp.h and ptp-pack.c verbatim from the libgphoto2 |
| 23 | source code. If you need to change things in these files, |
| 24 | make sure it is so general that libgphoto2 will want to |
| 25 | merge it to their codebase too. You find libgphoto2 as part |
| 26 | of gPhoto: http://gphoto.sourceforge.net/ |
| 27 | |
| 28 | * libnjb was a project that Richard and Linus were working |
| 29 | on before libmtp. When Linux took Richards initial port |
| 30 | and made an generic C API he re-used the philosophy and |
| 31 | much code from libnjb. Many of the sample programs are for |
| 32 | example taken quite literally from libnjb. You find it here: |
| 33 | http://libnjb.sourceforge.net/ |
| 34 | |
| 35 | |
| 36 | Compiling programs for libmtp |
| 37 | ----------------------------- |
| 38 | |
| 39 | libmtp has support for the pkg-config script by adding a libmtp.pc |
| 40 | entry in $(prefix)/lib/pkgconfig. To compile a libmtp program, |
| 41 | "just" write: |
| 42 | |
| 43 | gcc -o foo `pkg-config --cflags --libs libmtp` foo.c |
| 44 | |
| 45 | This also simplifies compilation using autoconf and pkg-config: just |
| 46 | write e.g. |
| 47 | |
| 48 | PKG_CHECK_MODULES(MTP, libmtp) |
| 49 | AC_SUBST(MTP_CFLAGS) |
| 50 | AC_SUBST(MTP_LIBS) |
| 51 | |
| 52 | To have libmtp LIBS and CFLAGS defined. Needless to say, this will |
| 53 | only work if you have pkgconfig installed on your system, but most |
| 54 | people have nowadays. |
| 55 | |
| 56 | If your library is installed in e.g. /usr/local you may have to tell |
| 57 | this to pkgconfig by setting the PKG_CONFIG_PATH thus: |
| 58 | |
| 59 | export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig |
| 60 | |
| 61 | |
| 62 | Documentation |
| 63 | ------------- |
| 64 | |
| 65 | Read the API documentation that can be generated with doxygen. |
| 66 | It will be output in doc/html if you have Doxygen properly |
| 67 | installed. (It will not be created unless you have Doxygen!) |
| 68 | |
| 69 | For information about the Media Transfer Protocol, see: |
| 70 | http://en.wikipedia.org/wiki/Media_Transfer_Protocol |
| 71 | |
| 72 | |
| 73 | Contributing |
| 74 | ------------ |
| 75 | |
| 76 | See the project page at http://libmtp.sourceforge.net/ |
| 77 | We always need your help. |
Linus Walleij | 6fd2f08 | 2006-03-28 07:19:22 +0000 | [diff] [blame] | 78 | |
| 79 | |
Linus Walleij | 3c16fe4 | 2006-04-30 07:53:41 +0000 | [diff] [blame] | 80 | Calendar support: |
| 81 | ----------------- |
Linus Walleij | d3bdf76 | 2006-02-20 22:21:56 +0000 | [diff] [blame] | 82 | |
Linus Walleij | 3c16fe4 | 2006-04-30 07:53:41 +0000 | [diff] [blame] | 83 | The Creative Zen series can read VCALENDAR2 (.ics) files |
| 84 | from programs with the following limitations/conditions: |
Linus Walleij | d3bdf76 | 2006-02-20 22:21:56 +0000 | [diff] [blame] | 85 | |
Linus Walleij | 3c16fe4 | 2006-04-30 07:53:41 +0000 | [diff] [blame] | 86 | - The file must be in DOS (CR/LF) format, use the unix2dos |
| 87 | program to convert if needed |
| 88 | - Repeat events do not seem to be supported, entries will |
| 89 | only appear once. |
| 90 | - Files should be stored in the folder "My Organizer" when |
| 91 | sent to the device (Use the option -f "My Organizer" to |
| 92 | sendfile for this) |