From mboxrd@z Thu Jan 1 00:00:00 1970 From: fortinj@ibm.net To: egcs@cygnus.com Subject: No Subject Date: Sun, 28 Feb 1999 23:02:00 -0000 Message-id: <13076.947490248.0@NO-ID-FOUND.mhonarc.org> X-SW-Source: 1999-02n/msg00114.html 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: Ssiddiqi@inspirepharm.com http://www.inspirepharm.com ============================ ----- Original Message ----- From: To: Cc: 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 > >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); >} > > > >