Giter Club home page Giter Club logo

abc's Introduction

Often the code comes directly from a Windows computer.
The following steps may be needed to compile it on UNIX:

Modify Makefile to have -DLIN (for 32-bits) or -DLIN64 (for 64-bits)

>> dos2unix Makefile Makefile
>> dos2unix depends.sh depends.sh
>> chmod 755 depends.sh
>> make  // on Solaris, try "gmake"

If compiling as a static library, it is necessary to uncomment
#define _LIB in "src/abc/main/main.c"

To compile with Microsoft Visual Studio higher than 6.0,
remove ABC_CHECK_LEAKS from the preprocessor definitions
for the debug version (Project->Settings->C/C++->Preprocessor Definitions)

If compilation does not start because of the cyclic dependency check, 
try "touching" all files:    find ./ -type f -exec touch "{}" \;

Several things to try if it does not compile on your platform:
- Try running all code (not only Makefile and depends.sh) through dos2unix
- Try the following actions:
  (a) Remove flags from the libs line (LIBS :=) in Makefile
  (b) Remove "src\base\main\libSupport.c" from "src\base\main\module.make"
  (c) Comment calls to Libs_Init() and Libs_End() in "src\base\main\mainInit.c"
- Try linking with gcc (rather than g++)
  For this replace "LD   := g++" with "LD   := gcc -lm" in Makefile
- If your Linux distributin does not have "readline", you may have problems 
  compiling ABC with gcc. Please try installing this library from
  http://tiswww.case.edu/php/chet/readline/rltop.html

To compile the latest version of ABC, you may need to define "LIN" or "LIN64" 
(depending on whether you are using 32- or 64-bit Linux). 
For example, in Makefile instead of
    OPTFLAGS  := -g -O -DLIN -m32
use
    OPTFLAGS  := -g -O -DLIN64 <...>
and instead of 
    LIBS := -m32 -ldl -rdynamic -lreadline -ltermcap
use
    LIBS := -ldl /usr/lib64/libreadline.a /usr/lib64/libncurses.a -rdynamic


The following comment was added by Krish Sundaresan:

"I found that the code does compile correctly on Solaris 
if gcc is used (instead of g++ that I was using for some reason). 
Also readline which is not available by default on most 
Sol10 systems, needs to be installed. I downloaded the 
readline-5.2 package from sunfreeware.com and installed it 
locally. Also modified CFLAGS to add the local include files 
for readline and LIBS to add the local libreadline.a. Perhaps 
you can add these steps in the readme to help folks compiling 
this on Solaris."

Archiving the binary: tar czf archive.tar.gz directory

abc's People

Contributors

mrkj avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.