View Full Version : Compile a C++ Program from the Command Line
amir_civil
شنبه 29 دی 1386, 23:11 عصر
سلام دوستان
چه فرقی بین کامپایل کردن برنامه بامحیط کامپایلر و خط فرمان وجوددارد؟
چون در کامپایل کردن با کامپایلر یه سری خطا میده برنامه که با خط فرمان اون اررورهارو نمیده
میشه کامپایلر رو طوری تنظیم کرد که مثل خط فرمان کل پروژه رو کامپایل کنه؟
ممنون
Inprise
یک شنبه 30 دی 1386, 00:03 صبح
تفاوت در پارامترهائی هست که به کامپایلر و لینکر ارسال میشه . وقتی از طریق IDE کامپایل میکنی بر اساس تنظیماتی که انجام دادی یا تنظیمات پیش فرض پارامترهای مختلفی به کامپایلر ارسال میشه ، مثل میزان بهینه سازی و نوع فایل خروجی و محل هدرها و کتابخانه ها و ... قاعدتا پروژه ات مسئله خاصی داشته . سعی کن اون رو توضیح بدی که راهنمائی مفیدتری بشه کرد .
ICEMAN
یک شنبه 30 دی 1386, 07:51 صبح
مثلا .plg در Visual C 6 اطلاعاتی در مورد Parameter های Compiler داره :
که مسایل Optimize ,Security و ... رو انجام میده ( در حالت default )
Build Log
--------------------Configuration: funcPtr - Win32 Debug--------------------
Command Lines
Creating temporary file "C:\DOCUME~1\majid\LOCALS~1\Temp\RSP113.tmp" with contents
[
/nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"Debug/funcPtr.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
"C:\Documents and Settings\majid\Desktop\func-ptr\funcPtr.cpp"
]
Creating command line "cl.exe @C:\DOCUME~1\majid\LOCALS~1\Temp\RSP113.tmp"
Creating temporary file "C:\DOCUME~1\majid\LOCALS~1\Temp\RSP114.tmp" with contents
[
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/funcPtr.pdb" /debug /machine:I386 /out:"Debug/funcPtr.exe" /pdbtype:sept
".\Debug\funcPtr.obj"
]
Creating command line "link.exe @C:\DOCUME~1\majid\LOCALS~1\Temp\RSP114.tmp"
Output Window
Compiling...
funcPtr.cpp
Linking...
Results
funcPtr.exe - 0 error(s), 0 warning(s)
amir_civil
یک شنبه 30 دی 1386, 08:48 صبح
متاسفانه الان برنامه همرام نیست ولی یه چیزی که جالب بوداینه که دستور:
printf
تو کتابخونه:
#include <stdio.h>
هست ولی در خط فرمان این دستور رو با کتابخونه
#include "windows.h"
هم کامپایل میکرد که IDE ارور میداد
من اگه بخام به این صورت باIDE کامپایل کنم چه تنظیماتی رو باید تغیر بدم(یا اینکه من چه جوری میتونم یه پروژه که حاوی چند فایل کتابخانه و... هست رو از طریق خط فرمان کامپایل کنم)
ممنون
amir_civil
دوشنبه 01 بهمن 1386, 09:14 صبح
دوستان لطفا کمک کنند
مهمه یه سوال دیگه هم در مورد
stdafx
چرا بعضی برنامه ها و کتابخانه ها مثل sdk با این کتابخانه کامپایل نمیشن و حتما باید یه پروژه سی++ win32 empty
داشته باشم
ممنون
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.