Coder Social home page Coder Social logo

kenny1818 / harbourpp-v1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from marcosgambeta/harbourpp-v1

0.0 0.0 0.0 50.87 MB

Harbour++ v1

License: Other

Shell 0.03% JavaScript 0.01% Ruby 0.01% C++ 35.27% C 41.89% XSLT 0.01% CSS 0.01% xBase 21.55% Harbour 0.37% Makefile 0.45% HTML 0.03% NSIS 0.04% Batchfile 0.04% Yacc 0.30% Roff 0.01% VBScript 0.01% VBA 0.01%

harbourpp-v1's Introduction

Harbour++

English

Harbour++ is derived from the Harbour project, having as main goal the transition from the C language to the C++ language, using C++11 as the minimum standard.

The source codebase was the Harbour 3.2.0dev. Harbour 3.4 features are being reviewed and, if appropriate, implemented in Harbour++.

To help the migration of the applications, the series 1 of Harbour++ (versions 1.#.#) will keep the most compatibility possible with CA-Clipper/Harbour commands, classes and functions.

This project is a work in progress.

Requisites

  • C++ compiler
  • C++11 or upper (C++14, C++17, C++20, C++23, ...)

Related projects

https://github.com/marcosgambeta/hwguipp
HWGUI for Harbour++

https://github.com/marcosgambeta/hmgextpp
Harbour MiniGUI Extended for Harbour++

https://github.com/marcosgambeta/sqlrddpp
SQLRDD for Harbour++

Portuguese

Harbour++ é um projeto derivado do projeto Harbour, tendo como objetivo principal a transição da linguagem C para a linguagem C++, usando o C++11 como padrão mínimo.

Foi utilizado como base o código-fonte do Harbour 3.2.0dev. Recursos do Harbour 3.4 estão sendo revisados e, conforme o caso, implementados no Harbour++.

Para facilitar a adaptação das aplicações, a série 1 do Harbour++ (versões 1.#.#) manterá o máximo possível de compatibilidade com os comandos, classes e funções do CA-Clipper/Harbour.

Este projeto é um trabalho em progresso.

Requisitos

  • Compilador C++
  • Padrão C++11 ou superior (C++14, C++17, C++20, C++23, ...)

Compilação

O projeto está sendo desenvolvido e testado com os compiladores GCC (MinGW), Microsoft Visual C++ (MSVC), LLVM/Clang C++ e 'Embarcadero C++ 7.x for Win64' (BCC64).

MinGW

  • Definir o padrão, conforme exemplo abaixo:
    set HB_USER_CFLAGS=-std=c++11
Exemplos
set PATH=C:\MinGW32\bin;%PATH%
set HB_INSTALL_PREFIX=C:\HBPPMINGW32
set HB_USER_CFLAGS=-std=c++11
win-make install 1>log1.log 2>log2.log
set PATH=C:\MinGW64\bin;%PATH%
set HB_INSTALL_PREFIX=C:\HBPPMINGW64
set HB_USER_CFLAGS=-std=c++11
win-make install 1>log1.log 2>log2.log

Visual C++

  • Se necessário, definir o padrão conforme exemplo abaixo:
    set HB_USER_CFLAGS=/std=c++11
Exemplos
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat"
set HB_INSTALL_PREFIX=C:\HBPPMSVC32
set HB_USER_CFLAGS=/std=c++11
win-make install 1>log1.log 2>log2.log
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
set HB_INSTALL_PREFIX=C:\HBPPMSVC64
set HB_USER_CFLAGS=/std=c++11
win-make install 1>log1.log 2>log2.log

LLVM/Clang C++

  • Se necessário, definir o padrão conforme exemplo abaixo:
    set HB_USER_CFLAGS=-std=c++11
Exemplos
set PATH=C:\MinGW32\bin;%PATH%
set HB_INSTALL_PREFIX=C:\HBPPCLANG32
set HB_COMPILER=clang
win-make install 1>log1.log 2>log2.log
set PATH=C:\MinGW64\bin;%PATH%
set HB_INSTALL_PREFIX=C:\HBPPCLANG64
set HB_COMPILER=clang64
win-make install 1>log1.log 2>log2.log

Embarcadero C++ 7.x for Win64

  • A utilização do Harbour++ em conjunto com este compilador é um trabalho em progresso.
  • Siga os exemplos abaixo como base para seus testes.
  • Se desejar, poderá usar a seção 'Issues' para relatar problemas encontrados.
  • A compilação das bibliotecas da pasta 'contrib' ainda não foi testada.
Exemplos
set PATH=C:\BCC64\bin;%PATH%
set HB_INSTALL_PREFIX=C:\HBPPBCC64
set HB_BUILD_CONTRIB_DYN=no
set HB_BUILD_CONTRIBS=no
set HB_COMPILER=bcc64
set HB_USER_LDFLAGS=-LC:\BCC64\lib;C:\BCC64\lib\psdk
set HB_USER_DFLAGS=-LC:\BCC64\lib;C:\BCC64\lib\psdk
set HB_USER_RESFLAGS=-IC:\BCC64\include\windows\sdk
win-make install 1>log1.log 2>log2.log
hbmk2 program -ldflag=-LC:\BCC64\lib -ldflag=-LC:\BCC64\lib\psdk

Projetos relacionados

https://github.com/marcosgambeta/hwguipp
HWGUI++ - fork da HWGUI para Harbour++

https://github.com/marcosgambeta/hmgextpp
HMGEXT++ - fork da Harbour MiniGUI Extended para Harbour++

https://github.com/marcosgambeta/sqlrddpp
SQLRDD for Harbour++

Contato

Envie sua mensagem para:

[email protected]

Mais informações e conteúdo extra

Siga o blog abaixo para se manter informado:

https://magsoftinfo.com/blog/

harbourpp-v1's People

Contributors

marcosgambeta 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.