GithubHelp home page GithubHelp logo

cbc's Introduction

CbC - Cflat Compiler
====================

    This is the CbC, Cflat programming language compiler.

Requirements
------------

    To compile cbc itself:

        * JDK 1.5 or later
        * JavaCC 4.0 or later
        * ant
        * make

    To run cbc and compiled program:

        * Linux 2.4 or later
        * util-linux (ld-linux.so.2)
        * GNU libc 2.3 or later
        * GNU binutils (as, ld)


Installation
------------

    To install all files under /usr/local/cbc:

        # sudo ./install.sh
        # sudo ln -s ../cbc/bin/cbc /usr/local/bin/cbc

    To install all files under $HOME/cbc:

        $ ./install.sh $HOME/cbc
        $ ln -s ../cbc/bin/cbc $HOME/bin/cbc


Build
-----

    Edit build.properties for your environment and invoke make:

        $ vi build.properties
        $ make


Test
----

    Invoke "make test":

        $ make test

    Note that you need bash (not bourne sh) to run test scripts.
    ksh or zsh may work.


Usage
-----

    $ cbc --help


License
-------

    Modified BSD license.
    For details of modified BSD license, see following:

    Copyright (c) 2007-2009  Minero Aoki.  All rights reserved.

    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:

        * Redistributions of source code must retain the above copyright
          notice, this list of conditions and the following disclaimer.
        * Redistributions in binary form must reproduce the above
          copyright notice, this list of conditions and the following
          disclaimer in the documentation and/or other materials provided
          with the distribution.
        * Neither the name of the Minero Aoki nor the names of its
          contributors may be used to endorse or promote products
          derived from this software without specific prior written
          permission.

    THIS SOFTWARE IS PROVIDED BY MINERO AOKI ``AS IS'' AND ANY EXPRESS
    OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
    WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED. IN NO EVENT SHALL <copyright holder> BE LIABLE FOR ANY
    DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
    GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
    IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
    OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
    EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Contact
-------

    CbC produced by Minero Aoki <[email protected]>.

cbc's People

Contributors

aamine avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cbc's Issues

readlink -f option not supported in macOS

macOS 10.12

readlink: illegal option -- f
usage: readlink [-n] [file ...]
Exception in thread "main" java.lang.NoClassDefFoundError: net/loveruby/cflat/compiler/Compiler
Caused by: java.lang.ClassNotFoundException: net.loveruby.cflat.compiler.Compiler
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

What does the error code equal to 1 mean?

I want to use IEDA debug cbc source code , but always fail . error statement is
Process proc = Runtime.getRuntime().exec(cmd); eixtcode = 1; why?
class : CommandUtils

Error Building

Hi, I can't build this compiler. I'm using javacc 6.0 and javac 1.8.5 on OS X. Here are the output:

compile:
    [mkdir] Created dir: /Users/vincent/coding/kuma/Compiler/cbc-source/build
    [mkdir] Created dir: /Users/vincent/coding/kuma/Compiler/cbc-source/build/classes
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/build.xml:16: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 193 source files to /Users/vincent/coding/kuma/Compiler/cbc-source/build/classes
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/net/loveruby/cflat/parser/Parser.java:682: error: reference to Parameter is ambiguous
    [javac]   final public Parameter param() throws ParseException {
    [javac]                ^
    [javac]   both class java.lang.reflect.Parameter in java.lang.reflect and class net.loveruby.cflat.entity.Parameter in net.loveruby.cflat.entity match
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/net/loveruby/cflat/parser/Parser.java:627: error: reference to Parameter is ambiguous
    [javac] {if ("" != null) return new Params(location(t), new ArrayList<Parameter>());}
    [javac]                                                               ^
    [javac]   both class java.lang.reflect.Parameter in java.lang.reflect and class net.loveruby.cflat.entity.Parameter in net.loveruby.cflat.entity match
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/net/loveruby/cflat/parser/Parser.java:657: error: reference to Parameter is ambiguous
    [javac]     try {List<Parameter> params = new ArrayList<Parameter>();
    [javac]               ^
    [javac]   both class java.lang.reflect.Parameter in java.lang.reflect and class net.loveruby.cflat.entity.Parameter in net.loveruby.cflat.entity match
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/net/loveruby/cflat/parser/Parser.java:657: error: reference to Parameter is ambiguous
    [javac]     try {List<Parameter> params = new ArrayList<Parameter>();
    [javac]                                                 ^
    [javac]   both class java.lang.reflect.Parameter in java.lang.reflect and class net.loveruby.cflat.entity.Parameter in net.loveruby.cflat.entity match
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/net/loveruby/cflat/parser/Parser.java:658: error: reference to Parameter is ambiguous
    [javac]     Parameter param, param1;
    [javac]     ^
    [javac]   both class java.lang.reflect.Parameter in java.lang.reflect and class net.loveruby.cflat.entity.Parameter in net.loveruby.cflat.entity match
    [javac] /Users/vincent/coding/kuma/Compiler/cbc-source/net/loveruby/cflat/parser/Parser.java:688: error: reference to Parameter is ambiguous
    [javac] {if ("" != null) return new Parameter(t, n);}
    [javac]                             ^
    [javac]   both class java.lang.reflect.Parameter in java.lang.reflect and class net.loveruby.cflat.entity.Parameter in net.loveruby.cflat.entity match
    [javac] 6 errors

ありがとうございます!
ー 熊セント

How to uninstall this compiler?

Hello! I have installed this compiler on macOS 10.14.1. But after this installation, I found I made a wrong installation. It doesn't work on 64-bit platform normally. Then I used Docker to do the book's work. It works well. So I want to know how to uninstall this software(on macOS or other platforms) safely. Then I checked the Readme file, it doesn't contain this content. So I setup this issue. Maybe other people also want to know this in some situations.

Thanks for reading and answer!

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.