لطفا وارد شوید یا ثبت‌نام کنید تا به انجمن‌ها دسترسی کامل داشته باشید.



 
امتياز موضوع :
  • 0 رأي - معدل امتيازات : 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل با qt
2010-04-25, 07:49 PM,
ارسال : #21
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
راستش این کار رو هم که کردم باز ارور زیر رو میده:
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o test.o test.cpp
test.cpp:1:22: error: iostream.h: No such file or directory
test.cpp:3: warning: ISO C++ forbids declaration of ‘main’ with no type
test.cpp: In function ‘int main()’:
test.cpp:5: error: ‘cout’ was not declared in this scope
make: *** [test.o] Error 1
تو QT Creator هم که ارور زیر رو میده! اصلا دارم کلافه میشم کمکم کنید لطفا.
No valid Qt version set. Set one in Tools/Options
Error while building project test
When executing build step 'QMake'
Canceled build.

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-04-25, 08:53 PM,
ارسال : #22
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
اینکه باز داره میگه iostream.h
گفتم بجاش بنویس iostream

ضمنا اون برنامهء hello world گرافیکی استاندارد رو تست کن باید کار کنه.


Only God

I Wish I Was Buddha
کاش بودا بودم

Live And Let Live
زندگی کن و بگذار زندگی کنند

Forgive And Be Forgiven
ببخش و بخشیده شو

مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-04-25, 09:09 PM,
ارسال : #23
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
سلام
لطفا کاری هایی که عرض می کنم قدم به قدم دنبال کنید و نتیجه را بفرمایید.
QT Creator را باز کنید به منوی Tools سپس Options رفته سپس در قسمت QT4 (سمت چپ آخرین) را انتخاب کنید بعد در قسمت Defualt QT Version که در پایین صفحه است QT مناسب را انتخاب کنید. QT را انتخاب کنید که در قسمت بالای صفحه آدرس داشته باشد نه آنی که PATH دارد.
بعد همه پروژه ها جاری را ببندید. از منوی فایل New File ... را انتخاب و بعد هم QT4 Console Application را انتخاب کنید. بعد از ایجاد شدن پروژه جدید، از منوی فایل Open File … را انتخاب کنید و بعد از دایرکتوری ای که برای پروژه خودتان ایجاد کرده اید، فایل main.cpp را انتخاب کنید. کل محتویان main.cpp را پاک کنید و کد زیر را جایگزین آن کنید. بعد دکمه مثلث سبز رنگی که در سمت چپ پایین قرار دارد (RUN) را فشار دهید. احتمالا الان باید یک کنسول باز شده باشد و نتیجه را ببنید.

کد :
#include <iostream>
using namespace std;

int main()
{
    cout << "salam";
    cin.get();
    return 0;
}

اما چند نکته

نقل قول :من QT رو تو لینوکس و ویندوز نصب کردم و ++G هم رو سیستم نصب هست. وقتی میرم و بزبان ++C مینویسم, دکمه ران و دیباگ و... فعال نیست و نمیدونم چطوری این برنامه رو استفاده کنم. آیا من میتونم کل کد نویسیم بزبان ++C رو تو QT Creator انجام بدم و بیخیال اکلیپس و نت بینز و ... بشم؟ ممنون.

در IDE هایی مانند ویژوال استودیو، نت بینز، QT creator، Eclipse (مثلا برای C++) و غیره نمی توانید یک فایل را به تنهایی ایجاد و کامپایل کنید. باید ابتدا یک پروژه (در ویژوال استودیو ابتدا solution و بعد پروژه در داخل آن) ایجاد کنید بعد فایل های مورد نظرتان را در آن بسازید و سپس اقدام به دیباگ کردن کنید.

نقل قول :بله درسته ولی من میخوام برای لینوکس کد بنویسم و فقط یک فایل CPP. برام کافیه و نیازی به GUI و ... ندارم. آیا فقط QT GUI Application کار میکنه و بقیه بلا استفاده است؟

