<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 第2章-項目目錄構建 ? 首先在一切開始之前,我們應該將最基本的項目架構創建出來。 1)創建Lars代碼總目錄 ```bash $cd ~/ $mkdir Lars ``` 2) 創建一個模塊Lars_reactor lars_reactor是一個網絡IO庫,是我們要實現的,我們就先以它作為第一個子項目進行構建。 ```bash $mkdir lars_reactor ``` 然后在lars_reactor模塊下創建一系列文件,如下 ```bash . ├── example │?? └── testlib │?? ├── hello_lars.cpp │?? └── Makefile ├── include │?? └── tcp_server.h ├── lib ├── Makefile └── src └── tcp_server.cpp ``` 3)代碼編寫 > src/tcp_server.c ```c #include <iostream> void lars_hello() { std::cout <<"lars hello" <<std::endl; } ``` > src/tcp_server.h ```c #pragma once void lars_hello(); ``` ? 我們要生成一個lib庫文件liblreactor.a,來提供一些reactor模塊的API接口。 生成liblreactor.a的Makefile如下 > lars_reactor/Makefile ```makefile TARGET=lib/liblreactor.a CXX=g++ CFLAGS=-g -O2 -Wall -fPIC -Wno-deprecated SRC=./src INC=-I./include OBJS = $(addsuffix .o, $(basename $(wildcard $(SRC)/*.cpp))) $(TARGET): $(OBJS) mkdir -p lib ar cqs $@ $^ %.o: %.cpp $(CXX) $(CFLAGS) -c -o $@ $< $(INC) .PHONY: clean clean: -rm -f src/*.o $(TARGET) ``` 4)編譯 ```bash $cd lars/lars_reactor/ $make $g++ -g -O2 -Wall -fPIC -Wno-deprecated -c -o src/tcp_server.o src/tcp_server.cpp -I./include mkdir -p lib ar cqs lib/liblreactor.a src/tcp_server.o ``` 我們會在lib下得到一個liblreactor.a庫文件。 5)調用liblreactor.a接口 ```bash $cd lars/lars_reactor/ $mkdir example/testlib -p $cd example/testlib/ ``` > hello_lars.cpp ```c #include "tcp_server.h" int main() { lars_hello(); return 0; } ``` > Makefile ```makefile CXX=g++ CFLAGS=-g -O2 -Wall -fPIC -Wno-deprecated INC=-I../../include LIB=-L../../lib -llreactor OBJS = $(addsuffix .o, $(basename $(wildcard *.cc))) all: $(CXX) -o hello_lars $(CFLAGS) hello_lars.cpp $(INC) $(LIB) clean: -rm -f *.o hello_lars ``` 編譯 ```bash $ make g++ -o hello_lars -g -O2 -Wall -fPIC -Wno-deprecated hello_lars.cpp -I../../include -L../../lib -llreactor ``` 執行 ```c $ ./hello_lars lars hello ``` 我們現在一個基本的項目目錄就構建好了,大致如下 ```bash Lars/ ├── lars_reactor │?? ├── example │?? │?? └── testlib │?? │?? ├── hello_lars │?? │?? ├── hello_lars.cpp │?? │?? └── Makefile │?? ├── include │?? │?? └── tcp_server.h │?? ├── lib │?? │?? └── liblreactor.a │?? ├── Makefile │?? └── src │?? ├── tcp_server.cpp │?? └── tcp_server.o └── README.md ``` --- ### 關于作者: 作者:`Aceld(劉丹冰)` mail: [danbing.at@gmail.com](mailto:danbing.at@gmail.com) github: [https://github.com/aceld](https://github.com/aceld) 原創書籍: [http://www.hmoore.net/@aceld](http://www.hmoore.net/@aceld) ![](https://img.kancloud.cn/b0/d1/b0d11a21ba62e96aef1c11d5bfff2cf8_227x227.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看