全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2892
推到 Plurk!
推到 Facebook!

請問這個C++程式要如何Compiler?

尚未結案
Bio6
一般會員


發表:48
回覆:37
積分:17
註冊:2005-04-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-09-15 02:35:33 IP:61.219.xxx.xxx 未訂閱
請問大大,在Linux Fedora3中要安裝哪些套件及什麼版本才能正常compiler?要執行C++連Mysql,那邊有範例呢?  
    #include 
#include 
int main()
{
   try {
      Connection con("sample");
      Result res = con.store("SELECT * FROM customer");
      cout << res.size() << " records found" << endl;
      Result::iterator r;
      for(r = res.begin(); r != res.end(); r  ) {
         const Row &row = *r;
         for(int c = 0; c < row.size(); c  )
            cout << row[c] << " ";
         cout << endl;
      }
   }
   catch (BadQuery &er) {
      cerr << "Oops: " << er.error << endl;
   }
   catch (BadConversion &er) {
      cerr << "Oops: converting [" << er.data << "] to "
      << er.type_name << endl;
   }
   catch (BadNullConversion) {
      cerr << "Oops: bad NULL conversion" << endl;
   }
}    是已經裝了以下套件,但是會有Include err,這Client端是沒裝MySQL,是否還要安裝MySQL 3.23? 或其它套件?    > rpm -ivh MySQL-shared-3.23.57-1.i386.rpm
Preparing...                ##################################################
MySQL-shared                ##################################################
> rpm -ivh libstdc  34-3.4.0-1.i386.rpm
warning: libstdc  34-3.4.0-1.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...                ##################################################
libstdc  34                 ##################################################
> rpm -ivh mysql  -2.0.5-1.el4.i386.rpm
Preparing...                ##################################################
mysql                       ##################################################
> rpm -ivh mysql  -devel-2.0.5-1.el4.i386.rpm
Preparing...                ##################################################
mysql  -devel               ##################################################        g   selectcc.cc -o cc.o -I/usr/include/mysql   -L/usr/lib -lMySQLclient    err:
In file included from /usr/include/mysql  /connection.h:40,
                 from /usr/include/mysql  /mysql  .h:54,
                 from selectcc.cc:2:
/usr/include/mysql  /defs.h:34:19: mysql.h: No such file or directory
In file included from /usr/include/mysql  /connection.h:40,
                 from /usr/include/mysql  /mysql  .h:54,
                 from selectcc.cc:2:
/usr/include/mysql  /defs.h:66: error: syntax error before `;' token
In file included from /usr/include/mysql  /mysql  .h:54,
                 from selectcc.cc:2:
/usr/include/mysql  /connection.h:45:19: mysql.h: No such file or directory
In file included from /usr/include/mysql  /mysql  .h:54,
                 from selectcc.cc:2:
/usr/include/mysql  /connection.h:142: error: type specifier omitted for 
   parameter `my_bool'
/usr/include/mysql  /connection.h:142: error: syntax error before `=' token
/usr/include/mysql  /connection.h:159: error: type specifier omitted for 
   parameter `my_bool'
/usr/include/mysql  /connection.h:159: error: syntax error before `=' token
/usr/include/mysql  /connection.h:355: error: syntax error before `)' token
/usr/include/mysql  /connection.h:392: error: semicolon missing after 
   declaration of `mysqlpp::Connection'
/usr/include/mysql  /connection.h: In member function `void 
   mysqlpp::Connection::close()':
/usr/include/mysql  /connection.h:167: error: `mysql_' undeclared (first use 
   this function)
/usr/include/mysql  /connection.h:167: error: (Each undeclared identifier is 
   reported only once for each function it appears in.)
/usr/include/mysql  /connection.h:167: error: `mysql_close' undeclared (first 
   use this function)
/usr/include/mysql  /connection.h:168: error: `is_connected_' undeclared (first 
   use this function)
/usr/include/mysql  /connection.h: In member function `bool 
   mysqlpp::Connection::success() const':
/usr/include/mysql  /connection.h:186: error: `success_' undeclared (first use 
   this function)
/usr/include/mysql  /connection.h: In member function `const char* 
   mysqlpp::Connection::error()':
/usr/include/mysql  /connection.h:224: error: `mysql_error' undeclared (first 
   use this function)
/usr/include/mysql  /connection.h: In member function `int 
   mysqlpp::Connection::errnum()':