در واقع از QT Creator برای ساخت برنامه های دارای GUI استفاده می شود اما می توان برنامه های کنسولی هم با آن ساخت. اگر می خواهید برنامه های کنسولی و ساده بنویسید، از کامپایلر خود GNU و یک ویرایشگر متنی ساده هم می توانید استفاده کنید و هیچ لزومی به استفاده از IDE ندارید اما اگر برنامه ای که می خواهید بنویسید بزرگ است حتما از IDE استفاده کنید.

نقل قول :No valid Qt version set. Set one in Tools/Options
Error while building project test
When executing build step 'QMake'
Canceled build

برای رفع این خطا باید به منوی Tools سپس Options رفته سپس در قسمت QT4 (سپت چپ آخرین) را انتخاب کنید بعد در قسمت Defualt QT Version که در پایین صفحه است QT مناسب را انتخاب کنید. QT را انتخاب کنید که در قسمت بالای صفحه آدرس داشته باشد نه آنی که PATH دارد.

نقل قول :g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o test.o test.cpp
test.cpp:1:22: error: iostream.h: No such file or directory
test.cpp:3: warning: ISO C++ forbids declaration of ‘main’ with no type
test.cpp: In function ‘int main()’:
test.cpp:5: error: ‘cout’ was not declared in this scope
make: *** [test.o] Error 1

اما این خطا. چند چیز در اینجا هست. اول اینکه iostream.h نداریم <iostream> است. دوم هم اینکه احتمالا return برای main نگذاشته اید. سوم هم اینکه وقتی iostream نباشد در نتیجه cout هم شناخته نمی شود.

نقل قول :#include <iostream>

int main()
{
std::cout << "Hello world\n";
std::cin.get();
}

دو نکته در اینجا وجود دارد. اول اینکه برای main بازگشت (return) نگذاشته اید در حالی که مقدار آن را int تعریف کرده اید. دوم هم اینکه با نوشتن using namespace std; می توانید std:: را حذف کنید.

نقل قول :راستش این کار رو هم که کردم باز ارور زیر رو میده:
g++ -c -pipe -g -Wall -W -O2 -D_REENTRANT -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o test.o test.cpp
test.cpp:1:22: error: iostream.h: No such file or directory
test.cpp:3: warning: ISO C++ forbids declaration of ‘main’ with no type
test.cpp: In function ‘int main()’:
test.cpp:5: error: ‘cout’ was not declared in this scope
make: *** [test.o] Error 1
تو QT Creator هم که ارور زیر رو میده! اصلا دارم کلافه میشم کمکم کنید لطفا.
No valid Qt version set. Set one in Tools/Options
Error while building project test
When executing build step 'QMake'
Canceled build.

دلیل این خطا ها را توضیح دادم.

<!-- m --><a class="postlink" href="http://www.abnabatmag.com">http://www.abnabatmag.com</a><!-- m -->
مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-04-25, 10:52 PM,
ارسال : #24
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
راستش ممنونم چون با تغییر در پت qt در option تونستم برناممو ران کنم مثل لینک زیر و ... البته آیا بغیر از حالت کنسول هم مشکل حل شده؟ چطوری تست کنم؟ باز هم ممنون از کمکهاتون.
<!-- m --><a class="postlink" href="http://www.upic.ir/share-EE21_4BD49692.html">http://www.upic.ir/share-EE21_4BD49692.html</a><!-- m -->

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-04-26, 08:26 AM,
ارسال : #25
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
صلوات جلیل ختم کن!
خب یه برنامه گرافیکی رو تست کن.
در بخش هلپ بری توی رفرنس خودش مثال زیاد داره.
ضمنا hello world رو هم که داری.
راستی میخواستی برنامه به این سادگی بنویسی میتونستی براحتی در خط فرمان کامپایلش کنی؛ نیازی به Qt نبود.
نقل قول این ارسال در یک پاسخ
2010-04-26, 09:29 AM,
ارسال : #26
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
نه برنامه به این سادگی نمیخواستم و این فقط برای تست بود که این IDE رو استیبل کنم تا شروع کنم به کار. باز هم ممنون, اگه سوالی بود میپرسم.

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-04-26, 02:50 PM,
ارسال : #27
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
من هم اینجا کلی چیز یاد گرفتم. آیا در QT هم برای Auto Complete چیزی داریم؟ البته من در Tools/Option دیدم که داره و تیک خورده ولی کار نمیکنه! مثلا در نت بینز ما اگر main زده و شیفت را با اینتر بگیریم میاد و کل متد main را برایمان چاپ میکنه ولی تو QT من چنین چیزی نمیبینم که خودتون میدونید برای برنامه نویس مثل رانندگی با کالسکه هستش. اگر راهی هست من را هم راهنمایی کنید, بسیار سپاسگذارم.
نقل قول این ارسال در یک پاسخ
2010-04-26, 05:25 PM,
ارسال : #28
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
نقل قول :صلوات جلیل ختم کن!
اللهم صلی علی محمد و آل محمد و عجل فرجهم

