Creating a LIB or DLL

Re: Creating a LIB or DLL

Postby Dave Zowasky » Sat Mar 21, 2009 12:39 pm

Antonio,

I have this in my def

LIBRARY BABUDLL.DLL

EXPORTS
DllEntryPoint @1 ; DllEntryPoint
HBDLLENTRY @2 ; HBDLLENTRY
HBDLLENTRY1 @3 ; HBDLLENTRY1
HBDLLENTRY2 @4 ; HBDLLENTRY2
__DbgWndProc @6 ; __DbgWndProc
__WndProc @5 ; __WndProc
___CPPdebugHook @7 ; ___CPPdebugHook


Still get the error when I compile and run babu



Thanks





Current buildhd.bat

Code: Select all  Expand view
@ECHO OFF
CLS
ECHO ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ECHO ³ FiveWin for Harbour 9.02 - Feb. 2009             Harbour development power ³Ü
ECHO ³ (c) FiveTech, 1993-2009      for Microsoft Windows 95/98/NT/2000/ME and XP ³Û
ECHO ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙÛ
ECHO ÿ ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

@echo off
if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST

ECHO Compiling...

set hdir=c:\harbour
set bcdir=c:\bcc55



%bcdir%\bin\bcc32 -c -D__HB_DYNLIB -I%hdir%\include;%bcdir%\include -L%bcdir%\..\lib maindll.c


%hdir%\bin\harbour %1 /n /i..\include;%hdir%\include /w /p %2 %3 > clip.log
@type clip.log
IF ERRORLEVEL 1 PAUSE
IF ERRORLEVEL 1 GOTO EXIT

echo -O2 -I%hdir%\include;%bcdir%\include %1.c > b32.bc
%bcdir%\bin\bcc32 -M -c @b32.bc
:ENDCOMPILE

IF EXIST %1.rc %bcdir%\bin\brc32 -r %1

echo c0d32.obj + %hdir%\obj\b32\maindll.obj + > b32.bc
echo %1.obj, + >> b32.bc
echo %1.dll, + >> b32.bc
echo %1.map, + >> b32.bc
echo ..\lib\FiveH.lib ..\lib\FiveHC.lib + >> b32.bc
ECHO %hdir%\lib\hbrtl.lib + >> b32.bc
ECHO %hdir%\lib\hbvm.lib + >> b32.bc
ECHO %hdir%\lib\gtgui.lib + >> b32.bc
ECHO %hdir%\lib\hblang.lib + >> b32.bc
ECHO %hdir%\lib\hbmacro.lib + >> b32.bc
ECHO %hdir%\lib\hbrdd.lib + >> b32.bc
ECHO %hdir%\lib\rddntx.lib + >> b32.bc
ECHO %hdir%\lib\rddcdx.lib + >> b32.bc
ECHO %hdir%\lib\hbdebug.lib + >> b32.bc
ECHO %hdir%\lib\hbcommon.lib + >> b32.bc
ECHO %hdir%\lib\hbpp.lib + >> b32.bc
ECHO %hdir%\lib\hbmzip.lib + >> b32.bc
ECHO %hdir%\lib\hbsix.lib + >> b32.bc
ECHO %hdir%\lib\rddfpt.lib + >> b32.bc
echo %hdir%\lib\hbwin.lib + >> b32.bc
ECHO %bcdir%\lib\cw32.lib + >> b32.bc
ECHO %bcdir%\lib\import32.lib + >> b32.bc
ECHO %bcdir%\lib\psdk\odbc32.lib + >> b32.bc
ECHO %bcdir%\lib\uuid.lib + >> b32.bc
echo %bcdir%\lib\psdk\msimg32.lib + >> b32.bc
echo %bcdir%\lib\psdk\rasapi32.lib, >> b32.bc
IF EXIST %1.res echo %1.res >> b32.bc
%bcdir%\bin\ilink32 -Tpd -aa -L%bcdir%\lib;%hdir%\lib @b32.bc

IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * self contained DLL successfully built
GOTO EXIT
ECHO

rem delete temporary files
@del %1.c
@del %1.il?

:LINKERROR
ECHO * There are errors
GOTO EXIT