/usr/include/mysql  /connection.h:231: error: `mysql_errno' undeclared (first 
   use this function)
.
.
.    
發表人 - bio6 於 2005/09/15 03:24:23
yhchu
一般會員


發表:2
回覆:70
積分:24
註冊:2004-01-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-09-15 11:46:12 IP:220.130.xxx.xxx 未訂閱
Bio6: compiler 抱怨找不到 mysql.h,我想你應該安裝 MySQL 的 develepement package,類似 MySQL-devel-xxxxx 之類的。
Bio6
一般會員


發表:48
回覆:37
積分:17
註冊:2005-04-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-09-15 15:35:33 IP:61.219.xxx.xxx 未訂閱
是有装啊 > rpm -ivh MySQL-shared-3.23.57-1.i386.rpm Preparing... ################################################## MySQL-shared ################################################## > rpm -ivh libstdc 34-3.4.0-1.i386.rpm warning: libstdc 34-3.4.0-1.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2 Preparing... ################################################## libstdc 34 ################################################## > rpm -ivh mysql -2.0.5-1.el4.i386.rpm Preparing... ################################################## mysql ################################################## > rpm -ivh mysql -devel-2.0.5-1.el4.i386.rpm Preparing... ################################################## mysql -devel ##################################################
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-09-15 16:09:34 IP:59.104.xxx.xxx 未訂閱
/usr/include/mysql /defs.h:34:19: mysql.h: No such file or directory 那這一句是說什麼???? 我是用 FreeBSD 的。所以我不知道你們 Linux 這麼麻煩。 我是裝 Mysql Server 還有安裝 Mysql Client 才會出現 mysql.h 1.你看看有沒有裝。 2.去 / 下用 find . -name "mysql.h" 看看有沒有這個檔。沒有就是要裝。 有就是你的 gcc 的路徑 "-I" 這些東東要修正。
Bio6
一般會員


發表:48
回覆:37
積分:17
註冊:2005-04-07

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-09-15 19:37:01 IP:61.219.xxx.xxx 未訂閱
好像是要安裝 Mysql才會出現 mysql.h 偶來試試. 3q3q
yhchu
一般會員


發表:2
回覆:70
積分:24
註冊:2004-01-28

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-09-16 09:59:41 IP:220.130.xxx.xxx 未訂閱
你裝的是 mysql 的開發套件,不是 MySQL 的。以我的 FC4 為例, [localhost ~]$ rpm -q -f /usr/include/mysql/mysql.h mysql-devel-4.1.11-2 可以看到 mysql.h 是屬於 mysql-devel 這個套件。
Bio6
一般會員


發表:48
回覆:37
積分:17
註冊:2005-04-07

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-09-16 17:09:59 IP:61.219.xxx.xxx 未訂閱
這些都試過, 也装了mysql-devel 這個套件. 發現這mysql 好像不是很成熟的東東.尤其是跟gcc的版本都會有問題. 不知那位可否教一下從linux的安装選了那些套件->linux安装好之後再安装了那些套件->gcc是用第幾版,之後可以compiler這個範例沒err的? 多謝指教.
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-09-19 08:59:03 IP:210.64.xxx.xxx 未訂閱
我是都用 c api 啦。 沒用 c 啦。 我用 c api 時。在 FreeBSD & Windows 下的 C Builder 都可以正常 compiler
yhchu
一般會員


發表:2
回覆:70
積分:24
註冊:2004-01-28

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-09-19 10:19:48 IP:220.130.xxx.xxx 未訂閱
你有沒有照暗黑大大說的,把 mysql.h 的路徑加入 -I 參數試試看?結果有不同嗎?
Bio6
一般會員


發表:48
回覆:37
積分:17
註冊:2005-04-07

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-09-19 23:53:47 IP:61.219.xxx.xxx 未訂閱
都有把 mysql.h 的路徑加入 -I 參數.試的結果看起來是g 的版本與mysql 有相容的問題.甚至是連系統的一些套件也會有關連到.就一直試到後來連cout也会有not define的問題.如果換一個#include卻又一堆err跑出來.
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#11 引用回覆 回覆 發表時間:2005-09-24 20:32:31 IP:59.104.xxx.xxx 未訂閱
你的 gcc 是那一版? 如果是 2.9X 的話。它編 *.cpp 都沒問題。 如果是 3.X 的話。它要編 *.cpp 有時候要用 g 不然要在 gcc 後面加上 -lstdc 這一類的 lib 才可以正常動作。
Bio6
一般會員


發表:48
回覆:37
積分:17
註冊:2005-04-07

發送簡訊給我
#12 引用回覆 回覆 發表時間:2005-09-25 15:48:15 IP:61.219.xxx.xxx 未訂閱
這幾天試下來確實是有這個問題2.9X就好些..
系統時間:2024-04-30 15:14:47
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!