الحمدلله که مشکلتان حل شد. اما باز هم چند نکته. اول اینکه من مدت ها پیش با QT Creator کار کرده بود و بعد از تجربه ناخوشایندی که با آن داشتم، آن را کنار گذاشته بودم و برای حل مشکل شما دوباره آن را باز کردم و ظاهرا آن قسمت projects را به opendocument تغییر داده بودم و فراموش کرده بودم که آنجا projecs هم دارد و به همین دلیل بود که گفتم از منوی فایل، main.cpp را باز کنید. پس در کل به من نخندید. لطفا. نکته دوم هم اینکه در زبان فارسی آموزش QT بهتر از این پیدا نکردم. <!-- m --><a class="postlink" href="http://www.technotux.org/html/PNphpBB2-viewtopic-t-18235-postdays-0-postorder-asc.html">http://www.technotux.org/html/PNphpBB2- ... r-asc.html</a><!-- m --> حتما ببنید. اگر فردی بهتر از این پیدا کرد، اطلاع دهد. لطفا. نکته چهارم، اسم تمی که استفاده می کنید را بفرمایید. لطفا. نکته آخر هم در مورد IntelliSense یا Autocomplete، در اکثر IDE های پیشرفته این کار با Ctrl+Space انجام می شود.

<!-- m --><a class="postlink" href="http://www.abnabatmag.com">http://www.abnabatmag.com</a><!-- m -->
مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-04-26, 08:37 PM,
ارسال : #29
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
باز هم ممنون از شما. تم من تم مک او اس بوده که بصورت دستی و با نصب ۸ برنامه قابل انجام است که اگر به لینک زیر بروید میبینید که آموزش اونو گذاشته. ممنون و موفق باشید.
<!-- m --><a class="postlink" href="http://maketecheasier.com/turn-your-ubuntu-hardy-to-mac-osx-leopard/2008/07/23">http://maketecheasier.com/turn-your-ubu ... 2008/07/23</a><!-- m -->

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-01, 02:20 PM,
ارسال : #30
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
دوستان من هنوز تو تست این برنامه هستم و کار رو شروع نکردم. میخوام بدونم که کد زیر که در QT Console من نوشتم, چرا ران نمیشه و ارور روی cout و cin میده! ممنون.

#include <iostream>

int main()
{
int nomre;

cout<<"Lotfan nomreye kod ra vared konid";

cin>>nomre;

cout<<"Nomreye shoma hast :"<<nomre<<"!";

return 0;
}

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-01, 03:11 PM,
ارسال : #31
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
زمانی که اشکالی در هنگام کامپایل پیش می آید، باید برای رفع آن اشکال یا خروجی خطا را بخوانید و آن را رفع کنید یا خروجی خطا را در اختیار دیگران قرار دهید تا آن ها مشکل را پیدا کنند. اما در اینجا از آنجایی که خروجی خطا را قرار نداده اید من حدس می زنم مشکل شما از نداشتن using namespace std; است. آن را بعد از include اضافه کنید. توجه کنید کهcin و cout متعلق به std هستند.

<!-- m --><a class="postlink" href="http://www.abnabatmag.com">http://www.abnabatmag.com</a><!-- m -->
مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-01, 03:58 PM,
ارسال : #32
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
متشکرم, اصلا حواسم نبود.

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-01, 08:02 PM,
ارسال : #33
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
من در لینوکس در داخل QT Console کد مینویسم و میزنم که ران بشه ولی بجای اینکه بره و ترمینال رو باز کنه و تو اون نمایش بده در قسمت اپلیکیشن آت پوت در داخل QT اونو ران میکنه ولی تو ویندوز میره و CMD رو باز میکنه و اجرای برنامه رو انجام میده!
ضمنا من چه در ویندوز و چه لینوکس وقتی یک تکه کد مثل زیر مینویسم میره و تا قسمت cin رو اجرا میکنه و آنجایی که باید ریزالت رو نمایش بده دیگه اتفاقی نمیوفته درصورتیکه وقتی تو حالت دستی و اصلا بدون QT میرم و کد ++C مینویسم این مسائل نیست! ممنون میشم اگر راهنماییم کنید.

#include <iostream>
using namespace std;
int main() { int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
rest=num % 2;
if (rest!=0)
cout<<num<<" is fard(odd) ! ";
else
cout<<num<<" is zoj(even) ! "; return 0; }

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-02, 07:10 PM,
ارسال : #34
پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
اگه میشه نذارین از داغی بیوفته. :wink:

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-03, 12:20 PM,
ارسال : #35
Re: پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
iSam نویسنده :من در لینوکس در داخل QT Console کد مینویسم و میزنم که ران بشه ولی بجای اینکه بره و ترمینال رو باز کنه و تو اون نمایش بده در قسمت اپلیکیشن آت پوت در داخل QT اونو ران میکنه ولی تو ویندوز میره و CMD رو باز میکنه و اجرای برنامه رو انجام میده!
ضمنا من چه در ویندوز و چه لینوکس وقتی یک تکه کد مثل زیر مینویسم میره و تا قسمت cin رو اجرا میکنه و آنجایی که باید ریزالت رو نمایش بده دیگه اتفاقی نمیوفته درصورتیکه وقتی تو حالت دستی و اصلا بدون QT میرم و کد ++C مینویسم این مسائل نیست! ممنون میشم اگر راهنماییم کنید.

#include <iostream>
using namespace std;
int main() { int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
rest=num % 2;
if (rest!=0)
cout<<num<<" is fard(odd) ! ";
else
cout<<num<<" is zoj(even) ! "; return 0; }

اقایون این قسمت داغ منو تازه کرد. منم رفته بودم سراغ اکلیپس که اگه اینو راهنمایی کنید شاید بدم نیاد بیام رو QT. خلاصه بقول دوستمون نگذارید از داغی بیوفته.
نقل قول این ارسال در یک پاسخ
2010-05-04, 08:47 AM,
ارسال : #36
Re: پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
iSam نویسنده :من در لینوکس در داخل QT Console کد مینویسم و میزنم که ران بشه ولی بجای اینکه بره و ترمینال رو باز کنه و تو اون نمایش بده در قسمت اپلیکیشن آت پوت در داخل QT اونو ران میکنه ولی تو ویندوز میره و CMD رو باز میکنه و اجرای برنامه رو انجام میده!
ضمنا من چه در ویندوز و چه لینوکس وقتی یک تکه کد مثل زیر مینویسم میره و تا قسمت cin رو اجرا میکنه و آنجایی که باید ریزالت رو نمایش بده دیگه اتفاقی نمیوفته درصورتیکه وقتی تو حالت دستی و اصلا بدون QT میرم و کد ++C مینویسم این مسائل نیست! ممنون میشم اگر راهنماییم کنید.

#include <iostream>
using namespace std;
int main() { int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
rest=num % 2;
if (rest!=0)
cout<<num<<" is fard(odd) ! ";
else
cout<<num<<" is zoj(even) ! "; return 0; }

