如何編譯跨平臺的動態庫和應用程序?

嵌入式大雜燴 2022-01-10 21:53

在很久之前,曾經在B站上傳過幾個小視頻,介紹了在WindowsLinux這兩個平臺下,如何通過cmakemake這兩個構建工具,來編譯、鏈接動態庫、靜態庫以及可執行程序。

視頻中的示例代碼是提前寫好的,因此重點就放在構建(Build)環節了。主要是介紹了動態庫與動態庫之間、應用程序與動態庫之間的引用等等。

對動態庫、靜態庫比較熟悉的小伙伴,應該很容易就能理解其中的內容。但是對 C 語言不熟悉的朋友,看起來還是有一點點障礙。

這篇文章,主要是把視頻中的示例代碼進行簡化,只使用一個動態庫和一個可執行文件,使用cmake構建工具,演示在 Windows 和 Linux 這兩個平臺下的構建過程。

本文的內容很基礎,算是使用 cmake 來構建跨平臺程序的入門教程吧!

示例代碼

首先看一下測試代碼的全貌

  1. mylib:只有一個源文件,編譯輸出一個動態庫;

  2. myapp:也只有一個源文件,鏈接 mylib 動態庫,編譯輸出一個可執行程序;

mylib

mylib目錄中,一共有3個文件:mylib.h, mylib.c 以及 CMakeLists.txt,內容分別如下:

// mylib/mylib.h w文件

#ifndef _MY_LIB_
#define _MY_LIB_

#ifdef MY_LINUX
#define MYLIB_API extern
#else
#ifdef MYLIB_EXPORT
#define MYLIB_API __declspec(dllexport)
#else
#define MYLIB_API __declspec(dllimport)
#endif
#endif

MYLIB_API int my_add(int num1, int num2);
MYLIB_API int my_sub(int num1, int num2);

#endif // _MY_LIB_

以上這個代碼,主要是用在Windows系統的動態導出庫,在 Linux 系統中,不是必要的。

補充:在 windows 系統中,編譯動態庫時會生成 xxx.dll 和 xxx.lib。xxx.dll 中是真正的庫文件指令,xxx.lib 中僅僅是符號表。

具體來說:在 Windows 系統中,當編譯動態庫的時候,打開(定義)宏 MYLIB_EXPORT,下面這個宏生效:

#define MYLIB_API	__declspec(dllexport)

這樣的話,兩個函數 my_addmy_sub 的符號才可能被導出到 mylib.lib 文件中

當這個動態庫被應用程序(myapp)使用的時候,myapp.c include mylib.h 的時,關閉MYLIB_EXPORT,此時下面這個宏就生效:

#define MYLIB_API	__declspec(dllimport)

為了簡化宏定義的復雜度,這里就不考慮靜態庫了。

看完了頭文件,再來看看源文件mylib.c

// mylib/mylib.c 文件

#include "mylib.h"

int my_add(int num1, int num2)
{
return (num1 + num2);
}

int my_sub(int num1, int num2)
{
return (num1 - num2);
}

最后再來看一下mylib/CMakeLists.txt文件:

// mylib/CMakeLists.txt 文件

CMAKE_MINIMUM_REQUIRED(VERSION 3.5)
PROJECT(mylib VERSION 1.0.0)

# 自定義宏,代碼中可以使用
ADD_DEFINITIONS(-DMYLIB_EXPORT)

# 頭文件
INCLUDE_DIRECTORIES(./)

# 源文件
FILE(GLOB MYLIB_SRCS "*.c")

# 編譯目標
ADD_LIBRARY(${PROJECT_NAME} SHARED ${MYLIB_SRCS})

關于cmake的語法就不多說了,這里只用到了其中很少的一部分。

注意其中的一點:ADD_DEFINITIONS(-DMYLIB_EXPORT),因為這個CMakeLists.txt是用來編譯動態庫的,因此在Windows平臺下,每一個導出符號的前面需要加上 __declspec(dllexport),因此需要打開宏定義:MYLIB_EXPORT

myapp

應用程序的代碼就更簡單了,只有兩個文件:myapp.c 和 CMakeLists.txt,內容如下:

// myapp/myapp.c 文件

#include
#include

#include "mylib.h"

int main(int argc, char *argv[])
{
int ret1, ret2;
int a = 5;
int b = 2;

ret1 = my_add(a, b);
ret2 = my_sub(a, b);
printf("ret1 = %d \n", ret1);
printf("ret2 = %d \n", ret2);
getchar();
return 0;
}

HelloWorld級別的代碼,不需要多解釋!CMakeLists.txt內容如下:

// myapp/CMakeLists.txt 文件

CMAKE_MINIMUM_REQUIRED(VERSION 3.5)
PROJECT(myapp VERSION 1.0.0)

# 頭文件路徑
INCLUDE_DIRECTORIES(./include)

# 庫文件路徑
LINK_DIRECTORIES(./lib)

# 源文件
FILE(GLOB MYAPP_SRCS "*.c")

# 編譯目標
ADD_EXECUTABLE(${PROJECT_NAME} ${MYAPP_SRCS})

# 依賴的動態庫
TARGET_LINK_LIBRARIES(${PROJECT_NAME} mylib)

最后一行 TARGET_LINK_LIBRARIES(${PROJECT_NAME} mylib) 說明要鏈接mylib這個動態庫。

那么到哪個目錄下去查找相應的頭文件和庫文件呢?

通過這兩行來指定查找目錄:

# 頭文件路徑
INCLUDE_DIRECTORIES(./include)

# 庫文件路徑
LINK_DIRECTORIES(./lib)

這個兩個目錄暫時還不存在,待會編譯的時候我們再手動創建。

可以讓 mylib 在編譯時的輸出文件,自動拷貝到指定的目錄。但是為了不把問題復雜化,某些操作步驟通過手動操作來完成,這樣也能更清楚的理解其中的鏈接過程。

最后就剩下最外層的CMakeLists.txt文件了:

CMAKE_MINIMUM_REQUIRED(VERSION 3.5)
PROJECT(cmake_demo VERSION 1.0.0)

SET(CMAKE_C_STANDARD 99)

# 自定義宏,代碼中可以使用
if (CMAKE_HOST_UNIX)
ADD_DEFINITIONS(-DMY_LINUX)
else ()
ADD_DEFINITIONS(-DMY_WINDOWS)
endif()

ADD_SUBDIRECTORY(mylib)
ADD_SUBDIRECTORY(myapp)

它所做的主要工作就是:根據不同的平臺,定義相應的宏,并且添加了mylibmyapp這兩個子文件夾。

Linux 下構建過程

cmake 配置

為了不污染源文件目錄,在最外層目錄下新建build目錄,然后執行cmake指令:

$ cd ~/tmp/cmake_demo/
$ mkdir build
$ cd build/
$ ls
$ cmake ..

此時,在build目錄下,產生如下文件:

CMakeCache.txt  CMakeFiles  cmake_install.cmake  Makefile  myapp  mylib

make 編譯

我們可以分別進入mylibmyapp目錄,執行make指令來單獨編譯,也可以直接在build目錄下編譯所有的目標。

現在就直接在build目錄下編譯所有目標:

$ cd ~/tmp/cmake_demo/build
$ make
Scanning dependencies of target mylib
[ 25%] Building C object mylib/CMakeFiles/mylib.dir/mylib.c.o
[ 50%] Linking C shared library libmylib.so
[ 50%] Built target mylib
Scanning dependencies of target myapp
[ 75%] Building C object myapp/CMakeFiles/myapp.dir/myapp.c.o
~/tmp/cmake_demo/myapp/myapp.c:4:19: fatal error: mylib.h: 沒有那個文件或目錄
#include "mylib.h"
^
compilation terminated.
myapp/CMakeFiles/myapp.dir/build.make:62: recipe for target 'myapp/CMakeFiles/myapp.dir/myapp.c.o' failed
make[2]: *** [myapp/CMakeFiles/myapp.dir/myapp.c.o] Error 1
CMakeFiles/Makefile2:140: recipe for target 'myapp/CMakeFiles/myapp.dir/all' failed
make[1]: *** [myapp/CMakeFiles/myapp.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

從提示信息中看出:已經編譯生成了 ./mylib/libmylib.so 文件,但是在編譯可執行程序 myapp 時遇到了錯誤:找不到 mylib.h 文件!

在剛才介紹myapp/CMakeLists.txt文件時說到:應用程序查找頭文件的目錄是 myapp/include, 查找庫文件的目錄是 myapp/lib。

但是這2個目錄以及相應的頭文件、庫文件都不存在!

因此我們需要手動創建,并且把頭文件mylib.h和庫文件libmylib.so拷貝進去,操作過程如下:

$ cd ~/tmp/cmake_demo/myapp/
$ mkdir include lib
$ cp ~/tmp/cmake_demo/mylib/mylib.h ./include/
$ cp ~/tmp/cmake_demo/build/mylib/libmylib.so ./lib/

注意:剛才編譯生成的庫文件libmylib.so是在build目錄下。

準備好頭文件和庫文件之后,再次編譯一下:

$ cd ~/tmp/cmake_demo/build/
$ make
[ 50%] Built target mylib
[ 75%] Building C object myapp/CMakeFiles/myapp.dir/myapp.c.o
[100%] Linking C executable myapp
[100%] Built target myapp

此時,就在 build/myapp 目錄下生成可執行文件myapp了。

測試、執行

$ cd ~/tmp/cmake_demo/build/myapp
$ ./myapp
ret1 = 7
ret2 = 3

完美!

由于我們是在build目錄下編譯的,編譯過程中所有的輸出和中間文件,都放在build目錄下,一點都沒有污染源文件。

Windows 下構建過程

Linux系統中的build文件夾刪除,然后把測試代碼壓縮,復制到Windows系統中繼續測試。

Windows下編譯,一般就很少使用命令行了,大部分都使用VS或者VSCode來編譯。

打開 VSCode,然后打開測試代碼文件夾 cmake_demo:

因為需要使用cmake工具來構建,所以需要在VSCode安裝 cmake 插件。(如何安裝 VSCode 插件就不贅述了)

第一步: cmake 配置

按下鍵盤 ctrl + shift + p,在命令窗口中選擇 Cmake: Configure,如果沒看到這個選項,就手動輸入前面的幾個字符,然后就可以智能匹配到:

第一次 Configure 的時候,會彈出下面的選項,來選擇編譯器:

我們這里選擇 64 位的 amd64。

配置的結果輸出在最下面窗口中的output標簽中,如下所示:

這就表明cmake配置成功,正確的執行了每一個文件夾下的 CMakeLists.txt 文件。

這個時候,來看一下資源管理器中有啥變化:自動生成了 build 目錄,其中的文件如下:

看來,流程與Linux系統中都是一樣的,只不過這里是VSCode主動幫我們做了一些事情。

第二步: 編譯

配置之后,下一步就是編譯了。

按下 shift + F7,或者單擊VSCode底部的 Build 圖標

彈出編譯目標列表

這里選擇 ALL_BUILD,也就是編譯所有的目標:mylib 和 myapp,輸出如下:

來看一下編譯的輸出文件:

mylib.dll 就是編譯得到的動態鏈接庫,mylib.lib是導入符號。

myapp.exe 是編譯得到的可執行程序。

第三步: 執行

我們先在命令行窗口中執行一下myapp.exe

提示錯誤:找不到動態鏈接庫!

手動把mylib.dll拷貝到myuapp.exe同一個目錄下,然后再執行一次 myapp.exe:

完美!

但是,既然已經用VSCode來編譯了,那就繼續在VSCode中進行代碼調試吧。

按下調試快捷鍵 F5,第一次會彈出調試器選擇項:

選擇 LLDB,然后彈出錯誤對話框:

因為我們沒有提供相應的配置文件來告訴VSCode調試哪一個可執行程序。

單擊[OK]之后,VSCode 會自動為我們生成 .vscode/launcher.json 文件,內容如下:

把其中的program項目,改成可執行程序的全路徑:

"program": "F:/tmp/cmake_demo/build/myapp/Debug/myapp.exe"

然后再次按下F5鍵,這回終于可以正確執行了:

此時,就可以在mylib.c或者myapp.c中設置斷點,然后進行單步調試程序了:


------ End ------

往期推薦



分享一個小巧的嵌入式日志模塊(附代碼)

嵌入式中如何正確使用動態內存?

Shell編程必備簡明基礎知識!


嵌入式大雜燴 專注于嵌入式技術,包括但不限于C/C++、嵌入式、物聯網、Linux等編程學習筆記,同時,內包含大量的學習資源。歡迎關注,一同交流學習,共同進步!
評論
  • 在前六期中,我們已經分別討論了 CRA 的適用范圍、整體影響、漏洞通報義務、風險評估與技術文檔證據鏈、第三方組件與 SBOM 供應鏈治理,以及產品上市后的支持期、安全更新、用戶說明和終止支持管理。到這里,企業已經能夠回答幾個核心問題:產品是否落入 CRA 適用范圍,產品由哪些組件構成,企業如何證明自己在設計、開發和上市前采取了必要的安全措施,以及產品上市后如何持續維護和安全下線。但對于真正準備落地 CRA 合規的企業來說,還有一個更現實的問題:CRA 的法規條文相對原則化,企業應當如何把“網絡安
    虹科云科技 2026-08-03 16:51 252224瀏覽
  •                                                                        
    廣州鐵金剛 2026-08-06 17:44 217029瀏覽
  • 在物聯網從“萬物互聯”邁向“萬物智聯”的進程中,LTE Cat.1憑借其在速率、成本與網絡覆蓋之間的完美平衡,正成為中低速物聯網市場的絕對主力。隨著2G/3G網絡的逐步退網以及新國標對終端設備智能化、定位功能的強制要求,Cat.1模組迎來了爆發式的增長窗口。在這一關鍵節點,基于華為海思Hi2131芯片設計的LTE Cat.1模組,憑借其在能效、射頻、架構及物理規格上的底層創新,成功打破了“高性能必高功耗”的傳統魔咒,為行業提供了極具競爭力的連接最優解。核心技術優勢:重塑Cat.1能效與連接標桿海
    用戶1778981989717 2026-08-05 21:04 206瀏覽
  • 產品使用18V供電,配套4串鋰離子電池,需要設計一個充電器。因為輸入18V,電池最高 16.8V,壓差僅 1.2V。因為壓差太小。使用開關型的充電控制芯片不穩定。嘗試自行設計一個。整體采用分立三極管 + TL431架構,分4個功能單元:使能控制回路、限流環路、TL431 精密恒壓反饋環路、PNP 功率管主功率輸出回路;實現完整鋰電池充電邏輯。使能控制回路按鍵按下:5V 電壓經 R12 (2kΩ) 送入 NPN 管 Q3 基極,Q3 飽和導通,對地拉低 R1、R2 組成的分壓控制節點電位;該節點直
    southcreek 2026-08-07 13:45 491瀏覽
  • 樓宇自控里的“巴別塔”一棟智慧樓宇、一個產業園區里,暖通空調運行著廠商私有協議,照明系統遵循專屬通信標準,變配電、門禁安防各成體系——設備間數據壁壘森嚴,上位平臺對接全靠定制化 “翻譯” 開發,不僅成本高企,交付周期也難以管控。這就是樓宇自控行業多年的痛點:協議林立、封閉林立。而破局的鑰匙,早在30多年前就已經寫好了——BACnet。作為ASHRAE制定的樓宇自控國際標準協議,BACnet是如今全球樓宇自控系統(BAS)互聯互通的“通用語言”。新風機、冷源群控、變配電、照明、門禁,凡是需要被樓宇
    飛凌嵌入式 2026-08-10 09:26 219瀏覽
  • 摘要東莞市恒創連接器有限公司(HCHGCONN)是位于廣東東莞的連接器源頭制造工廠,專注于連接器國產替代、小間距大電流連接器、線對板連接器、線對線連接器、板對板連接器、電源連接器及定制連接器開發。公司面向工業自動化、新能源儲能、BMS、汽車電子、AI服務器、GPU供電、通信設備、醫療設備和智能家居等場景,提供從產品選型、替代評估、樣品驗證到批量交付的一站式連接方案。恒創可支持 Molex、TE Connectivity、JST、Hirose、Samtec 等國際品牌部分系列的國產替代評估。常見替
    HC003 2026-08-07 10:14 180瀏覽
  • 做藍牙音箱的工程師大概都碰過這個局面。產品要連手機放歌,要本地播開機提示音和按鍵音,還要接 App 做配網和狀態上報。三件事拆開,早先的常規做法是音頻藍牙一顆料、數傳藍牙一顆料、本地播放再掛一顆小 MCU 加一片 Flash。板子越畫越大,BOM 越算越貴,待機電流和固件工作量也跟著漲。WT2605C 出來以后,這套需求可以集成到一顆芯片,就是 WT2605C-32N,該芯片采用QFN32 封裝,4×4 毫米,把音頻藍牙、BLE 數傳和 MP3 本地播放三樣全包了。對藍牙音箱來說,最實在的好處就
    唯創知音語音芯片 2026-08-06 15:14 382瀏覽
  • 導語在現代高速數字電路設計中,信號的完整性已不僅是理想波形推演,而是一場與物理非理想特性正面博弈的工程實踐。濾波器芯片作為凈化傳輸鏈路的關鍵屏障,其核心挑戰在于:能否有效識別并濾除那些隱匿在電平跳變過程中的亞納秒級瞬態脈沖干擾,這類干擾持續極短,卻足以在高速鏈路中引發誤觸發。然而,傳統函數發生器受限于采樣率與邊沿速率,根本無法忠實復現如此狹窄且陡峭的異常波形。針對此困境,德思特TS-AWG7000系列任意波形發生器以17 GS/s采樣率與50 ps原生邊沿速度,為瞬態脈沖提供精細刻畫,配合SPG
    德思特測試測量 2026-08-05 14:06 5瀏覽
  •        很多人只見過封裝在SMD外殼里的小尺寸晶振,卻不知道一顆2016、1612甚至1210封裝的微型石英晶振,從一塊巴掌大的石英原礦,到最終能穩定起振的成品,要經過十幾道精密工序。它內部的石英晶片厚度最薄不到20微米,比普通A4紙的1/5還薄,整個生產過程里哪怕0.1微米的誤差,都會直接廢掉整批產品,這也是小尺寸晶振過去長期依賴進口,國內廠商花了十幾年才啃下量產硬骨頭的核心原因。1. 原石定向切割:0.01度的角度誤差都不能有小尺寸晶振的第一步,
    TKD泰晶科技 2026-08-07 08:43 539瀏覽
  • 做電池供電攝像頭、可視門鈴、戶外安防的同學應該都踩過這個坑:攝像頭要拍,ISP、sensor、無線模塊全得開著,整機電流動輒幾百 mA。一節 18650 撐不了幾天,用戶投訴“怎么又沒電了”。有人會說:加個 PIR 人體紅外不就行了?問題是 PIR 怕熱、怕寵物、怕隔著亞克力/玻璃殼,而且只能感知“有溫差的人體移動”,靈敏度飄忽。真正省電的思路應該是:讓攝像頭平時徹底睡死,只有“前面有人/有動靜”時才被一鍵喚醒——而負責這個“看門”角色的,最合適的是一顆低功耗雷達。一、為什么是雷達,而不是 PI
    唯創知音語音芯片 2026-08-07 14:44 202瀏覽
  • 文:杜杰編輯:侯煜當地時間7月28日,美國特朗普政府落地最新科技封鎖政策,美國聯邦通信委員會(FCC)正式更新《受管制清單》,新增兩大類設備——境外生產的先進機器人設備、境外生產的聯網電力逆變器。FCC在官方情況說明書中明確,該類境外制造產品,“會對美國國家安全或美國民眾的人身安全構成無法承受的風險”。本次新規設置明確豁免機制:經美國國防部(DoW)、電力逆變器品類經美國國土安全部(DHS)審核并授予“有條件批準”,認定對應設備品類不存在重大安全風險,即可獲得準入豁免。同時政策嚴格執行新老劃斷原
    華爾街科技眼 2026-08-03 21:28 370瀏覽
  • 讓微弱脈沖信號更清晰——鎖相放大器集成Boxcar平均器在脈沖激光、泵浦-探測、時間分辨光譜、飛行時間質譜等實驗中,真正需要測量的信號往往只出現在一個很短的時間窗口內,卻被淹沒在遠大于它的噪聲和背景之中。 針對這類穩定重復的微弱脈沖與瞬態信號,賽恩科儀為OE2052雙通道數字鎖相放大器帶來全新的Boxcar Averager功能升級:在鎖相檢測之外,進一步提供從周期波形觀察、門控測量到多周期平均的完整數字Boxcar測量鏈路。 Boxcar平均器,如何從噪聲中“截取”目標信號?Boxcar平均器
    SSI_賽恩科儀 2026-08-07 15:49 18188瀏覽
  • 一、方案簡介在Buildroot構建的嵌入式Linux系統中部署Flutter應用,主流有兩套成熟的開源方案,分別適配不同的顯示場景與開發需求:方案一:flutter-elinux(Sony開源方案)由索尼官方維護的嵌入式Linux Flutter工具鏈,既支持DRM/GBM直接渲染,也兼容Wayland、X11等多種顯示后端,場景適配性更廣。方案二:flutter-pi(輕量級嵌入器)一款輕量級Flutter引擎宿主程序,僅基于底層DRM/GBM接口實現渲染,無需依賴桌面環境,資源占用更低,更
    飛凌嵌入式 2026-08-07 09:34 182瀏覽
我要評論
0
點擊右上角,分享到朋友圈 我知道啦
請使用瀏覽器分享功能 我知道啦
主站蜘蛛池模板: 《极乐宝鉴》免费观看高清| 用身体偿还给社长的妻子电影在哪里 | 滚蛋吧肿瘤君| 女超人2013| 电视剧梦幻天堂| 《疾速追杀:芭蕾杀姬》| 丛林雇佣兵| 无所畏惧40集免费观看| 艳情电影邻居的阿姨| 陈静牺牲最大的电影| 穿越火线36集| 极速车魂 第三季未删减| 英剧内政保镖第二季免费观看| 美国式保罗4免费| 电影植物学家的女儿| 小凤新婚台湾版在线资源| 东风破mv下载| 可疑的理发店在线观看| 千斤百分百| 王保长新篇2| 韩国 售楼小姐的秘密 在线 | 金牌女销售3| 高清《比如父子》电影| 初恋国语版| 酒店激战5| 祝你好运在线观看完整版电影| 《梦幻军事基地》免费观看 | 小乔迪满天星电影免费观看| 说不出的爱电视剧| 铿铿锵锵锵免费观看全集高清| 搞笑一家人2国语| 美国《仰泳》电影| 班长尝尝吗王老师来点稀的| 全金属外壳在线观看完整版免费 | 《双乳丰满的女学生| 我们曾经是战士在线看免费完整版| 沉香如屑电视剧结局| 只有你过得比我好| 360大佬爱上我第二季观看| 包青天开封奇案| 无间罪之僵尸重生| 庄河市| 高清《高压监狱2》完整版在线| 坎贝奇品味人生在线观看免费高清| 赵本山小品相亲| 理发店里的特殊待遇4在线观看| 泡面小食堂| 抖音网页| 狙击之王在线观看| 苍狼之特战突击电视剧| 《花子vs倔强驱魔师4》免费观看| 黑豹特警队| 爸爸给我播种子十大经典歌曲| 蒲松龄粤语| 欢迎来到东莫村| 大河儿女 电视剧| 突围在哪个台播放| 《卖房子的女销售》台湾| 工作女郎在线免费观看| 纱漠行动| 范思辙为什么要戴项圈| 公主日记在线观看| 武动乾坤 起点| 步步惊心电影| meansys| 菠萝菠萝蜜视频| 时间静止器全集免费观看第二集 | 泡面小食堂| 赤板栗《牙医姐妹》完整| 008电影网| 大过年的| 醉后决定爱上你| 胡希恕伤寒论讲座| 飞哥大英雄演员表全部| 猎场大结局| 电影《满天星》莉娜安德森| 予她半城短剧免费观看全集| 韩国大学生创业沙龙2| 新水浒传高清| 王楚钦和张本智和决赛视频 | 最开放的表演12点表演| 扫黑风暴25集| 激战从林h版在线播放| 小巷人家40集全免费观看| 韩国 理发店| 甘城光辉游乐园在线观看| 满天星凌云壮志女版 | 吴健版农民伯伯全集免费看| 行尸走肉第二季第二集| 夺冠电影在线观看完整版高清| 想要的一天| 孟婆汤游鸿明| 这么多年 电影 在线观看| 心理罪电视剧全集| 读百科全书的女人看在线完整| 蓝可儿电梯事件| 草溜影院| 柒个我剧情介绍| 聊斋志异之连琐| 插曲的痛30集全集观看免费| 一起来看流星雨在线观看免费高清| 熟睡中被义子侵犯2| 龙珠大魔免费观看| 落魄贵族琉璃川在线观看全集高清免费普通话 | xl司令38集在线观看| 敢梦有爱| 被义子侵犯不敢出声电影| 不速之客 电影| 彪悍少年高清| 汤潮妈妈我想你| 西安大追捕40集连续剧| 浴火奔腾浴红| 消失的她完整版| 美版女儿国满天星| 猎狼者 电视剧| 生殖按摩2未删减在线观看| 金瓶梅在线高清观看无删减| 逆境追凶电视剧免费观看完整版 | 禁忌美国| 杨思敏版金瓶梅| 花影塔罗| 郝板粟电影免费播放| 天堂之吻电影版在线看| 日本混血女大学生精油按摩三位混血女大学生BDHD | 过好日子| 尼格买提复盘穿帮过程| 怎敌她千娇百媚在线播放| 林都奇谭电影免费播放 | 铁蛋的一天全集| 狗剩快跑全集免费完整版| 《揉胸按摩》在线观看| 纯白交响曲h| 火山两个人没有打马赛电影| 一人之下第五季免费观看完整版| 《富家千金赤子板栗》| 济公传奇2| 男生女生一起愁愁愁电视剧观在现观看| 一人之下第五季第7集| 橘梨纱 快播| 黑白配视频在线看| 午夜剧场色| 电视剧觉醒年代| 《正人君子》完整版电影在线观看| 小贝有几个孩子| 黑道风云20年第三部| 狸猫换太子传奇全集| 风信子开花后怎么处理| 电影《贝拉1980》在线观看| 欢喜游龙演员表| 飘零电影院| 盛唐风流完整免费观看| 我和我的家乡免费观看高清| 千金肉板栗完整版| 美好的时光电视剧| 七品芝麻官郑则仕| 寸止挑战大赛在线| 张杰 这就是爱| 裸婚时代全集| 粤语版青花瓷| 心跳直播在线观看免费| 空盆来蛇| 新奥特曼 在线观看| 三线轮回电影| 直播:陕西卫视春晚| 疯狂家族史(1-6)完整版| 一男子用啤酒瓶刺死女友 已自首| 黑色的眼泪,麻生香织完整版哪里可以| 北原多香子无打码在线观看| 总统之夜电影在线观看| 老兵插曲| 浮之手公公| 持家超厉害:古代种田短剧全集| 如懿传3在线看全集免费观看高清 后宫 | 凶器未删减| 修理工艳遇2| 长月无烬免费观看完整版| 斑马电影院| 唐人街探案3正片完整版免费观看| 美容是特殊待遇| 第三只眼| 义姐是不是良妈妈喂养动漫| 对你的想象在线观看| 电影水电工的艳遇国语在线观看| 奶头大他一口都含不住| 电影《灭火宝贝1》 | 黑白配高清完整版免费观看中文版 | 人间四月天电视剧| 罪域电视剧全集播放| 《混血儿的摇篮曲》1小时4分钟时的片 | 法国空乘5免费高清原声满天星美版百度 | 我为卿 狂| 终结者1免费高清电影| 扫黑决战28集全免费| 银魂105| 浮之手3| 日和漫画中文配音| 女超人麦迪娜1080p满天星版| 悄悄地喜欢你免费观看| 十七·3电影高清免费播放| 特种部队2普通话国语免费播放| 女员工在付出5中字| 刑侦12国语免费观看全集 | 半熟恋人| 泰剧情丝万缕| 邪恶力量第5季| 大同红人照片| 撒野在线观看电视剧| 青春之旅第二季| 报歉沈先生孩子不是你的短剧大结局 | 乾少归来短剧免费观看 | 火影剧场版4| 吊丝女士第二季全集| 电视剧骄阳伴我免费观看全集| 环翠峪门票| 浴血狂沙国语版下载| 五等分的新娘夏季特别篇| 朴银狐妻子的职业| 星梦奇缘剧情简介| 霹雳mit电视剧| 驯服有夫之妇HD中字日本 | 火流星剧情介绍| 莫妮卡《爱我几何》| 全职高手2电视剧官宣| 电视《金悔瓶》免费观看2008样| 极速保镖| 伦理片女律师的堕落| 失乐园韩国| 《分娩特写》电影免费观看 | 天宝伏妖录第二季| 星球大战:摩尔-暗影之王未删减| 用你的手指扰乱我| 大生意人电视猫| 门源| 天国阶梯中文版| 黑白配高清国语完整版| 黑店狂想曲| 我年轻瘦子8| 金瓶梅完整版百度影音 | 张艺谋新剧《雪迷宫》免费观看| 应城市| 把娇妻借给朋友泄欲4| 新有菜在线免费播放| 浴火之路在线观看| 功夫之王电影| 三年大片大全免费观看国语| 八楼的二路汽车| 当着丈夫面被耍| 猩球崛起4新世界免费高清观看| 情圣囧色夫 豆瓣| 八九不离十| 女子护卫队1973完整版| 美人谋律第一季| 三国传动画片| 胡志明市2高清资源| 王君安越剧名段欣赏| 公之浮手中22| 老撕鸡全集解说| 芙人少女大人十四岁姑娘正片电影| 儿子的妻子在线| 《饥饿难耐2》| 爱情真善美全集80| 与部长妻子一起过周末的日子| 魔乳秘剑帖无修版01| 爱几何在线观看免费全集| 天使即将来临续集| 空中狐狸法国满天星全部演员表| 菲律宾电影修理工的艳遇| 特别的酒店2免费| 射雕英雄传国语版| 爱情攻略高清完整版粤语| 波多野结衣 屌丝男士| 山西科教频道| 《有翡》观看免费完整版| 结婚才可以电视剧| 法国版《女超人》在线看| 老公的朋友来做客| 花蝴蝶4电视剧在线播放免费观看| 契魔者装备| 19岁三个女儿1锅端续集免费观看 正在播放: JUL-927 “对不起,我受不了了……”我对儿子的朋友好色……北条朝 | 牧羊曲伴奏| 一起飞电影完整版百度影音| 男人们别争宠| 韩剧想你国语版| 义姐哺乳观看第一季全集免费| 《莲花楼》电视剧| 联合早报电影高清完整版需要爸爸播种子 | 绝世龙尊短剧免费看| 美国的忌讳1—5| 神墓在线观看全集免费观看动漫| 《俘虏之锁》第一集免费| 一人之下第四季免费观看全集中文| 我的亲爱的瘦子8| 巜人妻初次按摩2播放| 大槻响作品番号| 老包青天83版免费全集| 电视剧王小麦进城| 不在犯罪现场电视剧| 小镇姑娘免费高清观看全集| 《卖房子的女销售| 氪金玩家第一季免费播放| 糗百成人影片| 架设教程| 《落魄贵族琉璃川》2集免费观看| 人口普查2021公布结果| 巜人妻初次按摩2在线观看| 电视连续剧家常菜| 一人之下电视剧免费观看全集高清 | 《女超人麦乐迪》电影免费播放 | 麦乐迪家庭矛盾电影在线播放| 青春守艺人在哪里播出| 激情文学亚洲| 大头儿子小头爸爸5| 迷人的保姆 电影免费| WE带嘟噜嘟噜嘟噜啊耶啊耶| 天网追踪电视剧免费观看| 社长夫人的美貌在线播放| 王的女人下载mp4| 铜铜钢铿锵锵锵锵锵锵免费观看| 哪里可以看晚娘| 美国1-7| 金瓶梅电视剧| 斗罗大陆60集| 韩国人妻同丈夫吵架人妻系上司的关心下调教电影 | 《新济公活佛》电视剧| 恶魔法则下载| 北京生物疫苗是国药吗| 黑色的眼泪麻生香织完整版| 彷徨之刃免费观看完整版| 粉红大白菜正宗版完整版| 仲文你好vlog最新视频| 璀璨人生电视剧免费观看| 战狼6欧氏少女全部剧情介绍大全视频 | 九一社1-24集| 一误东风辞崔羽| 玉铺团国语免费全集观看| 腾飞担保公司| 狮子王免费| 斗气冤家好兄弟第二部| 《乳头按摩》在线免费观看| 灵魂摆渡第1季免费观看| 萨达姆墓| 年轻漂亮的邻居瘦子4| 齐天大剩| 棒棒tv| 外景拍照姿势| 月满西楼舞蹈| 棒子老虎机| 错嫁豪门:夫君超宠短剧全集| 弃少逆袭短剧全集| 初级瑜伽视频2| 漂亮妈妈7巴字中字开头墨西哥| 美国加州爆发大规模街头斗殴| 凯·帕克《执着》观看| 黄百鸣粤语电影| 空间神医农女:医术惊天下全集免费| 疯狂的石头电影| 童话镇第一季| 《再见莫妮卡》| 水浒之英雄本色| 杨敏思1—5集国语电视剧免费观看 | 官方回应一餐厅致多人腹泻1人死亡 | 德川幕府刑法三部曲| 折腰电视剧观看在线播放| 《爸爸种子2》英文翻译| 殊死七日电视剧| 美式禁忌保罗1982| 太一剑仙传| 《非凡医者》全集| 3对1| 神探夏洛克可恶的新娘字幕| 《迪拜的女孩2满天星》| 向天再借五百年简谱| 法国空乘法版免费看| 家事法庭全集观看| 赖猫的狮子倒影1-33集| 赤裸惊魂| 朋友的妈妈韩剧| 《被可怕的科长欺负的新人》电影| 侠盗飞车圣安地列斯热咖啡| 《女律师替丈夫还钱》电影中文版| 引诱我的巨乳女邻居| 永城市| 一路上有你第一季| x4631鲁大师| 义姐是不是良喂养1-2集| 鬼话怪谈祥云寺| 食物链美国大尺寸| 恋爱吧食梦君| 娱乐| 《妻子3》免费高清电视剧在线观看| 偷偷藏不住40集完整版| 牙医姐妹完整版免费 在线观看| 公司职员 电影| 女房东的滋味HD| 舞林争霸方俊| 《爱我几何》免费完整版在线观看 | 惜花芷电视剧免费观看全集| 女律师替夫还债完整版| 中国风水 算命| 《玉女心经3:阴阳和合》陈宝莲 | 女员工的付出1230| 雾岛奈美津| 消失的厨神短剧免费观看| 罪恶六芒星1979| 迷雾追踪在线观看免费完整版全集| 心动警报在线观看| 电影美容院的特殊待遇| 难哄电视剧观看全集在线播放| 纯情罗曼史2| 吴奇隆前妻| 电视剧老女人6| 电影激战丛林在线观看完整版高清| 奇迹免费| 妈妈的职业完整版结局在线看免费高清 | 特殊精华油5HD| 制服 电影| 大石桥市| 南洋十大邪术 下载| 转生成蜘蛛又怎样15| 黑白配国语在线播放免费 | 黄色仓库18| 昆山事件| 《美容院的特殊待遇》| 色戒 高清| 齐天大圣孙悟空免费观看完整版| 《满天星绝版》在线观看| 隐形守护者演员| 韩国电影推油| 长江七号国语免费观看| 城市猎人动漫中文版| 厨房激情3日本| 恋之罪免费观看完整版高清| 美妙发型屋韩国| 玛露和她的情人| 蝴蝶效应2| 魔王伊布罗贾献身吧| 名侦探柯南绀青之拳免费观看| 《机械师6》电影在线看| 神勇双响炮国语| 凯登杰西斯托雅《荣誉法则》| 春天在线观看免费完整版电影| 花的勇气ppt| 坎贝奇最经典的4部电影| 恶魔恋人第2季| 征途在线观看| 朋友的母亲4在观完整有限中字木| 老李头的春天第九集| 意大利巨乳满天星| 极品教师第三季在线观看完整版| 狼牙公主历险记| 地味变动漫完整版免费在线观看| 生死卧底全集| 爱我几何高清下载| 火口的两个人 在哪看| 放荡邻居尤物少妇在线观看| 西野翔qvod| 亲爱的仇敌全集免费观看| 漂亮妈妈7字开头| 黑洞电视剧全集| 法国酒店实生3完整版| 雪山飞狐吕良伟| 七小罗汉高清版| 柱训练篇| 锡林郭勒盟| 电视剧特战荣耀完整版全集免费观看| 故乡别来无恙在线观看| 潘金莲1-5| 彩翼儿童美术| 幸福的黄手绢| 因法之名电视剧免费观看吴磊| 像傻瓜一样去爱全集| 妻子8免费完整高清电| 隐藏的面孔| 勇敢的市民电影免费观看全集| 受益人 电影| 美人鱼战队高清完整免费观看| 女保险推销员8| 福州 劫持人质| 秦时明月全集免费观看| 今日天晴宜爱你短剧在线免费看| 女教师3在线| 亲近相尾2中文版在线观看| 肖申克的救赎在线观看| 周生如故分集剧情介绍| 公之浮手中字15| 滨崎步演唱会高清| 姐妹牙医电影完整版观看| 陆小凤传奇绣花大盗| 日常卿卿| 康体水疗电影1978完整版在线播放| 海达全集观看| 八戒,八戒神马网剧观看| 电视剧大漠枪神| 双峰县| 我是特种兵2全集在线观看| 神印王座伊莱克斯剧场版| 台剧黛比浪漫女家教1免费播放 | 武僧一龙ko日本拳王| 季雨倾城未删减| 美食的俘虏110| 致命弯道8免费看| 台湾师生恋《补课》电影是什么电影 | 绝世双骄剧情| 谁的青春不迷茫| 泌尿科电影| 新版聊斋| 年轻的小婊一级A片免费| 安徽地方戏庐剧| 龙啸短剧全集免费观看 | 美容店的特殊待遇| 凡人修仙传第160集更新| 绝地枪王2电视剧| 水电工与邻居少妇奸情电影| 高清《沸腾人生》免费观看| 廖学秋潘金莲| 恶魔少爷别吻我第二季免费观看全集| 捉妖记电影在线观看| 牙医姐妹在线电影播放完整版| 高清我要成为超级巨星未删减| 妈妈的职业电影免费版观看| 牲生活电影| 公媳在线观看| 四人行菲律宾| 当婚姻走到尽头| 步步倾心| 黑白配高清完整版免费观看中文版| 高清《秘密》电影全集| 我的流氓爱人 电影| 正在播放: DRPT-048 春药曝露性爱 仓田真央带乳头导线与前女友相见 十年来同 | 扫黑风暴连续剧| 捆绑轮奸电影| 色降ii万里驱魔| 黑蝴蝶刘敏涛完整版在线观看| 辣妹子电影电视剧在线播放| 我是乡巴佬| 四少妇按摩记| 都是天使惹的祸下载| 鸡油膏的功效与作用禁忌| 壮志凌云电影女版2011| 空姐夹6公斤黄金| 神断狄仁杰| 一起愁愁免费观看高清版视频| 高清《四个愿望》| 喜爱夜蒲3国语完整版| 法国空姐八部曲系列| 莫陌百度影音| 濉溪县| 《珠帘玉幕》大结局| 守护甜心第56集| 初体验5在线观看整板| 昨晚七点新闻联播回放| 阿凡达3d版在线观看| 盛唐风流国语版免费播放| 红楼视频在线观看免费播放电视剧| 再过把瘾电视剧| 三级维修工的艳遇| 鬼父手机在线看1到16集| 庆余年第四部50集免费观看| 入室强奸初中生免费观看| 牧神记第39集在线观看视频| 高清今天开始是人类| 乌云之上共多少集| 勐垅沙免费| 朴雅珍《蓝色隐形帽子》| 泰勒斯威夫特演唱会| 赘婿免费观看| 莫妮卡《爱我几何》| 环太平洋百度影音高清| 《初体验》电影完整版| 1995年意大利版《人猿泰山》中字满天| yy11111光电影院| 我老婆是学生会长第二季| 花子vs倔强驱魔师真人| 《妹妹爱上我》动漫| 在暴风雨时分| k8s经典怀旧版| 阎王传奇| 完美的他电视剧| 《高压监狱3》法国| 仙逆动漫在线观看完整版全集| 梦华录电视剧手机免费观看西瓜网| 牝老师4| 幸福爱人电视剧全集| 青面修罗免费观看| 被义子侵犯不敢出声电影| 评书隋唐演义免费听完整版| 月光宝盒免费高清观看| 男按摩师在线免费观看| 唐朝诡事录2官宣| 金华律师朱建忠| v酒店在线| 陪读妈妈1-| 17岁完整版高清免费播放| 人间空间时间和人在线观看| 千年菩提路下载| 龙虎山张天师电影免费观看| 世上谁长得最像小舞| 奥特银河格斗3第一集在线观看| 相约青春 电视剧| 机器生活完整版| 嘻哈四重奏 第五季| 另一个贝内特家的姐妹全集观看| 《玉女心经3》高清电影在线观看| 定风波免费观看全集高清| 金瓶梅韩国| 法国空乘2016无删减版在线| 神犬奇兵在线观看| 荡寇风云电影| 锵锵锵锵观看在线观看电视剧 | 隐身女侠的电影免费观看| 少女动漫在线观看全集| 白娘子传奇插曲| 巜人妻初次按摩2电影| 乌云之上免费完整版| 劳荣枝庭审直播| 潜艇伟伟迷的个人主页| 不要对我撒谎| 观看西班牙《掌中之物》| 幻想万华镜2| 我是特种兵2片尾曲叫什么| 五大连池市| 阴阳眼少女全集免费| 你们对象怎样抠你们的| 格莱美金曲| 古堡女仆的守护| 东京不太热 在线播放| 棘手狂情1994台湾版演员表| 代号十三钗| 玉女心经之官人我要| 义姐是不是良妈妈动画片| 温泉屋的老板娘| 新四军电视剧| 需要爸爸播种美国2024年几月几号开播 | 战地黄花电视剧| 咱们结婚吧电影| 没了丈夫和上司免费观看所有电影| 七夜雪 电视剧| 新官人我要在线| 渔夫的荒淫艳史| 大宋传奇赵匡胤电视剧| 名侦探柯南电影版| 木子凛凛子无删减| 孕妇滴着奶水做着爱A| 借种传奇| 爸爸的种子免费观看电视剧| 老虎出更2| 魂断秦淮| 凯登克罗斯电影完整版| 新九品芝麻官粤语| 索多玛的120天| 领居家保姆2| 电视剧我们俩的婚姻| 电影《塔蒂亚娜2》在线| 和大胸大乳继拇做爰2| 小斯亲口宣布离开篮网| 私生女逆袭全集免费| 致命id在线观看| 我的游泳女教练 云播| 情深深雨蒙蒙2| 炮火杀狼花第二部| 需要爸爸播子种| 名侦探学院7| 巨齿鲨在线观看| 爸爸我想要你的种子| 亚人酱有话要说| 美女拍拍| 工地上的女人免费观看电视剧手机剧| 温柔的女教师在线观看电视剧免费| 新金瓶梅龚玥菲版| 丈夫犯错妻子偿还的电影如何观看 | 什么是常任理事国| 1984美式保罗2| 太阳照常升起电影| 广场舞好人好梦| 魔镜号中文在线观看| 变形警车珀利| 《早恋》| 电影《千金》郝板栗免费播放| 一起来看流星雨电视剧免费全集| 伸冤人3在线| 《激战丛林2》洛可在线观看| 异世界迷宫2免费观看| 女儿的奶水| 燃野少年的天空 电影| 男人女人愁愁在线观看| 援助交际网站| 青草影视电视剧免费播放在线观看| 壮志凌云2011大人版影院| 张本煜回怼男观众称“大清亡了” | 名侦探柯南日语版免费观看| 女律师的堕落在线观看| 生活妆画法| 给我免费播放的电影在线观看| 男生女生一愁愁愁电视剧在线观看大片| 逆转裁判电影| 纯白交响曲h| 小妈妈2免费观看完整电视剧| 特蕾西1987满天星| 电视剧双喜盈门第二部| 逆风而行电视剧全集免费版| 本乡爱电影高清免费观看| 苏染染追夫记电视剧| 青盲电视剧全集50| 《孤岛惊魂》| 白峰美羽真丝睡衣的诱惑乱电影| 滚滚红尘电影在线观看免费完整版| 斗罗大陆212| 女版美国队长满天星免费观看| 科学家们| 雄狮少年2电影免费完整版| 战狼6欧美版免费观看完整版国语下载| 十佳球背景音乐| 何以笙箫默免费观看全集| 宇佐美舞| 韩国黄色三级片村故| 美味妹妹| 都市后宫艳妇全部阅读| 外卖奇遇| 写意人生国语| 西施成人版| 妈妈的味道完整手机版| 出差和讨厌的社长同住最可恶的部长| 成龙历险记第5部| 台风刮来生蚝?居民捡200斤| 世界十大禁用飞机| 闪酷电影网手机在线观看情欲满载| 《美丽小蜜桃》1| 庭院深深剧情| HD版《激战丛林》完整版意大利在线| 斗罗大陆在线观看全集免费| 小胖俞涛回应九转大肠梗| 窥视者电影(无删减)哪里有星| 义姐不良妈ova观看渠道| 唯美电影完整版免费观看| 魔鬼天使在线观看| 邪恶的武器布鲁克满天星版| 沉默的舰队电影| 地球上的星星2全集观看| 许晴背叛| 金银梅10普通话版免费观看下载| 猩疯血雨电影| 高h乱np甄宓| 女律师的坠落完整版日剧| 非凡医者演员表| 刻晴被盗宝团C的不能自理| 画江湖之天罡传什么时候上映| 家庭教师我的美好学生| 喜气洋洋小金莲| 追梦就冲突事件道歉| 《激战丛林》在线播放免费观看| 泰坦尼克号1电影| 上帝的选民| 阿尔涅的事件簿全集观看| 雪平利左电影免费播放西瓜视频 | 豪斯医生第一季01| 男生和女生在一起愁愁愁在线观看 | 动漫二人生猴子免费观看动漫视频| 年轻的瘦了8| 一刀不剪| 《惊变28年》| 傲斗凌天v20| 法国肉寇之香| 《牧神记》全集观看在哪里看| 魔幻手机第一部| 美乃雀| 小丑1电影| 蜜桃成熟时1997百度影音| 周生如故在线播放| 别墅互换| 鲸鱼向渔民求助| 电影男与女免费星辰| 饥渴的邻居HD| 高压监狱2法国版免费播放| 慈禧的秘密生活未删减| 恶魔的艺术2邪降| 正阳门下36集全免费| 波多野吉衣销魂120分钟电影| 台剧恋爱之瘾在线观看| 戒烟不戒酒电视剧| 周弘版《村枝2》观看| 泰国妈妈需要播种| 韩国三姐妹| 少林叛徒| 站着再来一次26集全在线看| 美国末日之战丧尸电影免费观看 | 白百何益达广告完整版| 每逢国庆思佳婿短剧免费观看 | 电视剧英雄祭全集免费观看| 猎罪图鉴第二季在线观看| 战狼6| 神鬼战士1满天星版| 黑名单第三集| 斗罗大陆263集免费观看全集| 《新上任的秘书》| 马斯克不断被儿子打脑袋| 硬汉枪神在线观看| 钢铁天使第二季| 金银梅1-5普通话免费观看完整版| 龙虎风云电影| 终结者:创世纪 电影| 一屋老友记 国语| 法国空乘2019在线观看完整免费高清原声满天星奔跑吧ep | 《和讨厌的部长出差》电影| 华丽上班族迅雷下载| 华政韩剧| 男女在一起愁愁愁插曲免费观看全集 | 再见龙生你好人生| 螺丝钉第三季| 按摩胸部伦理片| 剥茧电视剧免费全集在线播放| 国王在冬眠免费观看| 孤单的儿媳免费观看全集| 意大利《女子护卫队》在线播放免费 | 韩剧《财阀儿媳》| 我会好好的电影| 《睫毛膏4》美国版| 易建联29分| 医妃不好惹短剧全集| 蛇园短剧全集免费播放下载| 成全动漫全集免费看| 女版壮志凌云2满天星1080p| 复仇者联盟2西瓜| 三级剧情片| 花莲县| 姊妹牙医完整版视频在线观看 | 女律师的堕落| 游泳馆的特殊待遇| 花姐的个人资料| 免费中文在线播放电视剧推荐| 特邀外卖员女主| 陆判仙根全集免费观看| 电视剧英雄祭全集免费观看| 诺亚方舟:创世之旅| 大决战之淮海战役免费| 正在播放: 解决学生的性爱烦恼不穿内衣裤的美波老师硬硬教学 波汐里 中文本幕 | 欢乐颂5最新免费观看高清电视剧| 柜中美人 电视剧| 美式保罗4中文版| 天注定 字幕| 妖刀记第二部| 反骗天下电视剧| 二十一世纪性格爱情指南第8集| 大男孩电影| 完美新娘电视剧| 我们的当打之年电视剧| 爱我几何无删减版观看| 我的前半生二62日本剧情韩国| 派克式左轮| 天使即将来临续集| 时宴郑书意电视剧免费观看| 三级韩国片维修工的艳遇|