Changeset d28f4bd2 for core/c


Ignore:
Timestamp:
Jun 5, 2011 1:52:43 PM (9 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
d834c80
Parents:
48f4c72
Message:
  • JBigI:
    • Replace old non-PIC 62-bit linux libs (GMP 4.1.4 built in 2005) with PIC libs built with GMP 5.0.2. License is LGPLv3. Built by sponge with GCC 4.4.4, downloaded from http://sponge.i2p/files/jbigi/gmp-5.0.2/ For 64-bit processors, both performance testing and the GMP changelog led us to use 5.0.2 for both the 32- and 64-bit versions, even though the files are twice as big. See http://zzz.i2p/topics/306 for discussion and test results. libjbigi-linux-athlon64.so was a 64 bit file; by the new naming standard supported by NativeBigInteger?, it is now a 32-bit file and the 64-bit one is libjbigi-linux-athlon64_64.so. All new 64-bit libs will have _64 appended.
    • Update build docs
Location:
core/c
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • core/c/README

    r48f4c72 rd28f4bd2  
     1
     2Dynamic library build
     3=====================
     4
    15If you have a libgmp.so installed on your system already
    26(check in /usr/lib), you can build a dynamically linked libjbigi.so as follows:
    37        cd jbigi
    48        build.sh dynamic
    5 The built library is jbigi/lib/libjbigi.so .
     9You do, of course, need the gmp headers installed.
     10On ubuntu, check for libgmp3 and libgmp3-dev packages.
     11This is much easier and faster than building GMP from source.
    612       
    7 Otherwise, prior to building the jbigi library, you will need to fetch the GMP source
    8 from http://www.swox.com/gmp/, saving it to jbigi/gmp-4.2.2.tar.bz2 (it will
    9 be unpacked and built as necessary).
    1013
    11 Version 4.2.2 has not been extensively tested with I2P. If you would like
    12 to use a well-tested version, get gmp-4.1.4.tar.bz2, and edit jbigi/build.sh
    13 to change the version number.
     14Static library build
     15=====================
     16
     17Otherwise, the build script build.sh will download the the GMP source,
     18unpack and build it. The GMP version and download location are configured
     19in jbigi/build.sh, please review it to ensure you download
     20and build the desired version.
    1421
    1522To build the native jbigi and jcpuid libraries for the current host CPU,
    1623simply run sh build.sh and the results will be packaged up into jbigi.jar
    17 and the libjbigi.so library. To test, copy jbigi/lib/libjbigi.so
    18 and jcpuid/lib/freenet/support/CPUInformation/libjcpuid-*.so
    19 to your i2p/ directory. You can also copy jbigi.jar to the i2p/lib/ directory;
    20 it will be used only if the router fails to load the native library.
     24and the libjbigi.so library.
    2125
    2226To build the native jbigi libraries for all supported CPUs (on the current OS),
    2327go into jbigi/ and run build-all.sh (the results will be under jbigi/lib/)
     28
     29
     30Installation and testing
     31========================
     32
     33To test, copy jbigi/lib/libjbigi.so
     34and jcpuid/lib/freenet/support/CPUInformation/libjcpuid-*.so
     35to your i2p installation directory ($I2P). You may also copy jbigi.jar to the $I2P/lib/ directory;
     36it will be used only if the router fails to load the native library
     37from the I2P installation directory.
    2438
    2539The build.sh script runs two speed tests, one with your existing
  • core/c/jbigi/README

    r48f4c72 rd28f4bd2  
    77TODO: What is jbigi
    88TODO: Document generated folder structure
    9 TODO: Instructions for adding the libraries to a jar
     9
    1010
    1111Linux-specific information:
     
    1919
    2020If the new jbigi is slower, then run 'build.sh' (without the 'dynamic'), which will download
    21 the 4.3.1 libgmp library, build, and test that.
     21the libgmp library, build, and test that.
    2222
    2323
Note: See TracChangeset for help on using the changeset viewer.