ببین من روی لینوکس چندان کار نکردم بنابراین نمیتونم چیزی بگم (چیزی هم یادم نمیاد).
درمورد ویندوز هم تقریبا با Qt Creator کار نکردم و بازم نمیتونم چیزی بگم.
اما در ویندوز تمام برنامه های کیوت رو با خط فرمانش کامپایل و اجرا کردم و مشکلی نداشتم.
شما هم میتونی این روش رو امتحان کنی. اگر با Qt Creator هم کار میکنی (روی ویندوز) و برنامت رو با موفقیت کامپایل میکنه، پس وقتی روی فایل اجرایی بطور مستقیم دابل کلیک میکنی تا اجرا بشه باید یک پنجرهء کنسول باز بشه و برنامه بخوبی کار کنه. البته یادت نره باید CONFIG+=console رو قبل از فرمان qmake به فایل پروژه اضافه کرده باشی. اگر این کار رو نکردی بهتره تمام فایلهای ساخته شده غیر از سورس و فایل پروژه و هدرهای خودت رو پاک کنی و فرمانهای مربوط به ساخت رو دوباره از اول تکرار کنی.
نقل قول این ارسال در یک پاسخ
2010-05-04, 09:10 AM,
ارسال : #37
پاسخ: Re: پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
الان این کد رو:
کد :
#include <iostream>
using namespace std;
int main() {
int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
cout<<num<<" is";
cin>>num;
return 0;
}
بصورت یک پروژهء کنسول با Qt Creator ساختم و اجرا کردم و مشکلی ندیدم.
شما دقیقا کجا مشکل داری؟ با این کدی که من تست کردم الان مشکلی داری؟
نقل قول این ارسال در یک پاسخ
2010-05-04, 09:12 AM,
ارسال : #38
پاسخ: Re: پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
نقل قول :من در لینوکس در داخل QT Console کد مینویسم و میزنم که ران بشه ولی بجای اینکه بره و ترمینال رو باز کنه و تو اون نمایش بده در قسمت اپلیکیشن آت پوت در داخل QT اونو ران میکنه ولی تو ویندوز میره و CMD رو باز میکنه و اجرای برنامه رو انجام میده!
بنظرم طبیعی باشه و بخاطر تفاوت ساختار لینوکس و ویندوز هست.
چه مشکلی ایجاد میکنه؟
نقل قول این ارسال در یک پاسخ
2010-05-04, 09:42 AM,
ارسال : #39
Re: پاسخ: Re: پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
Anonymous نویسنده :الان این کد رو:
کد :
#include <iostream>
using namespace std;
int main() {
int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
cout<<num<<" is";
cin>>num;
return 0;
}
بصورت یک پروژهء کنسول با Qt Creator ساختم و اجرا کردم و مشکلی ندیدم.
شما دقیقا کجا مشکل داری؟ با این کدی که من تست کردم الان مشکلی داری؟

والا با کد شما مشکلی ندارم ولی وقتی کد خودمو که در زیر هست مینویسم, میگه عدد رو بده و وقتی میدم بجار دادن ریزالت از کنسول میپره بیرون!!! ممنون میشم راهنماییم کنید.

#include <iostream>
using namespace std;
int main()
{
int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
rest=num % 2;
if (rest!=0)
cout<<num<<" is fard(odd) ! ";
else
cout<<num<<" is zoj(even) ! ";

return 0;
}

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2010-05-04, 09:55 AM,
ارسال : #40
پاسخ: Re: پاسخ: Re: پاسخ: Re: پاسخ: Re: پاسخ: مشکل با qt
ایرادمو فهمیدم, کدم یک تکه کم داشت که اگر کد زیر رور ببینید درست شده. برم خونه تو لینوکس ببینم چطوریاست. مرسی.

#include <iostream>
using namespace std;
int main()
{
int num;
int rest;
cout<<" Enter your number: ";
cin>>num;
rest=num % 2;
if (rest!=0)
cout<<num<<" is odd! ";
else
cout<<num<<" is even! ";
cin>>num;
return 0;
}

موفق و پیروز باشید , سامان .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ


رفتن به انجمن :


کاربران در حال مشاهده موضوع : 2 مهمان