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

تازه کار => انجمن تازه‌کاران => نویسنده: SFatemeM در 15 اسفند 1393، 06:28 ب‌ظ

عنوان: اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: SFatemeM در 15 اسفند 1393، 06:28 ب‌ظ
سلام. یه مشکلی در برنامه داشتم.
در این کد از کتابخانه آماده‌استفاده میکنم.این کد رو که داخل ترمینال لینوکس میزنم و با این کد کامپایل میکنم:
gcc -L/home/OS -Wall test.c -o test
این error رو میدهد
undefind reference to 'openPort'

به این لینک " http://www.cprogramming.com/tutorial/shared-libraries-linux-gcc.html " هم مراجعه کردم و مرحله 3 رو انجام دادم ولی باز هم حل نشد !!
مثلا این تابع ساده زیر رو نوشتم که استفاده این کتابخونه رو ببینم ...
ممنون میشم راهنماییم کنین.

[left]
#include "libwebserver.h"
#include <stdio.h>
int main()
{
int sockfd=0;
sockfd=openPort(8080);
printf("Hellow: %d",sockfd);
}

[/left]
عنوان: پاسخ : اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: بهنام م ک در 15 اسفند 1393، 06:49 ب‌ظ
لطفا چک کنین ببینین داخل فایل libwebserver.h تابعی به اسم openPort وجود داره؟

البته بدیهیه که در این شیوه ی کامپایل ، فایل libwebserver.h باید در دایرکتوری کد برنامه قرار داشته باشه
عنوان: پاسخ : اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: دانیال بهزادی در 15 اسفند 1393، 07:03 ب‌ظ
سوییچ lwebserver- رو هم به دستور کامپایل gcc اضافه کن
عنوان: پاسخ : اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: SFatemeM در 15 اسفند 1393، 07:20 ب‌ظ
لطفا چک کنین ببینین داخل فایل libwebserver.h تابعی به اسم openPort وجود داره؟

البته بدیهیه که در این شیوه ی کامپایل ، فایل libwebserver.h باید در دایرکتوری کد برنامه قرار داشته باشه

بله داخل فایل برنامه این تابع وجود داره.
فایل libwebserver.h هم در دایرکتوری کد برنامه وجود دارد !
عنوان: پاسخ : اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: SFatemeM در 15 اسفند 1393، 07:22 ب‌ظ
سوییچ lwebserver- رو هم به دستور کامپایل gcc اضافه کن

این سوییچ رو هم اضافه کردم ولی باز همون error رو داد !!
عنوان: پاسخ : اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: بهنام م ک در 15 اسفند 1393، 09:25 ب‌ظ
لطفا محتوای تابع openPort رو اینجا بذارید.به نظرم باید سویچ مناسب رو پیدا کنیم
عنوان: پاسخ : اشکال در استفاده از تابع‌های کتابخانه‌ای دربرنامه به زبان C
ارسال شده توسط: SFatemeM در 16 اسفند 1393، 09:40 ب‌ظ
لطفا محتوای تابع openPort رو اینجا بذارید.به نظرم باید سویچ مناسب رو پیدا کنیم

کتابخونه‌ها‌ رو آماده دادن. من خودم ننوشتم تابع‌ها رو .

کامپایل درست شد! مشکل از فایل کتابخونه بوده . مثل اینکه فایلی که نوشته بودن واسه 64 بیت بوده و چیزی که ماها نصب کرده بودیم 32 بیت بوده و نمیتونسته ارجاع بده ...

ممنون از راهنمایی همه :)