• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-379  評(píng)論-37  文章-0  trackbacks-0

            轉(zhuǎn):http://www.ibm.com/developerworks/cn/linux/opensource/os-ecc/

            Pawel Leszek (pawel.leszek@ipgate.pl), 獨(dú)立軟件顧問(wèn)
            Pawel Leszek 是 Studio B 的一位作家,他是一位專長(zhǎng)于 Linux/Win/Mac OS 系統(tǒng)體系結(jié)構(gòu)和管理的獨(dú)立軟件顧問(wèn)和作家。他具有許多操作系統(tǒng)、編程語(yǔ)言和網(wǎng)絡(luò)協(xié)議方面的經(jīng)驗(yàn),尤其是 Lotus Domino 和 DB2 方面的經(jīng)驗(yàn)。Pawel 還是 LinuxWorld上一系列文章的作者,以及 PC World波蘭版的 Linux 專欄作家。Pawel 和他的妻子以及可愛的小女兒住在華沙。歡迎提問(wèn)并提出意見;您可以直接給作者發(fā)電子郵件( pawel.leszek@ipgate.pl)。

            簡(jiǎn)介: 我們將概述如何在 C/C++ 開發(fā)項(xiàng)目中使用 Eclipse 平臺(tái)。盡管 Eclipse 主要是一個(gè) Java 開發(fā)環(huán)境,但其體系結(jié)構(gòu)確保了對(duì)其它編程語(yǔ)言的支持。在本文中,您將學(xué)習(xí)如何使用 C/C++ 開發(fā)工具箱(C/C++ Development Toolkit,CDT),它是可用于 Eclipse 的最佳 C/C++ 工具箱。

            標(biāo)記本文!

            發(fā)布日期: 2004 年 3 月 09 日
            級(jí)別: 初級(jí)
            訪問(wèn)情況 883 次瀏覽
            建議: 0 (添加評(píng)論)
            1 star2 stars3 stars4 stars5 stars 平均分 (共 0 個(gè)評(píng)分 )

            C 和 C++ 語(yǔ)言都是世界上最流行且使用最普遍的編程語(yǔ)言,因此 Eclipse 平臺(tái)(Eclipse Platform)提供對(duì) C/C++ 開發(fā)的支持一點(diǎn)都不足為奇。因?yàn)?Eclipse 平臺(tái)只是用于開發(fā)者工具的一個(gè)框架,它不直接支持 C/C++;它使用外部插件來(lái)提供支持。本文將向您演示如何使用 CDT — 用于 C/C++ 開發(fā)的一組插件。CDT 項(xiàng)目(有關(guān)鏈接,請(qǐng)參閱本文后面的 參考資料一節(jié))致力于為 Eclipse 平臺(tái)提供功能完全的 C/C++ 集成開發(fā)環(huán)境(Integrated Development Environment,IDE)。雖然該項(xiàng)目的重點(diǎn)是 Linux,但它在可使用 GNU 開發(fā)者工具的所有環(huán)境(包括 Win32(Win 95/98/Me/NT/2000/XP)、QNX Neutrino 和 Solaris 平臺(tái))中都能工作。

            CDT 是完全用 Java 實(shí)現(xiàn)的開放源碼項(xiàng)目(根據(jù) Common Public License 特許的),它作為 Eclipse SDK 平臺(tái)的一組插件。這些插件將 C/C++ 透視圖添加到 Eclipse 工作臺(tái)(Workbench)中,現(xiàn)在后者可以用許多視圖和向?qū)б约案呒?jí)編輯和調(diào)試支持來(lái)支持 C/C++ 開發(fā)。

            由于其復(fù)雜性,CDT 被分成幾個(gè)組件,它們都采用獨(dú)立插件的形式。每個(gè)組件都作為一個(gè)獨(dú)立自主的項(xiàng)目進(jìn)行運(yùn)作,有它自己的一組提交者、錯(cuò)誤類別和郵件列表。但是,所有插件都是 CDT 正常工作所必需的。下面是 CDT 插件/組件的完整列表:

                * 主 CDT 插件(Primary CDT plug-in)是“框架”CDT 插件。
                * CDT 功能 Eclipse(CDT Feature Eclipse)是 CDT 功能組件(Feature Component)。
                * CDT 核心(CDT Core)提供了核心模型(Core Model)、CDOM 和核心組件(Core Component)。
                * CDT UI是核心 UI、視圖、編輯器和向?qū)А?br>    * CDT 啟動(dòng)(CDT Launch)為諸如編譯器和調(diào)試器之類的外部工具提供了啟動(dòng)機(jī)制。
                * CDT 調(diào)試核心(CDT Debug Core)提供了調(diào)試功能。
                * CDT 調(diào)試 UI(CDT Debug UI)為 CDT 調(diào)試編輯器、視圖和向?qū)峁┝擞脩艚缑妗?br>    * CDT 調(diào)試 MI(CDT Debug MI)是用于與 MI 兼容的調(diào)試器的應(yīng)用程序連接器。

            現(xiàn)在,讓我們研究一下如何在實(shí)際應(yīng)用程序中使用這些組件。圖 1 顯示了 Eclipse 中的 C/C++ 項(xiàng)目:

            圖 1. 在帶有 CDT 插件的 Eclipse 中編輯 C/C++ 項(xiàng)目
            圖 1. 在帶有 CDT 插件的 Eclipse 中編輯 C/C++ 項(xiàng)目

            安裝和運(yùn)行 CDT

            在下載和安裝 CDT 之前,首先必需確保 GNU C 編譯器(GNU C compiler,GCC)以及所有附帶的工具(make、binutil 和 GDB)都是可用的。如果正在運(yùn)行 Linux,只要通過(guò)使用適用于您分發(fā)版的軟件包管理器來(lái)安裝開發(fā)軟件包。在 Windows平臺(tái)上,將需要安裝 Cygwin 工具箱(請(qǐng)參閱 參考資料以獲得鏈接)。Cygwin 是用于 Windows 的類 UNIX 環(huán)境,它包括 GCC 移植以及所有必需的開發(fā)工具,包括 automake 和 GNU 調(diào)試器(GNU Debugger,GDB)。Cygwin 是在 cygwin1.dll 庫(kù)基礎(chǔ)上構(gòu)建的。Cygwin 的備用解決方案是 Minimalist GNU for Windows(MinGW)(請(qǐng)參閱 參考資料以獲得鏈接)。該工具是一組可免費(fèi)獲取、自由分發(fā)的特定于 Windows 的頭文件和導(dǎo)入庫(kù),這些頭文件和導(dǎo)入庫(kù)與 GNU 工具集(它們?cè)试S您生成不依賴于任何第三方 DLL 的本機(jī) Windows 程序)結(jié)合在一起。如果您想要?jiǎng)?chuàng)建與 POSIX 兼容的 Windows 應(yīng)用程序,那么 MinGW 是最佳選擇。MinGW 甚至可以在 Cygwin 安裝之上工作。 Solaris和 QNX要求您從因特網(wǎng)下載并安裝其特定的 GCC、GNU Make binutils 和 GDB 移植(請(qǐng)參閱 參考資料以獲得鏈接)。

            假設(shè)您安裝了適當(dāng)?shù)?Java SDK/JRE 和 Eclipse 平臺(tái) SDK,并且它們都正常運(yùn)行。CDT 以兩種“方式”可用:穩(wěn)定的發(fā)行版和試運(yùn)行版(nightly build)。試運(yùn)行版未經(jīng)完全測(cè)試,但它們提供了更多的功能并改正了當(dāng)前錯(cuò)誤。安裝之前,請(qǐng)檢查磁盤上是否存在先前版本的 CDT,如果存在,請(qǐng)確保完全除去它。因?yàn)?CDT 沒有可用的卸載程序,所以需要手工除去它。為了檢查先前版本是否存在,轉(zhuǎn)至 CDT 插件所駐留的目錄: eclipse/plugins 。接著,除去所有以 org.eclipse.cdt 名稱開頭的目錄。需要做的最后一件事情是從 workspace/.metadata/.plugins 和 features 除去 CDT 元數(shù)據(jù)目錄 or.eclipse.cdt.* 。

            下一步是下載 CDT 二進(jìn)制文件。注意:請(qǐng)下載適合于您操作系統(tǒng)的正確的 CDT。遺憾的是,即使 CDT 是用 Java 編寫的,它也不是與平臺(tái)無(wú)關(guān)的。接著,將歸檔文件解壓到臨時(shí)目錄中,從臨時(shí)目錄將所有插件目錄內(nèi)容都移到 Eclipse plugins 子目錄。還需要將 features 目錄內(nèi)容移到 Eclipse features 子目錄中。現(xiàn)在,重新啟動(dòng) Eclipse。Eclipse 再次啟動(dòng)之后,更新管理器將告訴您它發(fā)現(xiàn)了更改并詢問(wèn)您是否確認(rèn)這些更改。現(xiàn)在您將能夠看到兩個(gè)可用的新項(xiàng)目:C 和 C++。

            回頁(yè)首

            創(chuàng)建新項(xiàng)目

            在 Eclipse 中安裝 CDT 之后,瀏覽至 File => New => Project,在那里,您將發(fā)現(xiàn)三個(gè)新的可用項(xiàng)目類型:C(“Standard C Make Project”)、C++(“Standard C++ Make Project”)和“Convert to C or C++ Projects”。從“Standard Make C++ Project”開始,為您的項(xiàng)目創(chuàng)建源代碼文件。在 C/C++ Projects 視圖中,單擊鼠標(biāo)右鍵,然后選擇 New => Simple => File。命名您的文件并保存它。您可能會(huì)用這種方法創(chuàng)建許多頭文件以及 C/C++ 實(shí)現(xiàn)代碼文件。最后當(dāng)然是 Makefile,GNU Make 將使用它來(lái)構(gòu)建二進(jìn)制文件。對(duì)該 Makefile 使用常見的 GNU make 語(yǔ)法(請(qǐng)參閱 參考資料)。請(qǐng)記住:Makefile 要求您使用 Tab 字符而不是空格來(lái)產(chǎn)生縮進(jìn)行。

            您通常會(huì)將現(xiàn)有的源代碼導(dǎo)入 Eclipse(請(qǐng)參閱圖 2)。CDT 為執(zhí)行這一操作提供了一種便捷的方法:即使用 Import 向?qū)В瑢⑽募奈募到y(tǒng)目錄復(fù)制到工作臺(tái)。轉(zhuǎn)至主菜單欄,選擇 File => Import => File System。單擊 Next,打開源目錄,選擇您想要添加文件的目錄。單擊 Select All 以選擇目錄中的所有資源,然后從頭到尾檢查,取消選擇您不打算添加的那些資源。指定將作為導(dǎo)入目標(biāo)的工作臺(tái)項(xiàng)目或文件夾。還可以通過(guò)從文件系統(tǒng)拖動(dòng)文件夾和文件并將它們放入 Navigator 視圖中,或者通過(guò)復(fù)制和粘貼來(lái)導(dǎo)入文件夾和文件。

            圖 2. 將現(xiàn)有的源代碼導(dǎo)入 CDT 項(xiàng)目
            圖 2. 將現(xiàn)有的源代碼導(dǎo)入 CDT 項(xiàng)目

            回頁(yè)首

            關(guān)鍵的 CDT IDE 功能

            CDT IDE 是在 CDT UI 插件所提供的通用可擴(kuò)展編輯器基礎(chǔ)上構(gòu)建的。然而,該模塊仍處于開發(fā)階段,所以它仍缺少一些重要的實(shí)用程序,如類瀏覽器或語(yǔ)言文檔瀏覽器。CDT IDE 的主要功能是:

                * 語(yǔ)法突出顯示:CDT IDE 識(shí)別 C/C++ 語(yǔ)法,并為語(yǔ)法突出顯示提供了完全可配置的代碼著色以及代碼格式化功能:


            圖 3. 不成功的編譯之后突出顯示的語(yǔ)法錯(cuò)誤標(biāo)記
            圖 3. 不成功的編譯之后突出顯示的語(yǔ)法錯(cuò)誤標(biāo)記

                * 提綱:Outline 窗口模塊提供了有關(guān)出現(xiàn)在源代碼中的過(guò)程、變量、聲明以及函數(shù)的快速視圖。利用 outline,您可以方便地找到源代碼中的適當(dāng)引用,或者甚至搜索所有項(xiàng)目源代碼。
                * 代碼輔助:這個(gè)代碼完成功能類似于可在 Borland C++ Builder 或 MS Visual Studio 中找到的功能。它使用了 代碼模板,并且只有助于避免愚蠢的語(yǔ)法錯(cuò)誤:


            圖 4. 有助于使用正確的語(yǔ)言語(yǔ)法的代碼輔助功能
            圖 4. 有助于使用正確的語(yǔ)言語(yǔ)法的代碼輔助功能

                * 代碼模板:由代碼輔助功能使用的代碼模板是標(biāo)準(zhǔn) C/C++ 語(yǔ)言語(yǔ)法結(jié)構(gòu)的定義。您也可以定義自己的代碼模板來(lái)擴(kuò)展您自己的快捷鍵,如用于 author 或 date 關(guān)鍵字的快捷鍵。在 Window => Preferences => C/C++ => Code Templates 中,可以添加新模板并查看完整的模板列表。也可以將模板作為 XML 文件導(dǎo)出和導(dǎo)入。

            圖 5. 預(yù)定義的 C/C++ 代碼模板
            圖 5. 預(yù)定義的 C/C++ 代碼模板

                * 代碼歷史記錄:即使您沒有使用 CVS 或其它源代碼版本管理軟件,也可以跟蹤項(xiàng)目源代碼中的本地更改。在選擇的文件上單擊鼠標(biāo)右鍵,從上下文菜單選擇 Compare With => Local History...:


            圖 6. 用 Local History 功能檢查源代碼中的更改
            圖 6. 用 Local History 功能檢查源代碼中的更改

            回頁(yè)首

            構(gòu)建并運(yùn)行項(xiàng)目

            CDT 提供了一種設(shè)置項(xiàng)目構(gòu)建選項(xiàng)的簡(jiǎn)單方法。CDT 依賴于三個(gè) GNU 工具:GCC、GDB 和 Make。因此,對(duì)用于調(diào)試的 GDB 或用于編譯的 GCC 和 Make 的依賴要求這些應(yīng)用程序可用于用戶想要使用的平臺(tái)。大多數(shù) Linux(通常和類 POSIX)源代碼軟件包使用 autoconf 腳本來(lái)檢查構(gòu)建環(huán)境,所以您必需運(yùn)行 configure 命令,該命令在編譯之前創(chuàng)建“Makefile”。CDT 沒有提供編輯 autoconf 腳本的方法,所以必需手工編寫它們;然而,您可以配置構(gòu)建選項(xiàng)以在編譯之前調(diào)用 configure 命令。

            如果通過(guò)調(diào)用 make 命令來(lái)構(gòu)建項(xiàng)目,那么缺省設(shè)置沒問(wèn)題,但是,如果使用一種更復(fù)雜的方法進(jìn)行構(gòu)建,則必需在 Build Command 文本框中輸入適當(dāng)?shù)拿睿ɡ纾?make -f make_it_all )。接下來(lái),在 C/C++ Projects 視圖中,選擇 C/C++ project,然后單擊鼠標(biāo)右鍵并選擇 Rebuild Project。所有來(lái)自 make、編譯器和鏈接程序的編譯消息都被重定向到控制臺(tái)窗口:

            圖 7. 帶編譯器輸出的控制臺(tái)窗口
            圖 7. 帶編譯器輸出的控制臺(tái)窗口

            編譯成功之后,您或許想要運(yùn)行您的應(yīng)用程序。所有用于運(yùn)行和調(diào)試的選項(xiàng)都位于主 Eclipse 菜單的 Run 菜單下。然而,必須在早期定義用于運(yùn)行項(xiàng)目的選項(xiàng)。可以通過(guò)轉(zhuǎn)至主菜單(在那里,有用于運(yùn)行應(yīng)用程序的不同概要文件)中的 Run... 選項(xiàng)來(lái)完成這一步;例如,可以將一個(gè)概要文件用于測(cè)試目的,而將另一個(gè)概要文件用于運(yùn)行最終版本。另外,可以定義希望要傳遞給應(yīng)用程序的參數(shù),或者可以設(shè)置環(huán)境變量。其它選項(xiàng)用于設(shè)置調(diào)試選項(xiàng),例如使用哪個(gè)調(diào)試器(GNU GDB 或 Cygwin GDB)。圖 8 顯示了正在為項(xiàng)目創(chuàng)建運(yùn)行概要文件(run profile)。

            圖 8. 為項(xiàng)目創(chuàng)建運(yùn)行概要文件
            圖 8. 為項(xiàng)目創(chuàng)建運(yùn)行概要文件

            當(dāng)進(jìn)入 C/C++ Projects 視圖,選擇您的項(xiàng)目,單擊鼠標(biāo)右鍵并在 Build Settings 選項(xiàng)卡上選擇 Properties 之后,就可以使用更多的用于構(gòu)建項(xiàng)目的常用選項(xiàng)。這些選項(xiàng)主要影響因遇到編譯錯(cuò)誤而使構(gòu)建停止時(shí)所發(fā)生的情況。

            回頁(yè)首

            調(diào)試 C/C++ 項(xiàng)目

            CDT 擴(kuò)展了標(biāo)準(zhǔn)的 Eclipse Debug 視圖,使之具備了調(diào)試 C/C++ 代碼的功能。Debug 視圖允許您在工作臺(tái)中管理程序的調(diào)試或運(yùn)行。要開始調(diào)試當(dāng)前項(xiàng)目,只要切換到 Debug 視圖,您將能夠在代碼中設(shè)置(并在執(zhí)行過(guò)程中隨時(shí)更改)斷點(diǎn)/監(jiān)測(cè)點(diǎn)并跟蹤變量和寄存器。Debug 視圖顯示正在調(diào)試的每個(gè)目標(biāo)的暫掛線程的堆棧框架。程序中的每個(gè)線程都作為樹中的一個(gè)節(jié)點(diǎn)出現(xiàn),Debug 視圖顯示正在運(yùn)行的每個(gè)目標(biāo)的進(jìn)程。

            Eclipse 通過(guò) CDT 調(diào)試 MI(CDT Debug MI)插件(其組件之一)支持與機(jī)器接口(Machine Interface,MI)兼容的調(diào)試器。但 MI 調(diào)試器究竟是什么呢?通常情況下,象 ddd 和 xxgdb(請(qǐng)參閱 參考資料以獲得鏈接)之類的第三方 GUI 調(diào)試器在實(shí)現(xiàn)調(diào)試功能時(shí)都依賴于 GDB 的命令行接口(Command Line Interface,CLI)。遺憾的是,經(jīng)過(guò)證實(shí)該接口非常不可靠。GDB/MI 提供了一種新的面向機(jī)器的接口,它非常適合于想要直接解析 GDB 輸出的程序。

            回頁(yè)首

            結(jié)束語(yǔ)

            C/C++ 開發(fā)工具箱(CDT)提供了一組功能強(qiáng)大的插件,這些插件可以幫助您用 Eclipse 開發(fā) C/C++ 應(yīng)用程序。雖然 CDT 仍處于開發(fā)階段,但您可以利用其現(xiàn)有的諸多功能。

            參考資料

                * 您可以參閱本文在 developerWorks 全球站點(diǎn)上的 英文原文.

                * 請(qǐng)加入 Eclipse 平臺(tái)社區(qū),并從 eclipse.org下載該平臺(tái)。Eclipse 平臺(tái)源代碼是根據(jù) Common Public License 特許的。在 eclipse.org 上,您還將找到有關(guān) Eclipse 項(xiàng)目的術(shù)語(yǔ)詞匯表和描述,以及技術(shù)文章和新聞組。Eclipse 平臺(tái)白皮書詳細(xì)描述了 Eclipse 的主要組件和功能。

             

                * 從 eclipse.org 下載 CDT 項(xiàng)目的組件。

             

                * 請(qǐng)?jiān)L問(wèn) eclipse.org 上的 新聞組,以獲取與 C/C++ 插件相關(guān)的技術(shù)討論和問(wèn)題。

             

                * 開發(fā)人員可以通過(guò)為該項(xiàng)目中每個(gè)組件所創(chuàng)建的 開發(fā)人員郵件列表(developer mailing lists)來(lái)參與和 C/C++ IDE 實(shí)現(xiàn)相關(guān)的討論。

             

                * CDT 項(xiàng)目使用 bugzilla 作為其錯(cuò)誤和功能跟蹤系統(tǒng)。在 Eclipse bugzilla 頁(yè)上輸入錯(cuò)誤/功能報(bào)告與填寫 Web 表單一樣簡(jiǎn)單。

             

                * 有關(guān) Eclipse 平臺(tái)及其工作原理的入門文章,請(qǐng)參閱由 Greg Adams 和 Marc Erickson 合著的 developerWorks文章“ Working the Eclipse Platform”。

             

                * 要開始使用 Eclipse 平臺(tái)開發(fā)應(yīng)用程序,請(qǐng)參閱由 David Gallardo 撰寫的 developerWorks文章“ Getting started with the Eclipse Platform”。

             

                * 如果您有興趣創(chuàng)建自己的 Eclipse 插件,請(qǐng)參閱由 David Gallardo 撰寫的 developerWorks文章“ 開發(fā) Eclipse 插件”。

             

                * 從 Red Hat 下載 Cygwin 工具箱。

             

                * 從 MinGW.org 下載 MinGW 工具箱。

             

                * 在 gnu.org 上學(xué)習(xí)有關(guān) GNU make 語(yǔ)法的更多知識(shí)。

             

                * 從 gnu.org 下載 dddGUI 調(diào)試器。

             

                * 下載 xxgdbGUI 調(diào)試器。

             

                * 請(qǐng)?jiān)L問(wèn) WebSphere Studio Plug-in Central,以獲取已被驗(yàn)證為“Ready for WebSphere Studio Software”的插件的目錄。

             

                * 學(xué)習(xí) IBM WebSphere Studio 工具的一個(gè)擴(kuò)展,它提供了有助于您使用這些工具的信息和工具。由于所有 WebSphere Studio 工具都基于 WebSphere Studio 工作臺(tái)(WebSphere Studio Workbench),而工作臺(tái)基于 Eclipse 框架,所以很容易通過(guò)使用 Eclipse 幫助擴(kuò)展功能來(lái)擴(kuò)展產(chǎn)品文檔。請(qǐng)參閱文章“ Adding Self-Help Support to WebSphere Studio Tools by Extending their Eclipse Help Systems”。

             

                * 請(qǐng)?jiān)?developerWorks上查找更多的 Eclipse 用戶參考資料。

             

            關(guān)于作者

            Pawel Leszek 是 Studio B 的一位作家,他是一位專長(zhǎng)于 Linux/Win/Mac OS 系統(tǒng)體系結(jié)構(gòu)和管理的獨(dú)立軟件顧問(wèn)和作家。他具有許多操作系統(tǒng)、編程語(yǔ)言和網(wǎng)絡(luò)協(xié)議方面的經(jīng)驗(yàn),尤其是 Lotus Domino 和 DB2 方面的經(jīng)驗(yàn)。Pawel 還是 LinuxWorld上一系列文章的作者,以及 PC World波蘭版的 Linux 專欄作家。Pawel 和他的妻子以及可愛的小女兒住在華沙。歡迎提問(wèn)并提出意見;您可以直接給作者發(fā)電子郵件( pawel.leszek@ipgate.pl)。

            posted on 2010-11-02 01:00 小王 閱讀(396) 評(píng)論(0)  編輯 收藏 引用 所屬分類: linux
            一本大道久久东京热无码AV| 精产国品久久一二三产区区别| 91精品国产91久久久久久| 国产成人精品久久一区二区三区av| 国产精品伊人久久伊人电影| 久久午夜免费视频| 久久国产乱子伦精品免费强| 免费一级欧美大片久久网| 九九精品99久久久香蕉| 久久嫩草影院免费看夜色| 国产三级久久久精品麻豆三级| 久久久久亚洲精品天堂久久久久久| 97久久国产综合精品女不卡| 青青草原综合久久大伊人精品| 久久久久亚洲av综合波多野结衣| 精品久久香蕉国产线看观看亚洲| 久久91精品国产91| 国产成人综合久久久久久| 久久婷婷五月综合97色一本一本| 久久久久国产| 久久久久久久尹人综合网亚洲| 久久精品国产亚洲AV蜜臀色欲| 国产成人综合久久久久久| 国产精品无码久久久久久| 久久精品久久久久观看99水蜜桃| 久久久青草青青国产亚洲免观| 久久99国产精品久久99| 婷婷久久久亚洲欧洲日产国码AV| 香蕉99久久国产综合精品宅男自 | 91性高湖久久久久| 亚洲中文字幕无码久久综合网 | 久久偷看各类wc女厕嘘嘘| 久久青青草视频| 婷婷久久五月天| 亚洲va久久久久| 2019久久久高清456| 思思久久99热免费精品6| 久久久久亚洲精品天堂久久久久久| 99久久精品国产综合一区 | 久久久久亚洲av综合波多野结衣| 久久人人爽人人爽人人片AV东京热|