انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: Compile c Program  (دفعات بازدید: 2792 بار)

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

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
Compile c Program
« : 21 امرداد 1389، 07:18 ب‌ظ »
سلام
من یه فایل C دارم تو linux کامپایل نمیشه از دستور زیر استفاده میکنم ولی error میگیره فکر کنم به خاطر Library ها باشه لطفا راهنمایی کنید

ممنوم

gcc filename.c -o newname
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!

آفلاین aliva

  • Sr. Member
  • *
  • ارسال: 363
  • جنسیت : پسر
    • http://vakilzade.ir
پاسخ به: Compile c Program
« پاسخ #1 : 21 امرداد 1389، 07:42 ب‌ظ »
دستورتون مشکلی نداره

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
پاسخ به: Compile c Program
« پاسخ #2 : 21 امرداد 1389، 07:45 ب‌ظ »
دستورتون مشکلی نداره

میدونم دستور مشکلی نداره از Library ها ایراد میگیره چطوری اونارو Upgrade کنم
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!

آفلاین aliva

  • Sr. Member
  • *
  • ارسال: 363
  • جنسیت : پسر
    • http://vakilzade.ir
پاسخ به: Compile c Program
« پاسخ #3 : 21 امرداد 1389، 08:46 ب‌ظ »
اصلا نصبه؟
از تو هوا که نمی‌شه نظر داد.
حداقل ارورش رو می‌گذاشتین

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
پاسخ به: Compile c Program
« پاسخ #4 : 21 امرداد 1389، 09:48 ب‌ظ »
اصلا نصبه؟
از تو هوا که نمی‌شه نظر داد.
حداقل ارورش رو می‌گذاشتین

root@mohammad-desktop:~# gcc farzadho.c -o mm
farzadho.c:1:3: error: invalid preprocessing directive #Author
farzadho.c:2:3: error: invalid preprocessing directive #Version
farzadho.c:3:3: error: invalid preprocessing directive #Tested
farzadho.c:4:3: error: invalid preprocessing directive #Greetz
farzadho.c:5:3: error: invalid preprocessing directive #Code
farzadho.c:5:29: warning: missing terminating ' character
farzadho.c:18:22: error: asm/page.h: No such file or directory
farzadho.c: In function ‘main’:
farzadho.c:199: error: ‘PAGE_SIZE’ undeclared (first use in this function)
farzadho.c:199: error: (Each undeclared identifier is reported only once
farzadho.c:199: error: for each function it appears in.)
farzadho.c:209: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:209: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:210: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:211: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:229: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:229: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:230: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:231: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:246: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:246: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:247: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:257: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:257: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’

اینم خود فایله یه تست بکنید برای کامپایل:
http://dolati1703.persiangig.com/farzadho.c
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!

آفلاین Caesar

  • Sr. Member
  • *
  • ارسال: 383
  • جنسیت : پسر
    • A Virtual World for Learninig English
پاسخ به: Compile c Program
« پاسخ #5 : 21 امرداد 1389، 10:45 ب‌ظ »
دوست عزیز نیازی نیست سوالتون رو چند جا بپرسید!
این خط می‌گه که این فایلی که اینکلود کردین رو پیدا نمی‌کنه:
farzadho.c:18:22: error: asm/page.h: No such file or directoryهستش؟!

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
پاسخ به: Compile c Program
« پاسخ #6 : 22 امرداد 1389، 12:29 ق‌ظ »
دوست عزیز نیازی نیست سوالتون رو چند جا بپرسید!
این خط می‌گه که این فایلی که اینکلود کردین رو پیدا نمی‌کنه:
farzadho.c:18:22: error: asm/page.h: No such file or directoryهستش؟!

این فایل رو یه CentOS کامپایا میشه هیچ مشکلی هم نداره ولی رو Ubuntu کامپایل نمیشه.
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!

آفلاین دانیال بهزادی

  • ناظر انجمن
  • *
  • ارسال: 19744
  • جنسیت : پسر
  • Urahara Kiesuke
    • وبلاگ
