Delivered-To: listarch-cygwin AT sourceware DOT cygnus DOT com Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com Message-ID: <00e801be5061$ae285080$29acdfd0@InspirePharm.Com> From: "Suhaib M. Siddiqi" To: Cc: Subject: Re: make and .exe targets Date: Thu, 4 Feb 1999 12:13:27 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 5.00.0810.800 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.0810.800 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: Ssiddiqi AT inspirepharm DOT 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); >} > > > >