[DOS程式] BC5.0&BC31的lib include問題 |
尚未結案
|
airs
一般會員 發表:7 回覆:4 積分:2 註冊:2002-08-30 發送簡訊給我 |
各位大大:
小弟想寫DOS透過GPIB介面去控制機器的程式(這不是重點)
但是目前碰到一個問題 找了很久的資料也不知怎麼解
有找到.h跟.lib
但是我只有在BC31下成功使用他的範例 看起來是這個lib 檔應該是使用small Memory Model
但是我本來的程式是用Huge Memory Model 所以怎麼加都出現....
undefined symbol ibdev(xxxxx) in module MAIN.cpp
undefined symbol ibwrt(xxxxx) in module MAIN.cpp
......
BC5.0也一樣 以下是.h的大概內容 adsgpib.h
================== extern int ibdev(int boardID, int pad, int sad, int tmo, int eot, int eos);
extern int ibln(int ud, int pad, int sad, short *listen);
extern int ibwrt(int ud, char *buf, long cnt);
extern int ibrd(int ud, char *buf, long cnt);
........ extern int ibsta;
extern int iberr;
extern int ibcnt;
extern long ibcntl; ======================= 在project中已經加入lib檔
在main.cpp中我則是寫... extern int far ibdev(int boardID, int pad, int sad, int tmo, int eot, int eos);
extern int far ibln(int ud, int pad, int sad, short *listen);
extern int far ibwrt(int ud, char *buf, long cnt);
extern int far ibrd(int ud, char *buf, long cnt);
(因為只用到四個) 請問各位大大 是不是有哪邊用錯了??
感謝~~~
|
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
不知道你的Compiler是不是定義使用C++ Compiler規則?是的話!試試看下面:
<>< face="Verdana, Arial, Helvetica">引言:
#ifdef __cplusplus
extern "C" {
#endif
extern int ibdev(int boardID, int pad, int sad, int tmo, int eot, int eos);
extern int ibln(int ud, int pad, int sad, short *listen);
extern int ibwrt(int ud, char *buf, long cnt);
extern int ibrd(int ud, char *buf, long cnt);
........ extern int ibsta;
extern int iberr;
extern int ibcnt;
extern long ibcntl;
#ifdef __cplusplus
}
#endif
//main.cpp
#include "adsgpib.h"
-----------------------------------------------
Creation is the fundation of promotion.
|
airs
一般會員 發表:7 回覆:4 積分:2 註冊:2002-08-30 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |