Subject: Re: make and .exe targets
From: "Suhaib M. Siddiqi" <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>
Date: Thu, 4 Feb 1999 12:13:27 -0500

D:\home\v2te2v2\test>make winhello.exe

From where is D:\home..... is comming?  Are you trying to run make under
a DOS shell?  If so, it will not work.
You need to do this inside a bash shell.

gcc -mwindows winhello.c -o winhello.exe

Try this in bash shell:

gcc -O -mwindows -o winhello.exe winhello.c

/cygnus/CYGWIN~1/H-I586~1/i586-cygwin32/bin/ld: cannot open output file
----
*************************************************
Suhaib M. Siddiqi, Ph.D.
Senior Research Chemist
Inspire Pharmaceuticals, Inc.
4222 Emperor Blvd., Suite 470
Durham, NC 27703-8466

Tel: 919-941-9777 Ext. 238
Fax: 919-941-9797
E-Mail: [email-masked]
http://www.inspirepharm.com

============================

----- Original Message -----
From: <[email-masked]>
To: <[email-masked]>
Cc: <[email-masked]>
Sent: Thursday, February 04, 1999 11:36 AM
Subject: make and .exe targets

>
>I'm a bit confused about building .exe targets. I am trying to create a
>default
>makefile for building win32 apps.  Created the following Makefile.
Make
>comes
>up with the proper command, but then I get an error opening
winhello.exe.
>See
>output...  When I type the command outside of make it works fine.  The
>program is attached.
>
>I am using B20.1 with NT4/SP3.
>
>Makefile.......
>
>/**********************************
>.SUFFIXES:
>.SUFFIXES: .exe .c
>.c.exe:
>     gcc -mwindows $< -o $@
>/**********************************
>
>OUTPUT........
>
>D:\home\v2te2v2\test>make winhello.exe
>gcc -mwindows winhello.c -o winhello.exe
>/cygnus/CYGWIN~1/H-I586~1/i586-cygwin32/bin/ld: cannot open output file
>winhello.exe
>: No such file or directory
>collect2: ld returned 1 exit status
>make: *** [winhello.exe] Error 1
>
>*******************************************
>
>Program......
>
>#include <windows.h>
>
>LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
>
>#ifdef __CYGWIN__
>WinMainCRTStartup() {
>   mainCRTStartup();
>};
>#endif
>
>
>
>int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
>                  PSTR szCmdLine, int iCmdShow)
>{
>    static char szAppName[]="HelloWin";
>    HWND        hwnd;
>    MSG         msg;
>    WNDCLASSEX  wndclass;
>
>    wndclass.cbSize      = sizeof(wndclass);
>    wndclass.style       = CS_HREDRAW | CS_VREDRAW;
>    wndclass.lpfnWndProc = WndProc;
>    wndclass.cbClsExtra  = 0;
>    wndclass.cbWndExtra  = 0;
>    wndclass.hInstance   = hInstance;
>    wndclass.hIcon       = LoadIcon(NULL, IDI_APPLICATION);
>    wndclass.hCursor     = LoadCursor(NULL, IDC_ARROW);
>    wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
>    wndclass.lpszMenuName  = NULL;
>    wndclass.lpszClassName = szAppName;
>    wndclass.hIconSm       = LoadIcon(NULL, IDI_APPLICATION);
>
>    RegisterClassEx(&wndclass);
>
>    hwnd = CreateWindow(szAppName,
>                        "The Hello Program",
>                        WS_OVERLAPPEDWINDOW,
>                        CW_USEDEFAULT,
>                        CW_USEDEFAULT,
>                        CW_USEDEFAULT,
>                        CW_USEDEFAULT,
>                        NULL,
>                        NULL,
>                        hInstance,
>                        NULL);
>
>    ShowWindow(hwnd, iCmdShow);
>    UpdateWindow(hwnd);
>
>    while (GetMessage(&msg, NULL, 0, 0)) {
>       TranslateMessage(&msg);
>       DispatchMessage(&msg);
>    } /* End while */
>
>    return msg.wParam;
>    }
>
>
>
>LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam,
>LPARAM lParam)
>{
>   HDC            hdc;
>   PAINTSTRUCT    ps;
>   RECT           rect;
>
>   switch (iMsg) {
>      case WM_CREATE:
>//         PlaySound("hellowin.wav", NULL, SND_FILENAME | SND_ASYNC);
>         return 0;
>      case WM_PAINT:
>         hdc = BeginPaint(hwnd, &ps);
>         GetClientRect(hwnd, &rect);
>         DrawText(hdc, "Hello, Windows NT", -1, &rect,
>                  DT_SINGLELINE | DT_CENTER | DT_VCENTER);
>         EndPaint(hwnd, &ps );
>         return 0;
>      case WM_DESTROY:
>         PostQuitMessage(0);
>         return 0;
>   } /* End switch */
>
>   return DefWindowProc(hwnd, iMsg, wParam, lParam);
>}
>
>
>
>