پاسخ به: Compile c Program
« پاسخ #7 : 22 امرداد 1389، 04:48 ق‌ظ »
خب فایل page.h رو کپی کنین رو سیستمتون ببینین درست می‌شه یا لااقل ارورهاش کم‌تر می‌شه یا نه
اگه این ارسال بهت کمک کرد، دنبال دکمهٔ تشکر نگرد. به جاش تو هم به جامعهٔ آزادت کمک کن

آفلاین fzerorubigd

  • Hero Member
  • *
  • ارسال: 758
  • جنسیت : پسر
  • گوگل دوست خوبیه، فقط باید ازش بپرسی
    • یادداشتهای بیت نیمسوز
پاسخ به: Compile c Program
« پاسخ #8 : 22 امرداد 1389، 12:07 ب‌ظ »
یعنی کامپایلر C هست که با وجود این خطها در ابتدای کد :
# Author: DigitALL
# Version: 2.6.18-20
# Tested on: Linux System
# Greetz To: Zombie KroNicKq and All 1923turk.Biz Members
# Code : 2.6.18 2008 Exploit's ?s Edited 2009 Version.I Am Tested 2.6.18-20 2009 Linux is Rooted.Coming Soon.By DigitALL
بتونه فایل رو کامپایل کنه؟ باقیشو چک نکردم. حتی رو CentOS??

آفلاین fzerorubigd

  • Hero Member
  • *
  • ارسال: 758
  • جنسیت : پسر
  • گوگل دوست خوبیه، فقط باید ازش بپرسی
    • یادداشتهای بیت نیمسوز
پاسخ به: Compile c Program
« پاسخ #9 : 22 امرداد 1389، 12:28 ب‌ظ »
اما فایل page.h رو همه دیسترو ها وجود داره. تو پوشه
/lib/modules/`uname -r`/build/include
(اون uname -r تو بک تیکه، وقتی دستور رو میزنید میشه اسم کرنل دیستروی شما)
البته توی اون پوشه، یه پوشه دیگه هست که برای من توی Arch x86_64 اسمش asm-generic بود. من یه softlink ساختم به اسم asm به همین پوشه تو همونجا. البته کار راحت ترش این بود که توی کد، asm/page.h رو تغییر بدم به asm-generic/page.h
بعد اون پوشه رو که بالا گفتم به مسیر C اضافه کردم :
C_INCLUDE_PATH+="/lib/modules/`uname -r`/build/include"
export C_INCLUDE_PATH
حالا کامپایلش کن، و لطفا اون خطوط ابتدایی رو هم بردار یا به صورت کامنت درشون بیار، علامت # تو C رزرو شده واسه PreProcessor .

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
پاسخ به: Compile c Program
« پاسخ #10 : 22 امرداد 1389، 03:07 ب‌ظ »
اما فایل page.h رو همه دیسترو ها وجود داره. تو پوشه
/lib/modules/`uname -r`/build/include
(اون uname -r تو بک تیکه، وقتی دستور رو میزنید میشه اسم کرنل دیستروی شما)
البته توی اون پوشه، یه پوشه دیگه هست که برای من توی Arch x86_64 اسمش asm-generic بود. من یه softlink ساختم به اسم asm به همین پوشه تو همونجا. البته کار راحت ترش این بود که توی کد، asm/page.h رو تغییر بدم به asm-generic/page.h
بعد اون پوشه رو که بالا گفتم به مسیر C اضافه کردم :
C_INCLUDE_PATH+="/lib/modules/`uname -r`/build/include"
export C_INCLUDE_PATH

حالا کامپایلش کن، و لطفا اون خطوط ابتدایی رو هم بردار یا به صورت کامنت درشون بیار، علامت # تو C رزرو شده واسه PreProcessor .
منظورتو متوجه نمیشم اگه میشه واضح تر بگو یا کامپایل شده فایل رو بریم بفرست ممنون
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!