:SINTAX
ECHO    SYNTAX: Build [Program]     {-- No especifiques la extensi›n PRG
ECHO                                {-- Don't specify .PRG extension
GOTO EXIT

:NOEXIST
ECHO The specified PRG %1 does not exist

:EXIT



My current maindll.c
Code: Select all  Expand view
/*
 * $Id: maindll.c 6764 2006-07-18 01:30:23Z druzus $
 */


/*
 * Harbour Project source code:
 * Windows self-contained DLL entry point
 *
 * Copyright 1999 Antonio Linares <alinares@fivetech.com>
 * www - http://www.harbour-project.org
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version, with one exception:
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this software; see the file COPYING.  If not, write to
 * the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
 * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/).
 *
 * As a special exception, the Harbour Project gives permission for
 * additional uses of the text contained in its release of Harbour.
 *
 * The exception is that, if you link the Harbour libraries with other
 * files to produce an executable, this does not by itself cause the
 * resulting executable to be covered by the GNU General Public License.
 * Your use of that executable is in no way restricted on account of
 * linking the Harbour library code into it.
 *
 * This exception does not however invalidate any other reasons why
 * the executable file might be covered by the GNU General Public License.
 *
 * This exception applies only to the code released by the Harbour
 * Project under the name Harbour.  If you copy code from other
 * Harbour Project or Free Software Foundation releases into a copy of
 * Harbour, as the General Public License permits, the exception does
 * not apply to the code that you add in this way.  To avoid misleading
 * anyone as to the status of such modified files, you must delete
 * this exception notice from them.
 *
 * If you write modifications of your own for Harbour, it is your choice
 * whether to permit this exception to apply to your modifications.
 * If you do not wish that, delete this exception notice.
 *
 */


#define HB_OS_WIN_32_USED

#include "hbvm.h"
#include "hbapiitm.h"

#if defined(HB_OS_WIN_32)

BOOL WINAPI _export DllEntryPoint( HINSTANCE hInstance, DWORD fdwReason, PVOID pvReserved )
{
   HB_TRACE( HB_TR_DEBUG, ("DllEntryPoint(%p, %p, %p)", hInstance, fdwReason,
             pvReserved ) );

   HB_SYMBOL_UNUSED( hInstance );
   HB_SYMBOL_UNUSED( fdwReason );
   HB_SYMBOL_UNUSED( pvReserved );

   switch( fdwReason )
   {
      case DLL_PROCESS_ATTACH:
           hb_vmInit( FALSE );  /* Don't execute first linked symbol */
           break;

      case DLL_PROCESS_DETACH:
           hb_vmQuit();
           break;
   }

   return TRUE;
}

LONG PASCAL _export HBDLLENTRY( char * cProcName )
{
   hb_itemDoC( cProcName, 0, 0 );

   return 0;
}

LONG PASCAL _export HBDLLENTRY1( char * cProcName, LONG pItem )
{
   hb_itemDoC( cProcName, 1, ( PHB_ITEM ) pItem, 0 );

   return 0;
}

LONG PASCAL _export HBDLLENTRY2( char * cProcName, LONG pItem1, LONG pItem2 )
{
   hb_itemDoC( cProcName, 2, ( PHB_ITEM ) pItem1, ( PHB_ITEM ) pItem2, 0 );

   return 0;
}

#endif
 
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Antonio Linares » Sat Mar 21, 2009 9:13 pm

Dave,

> I have this in my def

Ok, now it is fine :-)

Please place some traces in maindll.c and lets see how far it goes. Please use this modified maindll.c and let me know what you get:
Code: Select all  Expand view

/*
 * $Id: maindll.c 6764 2006-07-18 01:30:23Z druzus $
 */


/*
 * Harbour Project source code:
 * Windows self-contained DLL entry point
 *
 * Copyright 1999 Antonio Linares <alinares@fivetech.com>
 * www - http://www.harbour-project.org
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version, with one exception:
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2, or (at your option)
 * any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this software; see the file COPYING.  If not, write to
 * the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
 * Boston, MA 02111-1307 USA (or visit the web site http://www.gnu.org/).
 *
 * As a special exception, the Harbour Project gives permission for
 * additional uses of the text contained in its release of Harbour.
 *
 * The exception is that, if you link the Harbour libraries with other
 * files to produce an executable, this does not by itself cause the
 * resulting executable to be covered by the GNU General Public License.
 * Your use of that executable is in no way restricted on account of
 * linking the Harbour library code into it.
 *
 * This exception does not however invalidate any other reasons why
 * the executable file might be covered by the GNU General Public License.
 *
 * This exception applies only to the code released by the Harbour
 * Project under the name Harbour.  If you copy code from other
 * Harbour Project or Free Software Foundation releases into a copy of
 * Harbour, as the General Public License permits, the exception does
 * not apply to the code that you add in this way.  To avoid misleading
 * anyone as to the status of such modified files, you must delete
 * this exception notice from them.
 *
 * If you write modifications of your own for Harbour, it is your choice
 * whether to permit this exception to apply to your modifications.
 * If you do not wish that, delete this exception notice.
 *
 */


#define HB_OS_WIN_32_USED

#include "hbvm.h"
#include "hbapiitm.h"

#if defined(HB_OS_WIN_32)

BOOL WINAPI _export DllEntryPoint( HINSTANCE hInstance, DWORD fdwReason, PVOID pvReserved )
{
   HB_TRACE( HB_TR_DEBUG, ("DllEntryPoint(%p, %p, %p)", hInstance, fdwReason,
             pvReserved ) );

   HB_SYMBOL_UNUSED( hInstance );
   HB_SYMBOL_UNUSED( fdwReason );
   HB_SYMBOL_UNUSED( pvReserved );

   MessageBox( 0, "Inside DllEntryPoint", "1", 0 );

   switch( fdwReason )
   {
      case DLL_PROCESS_ATTACH:
           hb_vmInit( FALSE );  /* Don't execute first linked symbol */
           MessageBox( 0, "Inside DllEntryPoint", "2", 0 );
           break;

      case DLL_PROCESS_DETACH:
           hb_vmQuit();
           break;
   }

   MessageBox( 0, "Inside DllEntryPoint", "3", 0 );
 
   return TRUE;
}

LONG PASCAL _export HBDLLENTRY( char * cProcName )
{
   MessageBox( 0, "Inside HBDLLENTRY", "1", 0 );

   hb_itemDoC( cProcName, 0, 0 );

   return 0;
}

LONG PASCAL _export HBDLLENTRY1( char * cProcName, LONG pItem )
{
   MessageBox( 0, "Inside HBDLLENTRY1", "1", 0 );

   hb_itemDoC( cProcName, 1, ( PHB_ITEM ) pItem, 0 );

   return 0;
}

LONG PASCAL _export HBDLLENTRY2( char * cProcName, LONG pItem1, LONG pItem2 )
{
   MessageBox( 0, "Inside HBDLLENTRY2", "1", 0 );

   hb_itemDoC( cProcName, 2, ( PHB_ITEM ) pItem1, ( PHB_ITEM ) pItem2, 0 );

   return 0;
}

#endif
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Creating a LIB or DLL

Postby Dave Zowasky » Sun Mar 22, 2009 7:54 pm

Antonio,


Got to Inside DllEntryPoint 1

then the ususal exception.

Thanks
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Antonio Linares » Sun Mar 22, 2009 8:18 pm

Dave,

One more trace:
Code: Select all  Expand view

      case DLL_PROCESS_ATTACH:
           MessageBox( 0, "Inside DllEntryPoint", "before vmInit()", 0 );
           hb_vmInit( FALSE );  /* Don't execute first linked symbol */
           MessageBox( 0, "Inside DllEntryPoint", "after vmInit()", 0 );
           break;
 

Lets see if the problem comes from hb_vmInit().
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Creating a LIB or DLL

Postby Dave Zowasky » Sun Mar 22, 2009 9:36 pm

Antonio,

Made it to before VMinit

then exception

Thanks
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Antonio Linares » Sun Mar 22, 2009 10:11 pm

Dave,

Do you have experience building Harbour yourself ?

We should place several traces in harbour\source\vm\hvm.c function hb_vmInit() to check where it is failing.

Its easy. I can explain you how to do it.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Creating a LIB or DLL

Postby Dave Zowasky » Sun Mar 22, 2009 10:48 pm

Antonio,

I tried once, but failed, I will be glad to try again.

If you have anything you want me to know, and or want to point me to
I would appreciate it.

I will plan that as my first project in the AM.

Thanks
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Antonio Linares » Sun Mar 22, 2009 11:01 pm

Dave,

First of all you have to do a checkout from the Harbour repository.

You can use TortoiseSVN or svn.exe. We use svn.exe. If you can't find it, we can provide it to you. Its free.

Then you have to use this BAT file to do the checkout:

checkout.bat
Code: Select all  Expand view

c:\"Program Files"\svn\bin\svn co https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/trunk/harbour harbour
 


Please try it and let me know if you properly do the checkout and get the Harbour files. Thanks

Next step is to build Harbour. I will provide you detailed instructions about how to do it.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Creating a LIB or DLL

Postby Dave Zowasky » Mon Mar 23, 2009 1:06 pm

Antonio,

This should do it.

http://code.google.com/p/npc/downloads/ ... abel%3Asvn

Created c:\hs folder and created checkout.bat
Code: Select all  Expand view
c:\"Program Files"\subversion\bin\svn co https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/trunk/harbour harbour
 


Checkout went good.

Thanks
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Antonio Linares » Mon Mar 23, 2009 6:47 pm

Dave,

Now please create a makeb32.bat where make_b32.bat is located:

makeb32.bat
Code: Select all  Expand view

SET LIB=c:\bcc55\lib
SET INCLUDE=c:\bcc55\include
SET PATH=c:\bcc55\bin;%PATH%

SET HB_CC_NAME=b32
SET HB_ARCHITECTURE=w32
SET HB_GT_LIB=gtgui
SET HB_GT_DEFAULT=gui
SET HB_BUILD_MODE=c
SET C_USR= -DHARBOUR_MAIN_WIN -DHB_DYNLIB -DHB_FM_STATISTICS_OFF -d -a8 -OS -O2 -5 -6
SET HB_BUILD_DLL=no
SET HB_MAKE_PROGRAM=c:\bcc55\bin\make.exe

make_b32
 

This batch file should properly create harbour.exe and the libraries.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Creating a LIB or DLL

Postby Dave Zowasky » Mon Mar 23, 2009 8:01 pm

Antonio,

I get :

'make_b32' is not recognized as an internal or external command,
operable program or batch file.

I will look for the make_b32.bat

Thanks
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Enrico Maria Giordano » Mon Mar 23, 2009 9:19 pm

Antonio Linares wrote:Dave,

Now please create a makeb32.bat where make_b32.bat is located:

makeb32.bat
Code: Select all  Expand view

SET LIB=c:\bcc55\lib
SET INCLUDE=c:\bcc55\include
SET PATH=c:\bcc55\bin;%PATH%

SET HB_CC_NAME=b32
SET HB_ARCHITECTURE=w32
SET HB_GT_LIB=gtgui
SET HB_GT_DEFAULT=gui
SET HB_BUILD_MODE=c
SET C_USR= -DHARBOUR_MAIN_WIN -DHB_DYNLIB -DHB_FM_STATISTICS_OFF -d -a8 -OS -O2 -5 -6
SET HB_BUILD_DLL=no
SET HB_MAKE_PROGRAM=c:\bcc55\bin\make.exe

make_b32
 

This batch file should properly create harbour.exe and the libraries.


The structure of the Harbour build system has been completely changed recently. This is what I'm using to build Harbour now:

Code: Select all  Expand view
@ ECHO OFF
SET PATH=e:\bcc55\bin;%PATH%
SET HB_COMPILER=bcc
SET HB_USER_CFLAGS=-DHB_FM_STATISTICS_OFF
make_gnu clean install > make_gnu.log 2>&1


Please note that you will need of mingw32-make.exe version 3.81 that you can download from here:

http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=23918&release_id=587379

EMG
User avatar
Enrico Maria Giordano
 
Posts: 8715
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

Re: Creating a LIB or DLL

Postby Antonio Linares » Mon Mar 23, 2009 11:00 pm

Enrico,

Thanks for the info.

I was not aware of such recent change.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Creating a LIB or DLL

Postby Dave Zowasky » Tue Mar 24, 2009 4:27 pm

Enrico,

Thanks for the info.

I have things in place and it seems to be running well, however I am getting errors.


Like

Code: Select all  Expand view
mingw32-make.exe[2]: [install] Error 1 (ignored)
mingw32-make.exe[2]: Leaving directory `C:/hs/harbour/doc/en'
mingw32-make.exe[1]: Leaving directory `C:/hs/harbour/doc'

mingw32-make.exe -C include install
mingw32-make.exe[1]: Entering directory `C:/hs/harbour/include'
cmd.exe /c for %f in (clipdefs.h extend.h hbapi.h hbapicdp.h hbapicls.h hbapidbg.h hbapierr.h hbapifs.h hbapigt.h hbapiitm.h hbapilng.h hbapirdd.h hbassert.h hbatomic.h hbchksum.h hbcomp.h hbcompdf.h hbdate.h hbdbf.h hbdbferr.h hbdbsort.h hbdefs.h hberrors.h hbexprop.h hbgtcore.h hbhash.h hbinit.h hbmacro.h hbmath.h hbpcode.h hbpp.h hbrddcdx.h hbrdddbf.h hbrddfpt.h hbrdddel.h hbrddntx.h hbrddsdf.h hbrddnsx.h hbregex.h hbset.h hbsetup.h hbstack.h hbsxfunc.h hbthread.h hbtrace.h hbtypes.h hbver.h hbvm.h hbvmint.h hbvmopt.h hbvmpub.h hbxvm.h hbwince.h hbzlib.h hb_io.h  achoice.ch assert.ch box.ch button.ch blob.ch color.ch common.ch dbedit.ch dbinfo.ch dbstruct.ch directry.ch error.ch fileio.ch getexit.ch hbclass.ch hbdebug.ch hbextern.ch hbgetcmt.ch hbgfx.ch hbgfxdef.ch hbgtinfo.ch hbinkey.ch hblang.ch hbmacro.ch hbmath.ch hbmemory.ch hbmemvar.ch hboo.ch hbpers.ch hbsetup.ch hbsix.ch hbstdgen.ch hbthread.ch hbusrrdd.ch hbver.ch hbzlib.ch inkey.ch memoedit.ch ord.ch rddsys.ch reserved.ch set.ch setcurs.ch simpleio.ch std.ch hbsxdef.ch tbrowse.ch  error.api extend.api filesys.api fm.api gt.api hbundoc.api item.api rdd.api vm.api ) do copy %f C:\hs\harbour\\include

C:\hs\harbour\include>copy clipdefs.h C:\hs\harbour\include
The file cannot be copied onto itself.
        0 file(s) copied.

C:\hs\harbour\include>copy extend.h C:\hs\harbour\include
The file cannot be copied onto itself.
        0 file(s) copied.

C:\hs\harbour\include>copy hbapi.h C:\hs\harbour\include
The file cannot be copied onto itself.
        0 file(s) copied.



and like


Code: Select all  Expand view
mingw32-make.exe[3]: Entering directory `C:/hs/harbour/source/common/win/bcc'
bcc32.exe -I. -I../../../../include -q -d -Q -w -w-sig- -tWM -4 -O2 -OS -Ov -Oi -Oc  -DHB_FM_STATISTICS_OFF  -c ../../expropt1.c -oexpropt1.obj
../../expropt1.c:
Error E2209 ../../expropt1.c 58: Unable to open include file '
math.h'
Error E2209 ../../../../include\hbmacro.h 56: Unable to open include file '
stdio.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
Error E2209 ../../../../include\hbmacro.h 57: Unable to open include file '
stdlib.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
Error E2209 ../../../../include\hbmacro.h 58: Unable to open include file '
string.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
Error E2209 ../../../../include\hbmacro.h 59: Unable to open include file '
limits.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
Error E2209 ../../../../include\hbmacro.h 60: Unable to open include file '
time.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
Error E2209 ../../../../include\hbdefs.h 56: Unable to open include file '
stdarg.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
Error E2209 ../../../../include\hbdefs.h 57: Unable to open include file '
stdio.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
Error E2209 ../../../../include\hbdefs.h 58: Unable to open include file '
stdlib.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
Error E2209 ../../../../include\hbdefs.h 59: Unable to open include file '
string.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
Error E2209 ../../../../include\hbdefs.h 60: Unable to open include file '
limits.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
Error E2209 ../../../../include\hbsetup.h 56: Unable to open include file '
limits.h'
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
  + ../../../../include\hbdefs.h, line 62: #include ../../../../include\hbsetup.h
Error E2141 ../../../../include\hbwince.h 184: Declaration syntax error
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h
  + ../../../../include\hbcompdf.h, line 57: #include ../../../../include\hbapi.h
  + ../../../../include\hbapi.h, line 61: #include ../../../../include\hbvmpub.h
  + ../../../../include\hbvmpub.h, line 56: #include ../../../../include\hbdefs.h
  + ../../../../include\hbdefs.h, line 189: #include ../../../../include\hbwince.h
Error E2293 ../../../../include\hbwince.h 185: ) expected
  + Full parser context
  + ../../expropt1.c, line 59: #include ../../../../include\hbmacro.h
  + ../../../../include\hbmacro.h, line 62: #include ../../../../include\hbcompdf.h



Any thoughts?

Thanks
Dave Zowasky
Com1 Software, Inc.
http://www.com1software.com
information@com1software.com
330 653-3771
User avatar
Dave Zowasky
 
Posts: 125
Joined: Wed Oct 19, 2005 2:28 pm
Location: Hudson Ohio

Re: Creating a LIB or DLL

Postby Enrico Maria Giordano » Tue Mar 24, 2009 7:23 pm

You can safely ignore the warning from the first quoting. For the second, check the bcc55 readme:

2. From the bin directory of your installation:
a. Add "c:\Borland\Bcc55"
to the existing path
b. Create a bcc32.cfg file which will set
the compiler options for the Include
and Lib paths (-I and -L switches to
compiler) by adding these lines:
-I"c:\Borland\Bcc55\include"
-L"c:\Borland\Bcc55\lib"
c. Create an ilink32.cfg file which will set
the linker option for the Lib path by
adding this line:
-L"c:\Borland\Bcc55\lib"


EMG
User avatar
Enrico Maria Giordano
 
Posts: 8715
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia

PreviousNext

Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot], SantaCroya and 76 guests