bug-gnu-electric
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bugs and Borland


From: Hans-Jochen Trost
Subject: Bugs and Borland
Date: Wed, 4 Dec 2002 17:49:51 -0600

Dear Mr. Rubin et al.,

I have stumbled over your program electric when searching for information on
Gerber format files.  It has dawned on me that electric might be a good file
viewer for Gerber, GDS 2, and maybe other formats I may encounter in the
future.

Background: The company I work for (MicroFab Technologies, Inc.) is
developing and producing ink-jet dispensing equipment for a large variety of
applications, among them solder dispensing for bump bonding and display
manufacturing.  That is where those file formats come in, and why I view
files but don't design.

I have downloaded the electric 6.06 source tried to compile with Borland
C++Builder version 5 on a Windows 2000 machine, and encountered the
following problems:

1. Compilation of graphipccode.c, apply fixes as follows:

   a)  In use of "sizeof" with data type requires
       change "(sizeof HWND)" to "(sizeof(HWND))" in
          adjustwindowframe(...),
       change "(sizeof DLGITEMTEMPLATE)" to "(sizeof(DLGITEMTEMPLATE))"
          in DiaInitDialog(...),
       just as you are already using, e.g., "(sizeof(WORD))".

   b)  In DiaInitDialog(...), use of WORD instead of LPWSTR
          in calls to MultiByteToWideChar(...) is not permitted, so
       add pointer "wchar_t *woutput = (wchar_t*)output;"
          after declaration "WORD output[100];",
       change argument "output" to "woutput" in two calls to
          MultiByteToWideChar(...).

   c)  In DiaSetText(...), calls to CEdit::SetSel are ambiguous, so
       add optional arguments FALSE to two calls to CEdit::SetSel.

2. Compilation of ioedifi.c, apply fix as follows:

   Replace enum value "INPUT" with "INPUTE", because of collision
   with macro INPUT defined in winuser.h.  Leave string argument
   "INPUT" used in call to namesame(...) in io_eddirection(...) as is.

3. I have to convert the Visual C++ project files to BCB, using a tool
   coming with BCB to do that.

   a)  With two minor fixes (add src\include as an include directory
       to search, and a conditional define _NO_VCL, like _WINDOWS, and
       create an import library odbccp32.lib from
       C:\WINNT\System32\odbccp32.dll), I can successfully convert,
       compile and link the "Release" version.  It crashes upon start,
       however:

          The instruction at "0x005c0b3e" referenced memory at
          "0x0000000f".  The memory could not be "read".
          Click on OK to terminate the program
          Click on CANCEL to debug the program

       where the latter shows a location somewhere in ntdll.dll, called
       from kernel32.dll.

   b)  If I convert the "Debug" version, aidtable.c ends up calling to
       include dbsets.h (a Microsoft file, not Borland) in which a data
       type "CdbDBEngine" is apparently not defined.  I have not found
       (yet, haven't really tried) where that type would be defined, and
       how the include file gets involved anyway.  The "Release" build
       did not have that problem, but there run-time DLLs are used
       while in debug mode none is.

SIMPLE QUESTION HERE TO ALL THIS: Do you know of anybody who has compiled
electric successfully with Borland C++Builder before?

Best regards,

Hans-Jochen Trost

************************************
Hans-Jochen Trost, Ph.D.
MicroFab Technologies, Inc.
1104 Summit Ave., Suite 110
Plano, TX 75074, USA
Phone:  +1 (972) 578-8076
Fax:    +1 (972) 423-2438
E-mail: address@hidden
Company home page:
  http://www.microfab.com
************************************





reply via email to

[Prev in Thread] Current Thread [Next in Thread]