آفلاین fzerorubigd

  • Hero Member
  • *
  • ارسال: 758
  • جنسیت : پسر
  • گوگل دوست خوبیه، فقط باید ازش بپرسی
    • یادداشتهای بیت نیمسوز
پاسخ به: Compile c Program
« پاسخ #11 : 22 امرداد 1389، 04:57 ب‌ظ »
چی واضح نیست؟؟؟
این دستور رو بزن :
cd /lib/modules/`uname -r`/build/include
بعد دستوز ls رو بزن،‌ ببین پوشه asm-generic اونجا هست یا نه.
اگه نبود بگرد دنبال یه پوشه که اولش asm باشه و داخلش فایل page.h باشه
بعد بزن (با sudo البته )
ln -s ./asm-generic ./asm
فقط یادت باشه که اول دستور cd رو بزنی بعد این دستور رو. فرض هم میکنم که شما پوشه asm-generic داری مثل من. به جای اینکار میتونی کدت رو دستکاری کنی و به جای
#include <asm/page.h>
بنویسی :
#include <asm-generic/page.h>
بعد بزن :
C_INCLUDE_PATH+="/lib/modules/`uname -r`/build/include"
export C_INCLUDE_PATH
و در آخر کد رو کامپایل کنی
gcc farzadho.c -o mmm

این فایل وابسته هستش به کرنل شما، بنابراین منطقی نیست نسخه کامپایل شده من که ممکنه با یه کرنل دیگه کامپایل شده استفاده کنی.

اگه پوشه asm-generic  نداری حتما یه معادلشو داری،‌ اونو پیدا کن و به جای همه asm-generic ها اسم اونو بزن.

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
پاسخ به: Compile c Program
« پاسخ #12 : 22 امرداد 1389، 05:31 ب‌ظ »
تمام کار هارو کردم ولی بازم  ERROR داره

root@mohammad-desktop:~# gcc farzadho.c -o mm
farzadho.c:1:3: error: invalid preprocessing directive #Author
farzadho.c:2:3: error: invalid preprocessing directive #Version
farzadho.c:3:3: error: invalid preprocessing directive #Tested
farzadho.c:4:3: error: invalid preprocessing directive #Greetz
farzadho.c:5:3: error: invalid preprocessing directive #Code
farzadho.c:5:29: warning: missing terminating ' character
farzadho.c: In function ‘main’:
farzadho.c:209: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:209: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:210: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:211: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:229: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:229: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:230: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:231: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:246: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:246: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:247: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:257: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:257: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!

آفلاین fzerorubigd

  • Hero Member
  • *
  • ارسال: 758
  • جنسیت : پسر
  • گوگل دوست خوبیه، فقط باید ازش بپرسی
    • یادداشتهای بیت نیمسوز
پاسخ به: Compile c Program
« پاسخ #13 : 22 امرداد 1389، 05:35 ب‌ظ »
برادر من، بالاتر گفتم خطوط اول تا قبل از #define _GNU_SOURCE هرچی هست پاک کن یا کامنت کن.

آفلاین محمدرضا دولتی

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
  • یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!
پاسخ به: Compile c Program
« پاسخ #14 : 22 امرداد 1389، 05:46 ب‌ظ »
پاک کردم این Error رو میده

root@mohammad-desktop:~# gcc farzadho.c -o mmm
farzadho.c:12:30: error: asm-generic/page.h: No such file or directory
farzadho.c: In function ‘main’:
farzadho.c:193: error: ‘PAGE_SIZE’ undeclared (first use in this function)
farzadho.c:193: error: (Each undeclared identifier is reported only once
farzadho.c:193: error: for each function it appears in.)
farzadho.c:203: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:203: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:204: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:205: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:223: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:223: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:224: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:225: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:240: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:240: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
farzadho.c:241: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘struct page *’
farzadho.c:251: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 2 has type ‘char *’
farzadho.c:251: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘char *’
یاد بگیریم نمیشه و نمیتونم رو حذف کنیم!