Unix 網路編程捲一源碼編譯踩坑記錄 ubtutu 19.10

来源:https://www.cnblogs.com/arvinhuang/archive/2020/04/04/12633655.html
-Advertisement-
Play Games

在閱讀unpv1時運行源代碼的環境配置,這裡簡單記錄一下 源代碼里的README 寫得挺詳細的,但是在Linux 系統的下還是沒辦法直接編譯通過的, 這裡我使用的是ubuntu 19.10(在騰訊雲ubuntu server 18.04.1也測試通過) 以下是簡單的步驟: 1.下載源碼並解壓 2.解 ...


在閱讀unpv1時運行源代碼的環境配置,這裡簡單記錄一下

源代碼里的README 寫得挺詳細的,但是在Linux 系統的下還是沒辦法直接編譯通過的,

這裡我使用的是ubuntu 19.10(在騰訊雲ubuntu server 18.04.1也測試通過)

以下是簡單的步驟:

1.下載源碼並解壓

2.解壓源代碼後得到unpv13e,

3.開始編譯

cd unpv13e
./configure  
cd lib    
make     
cd ../libfree  
make

這時報錯:
inet_ntop.c: In function ‘inet_ntop’:
inet_ntop.c:60:9: error: argument ‘size’ doesn’t match prototype

將  inet_ntop.c  第60行的 size_t size 改成 socklen_t size,報錯退出重新make

vim inet_ntop.c 

 接著最後一個步驟

cd ../intro 
make daytimetcpcli

此時無法成功運行,需要修改系統daytime 配置
查看埠

cat /etc/services | grep "daytime"

修改配置項,將兩個disable配置項修改由yes改為no

sudo vim /etc/xinetd.d/daytime 

重啟服務

sudo /etc/init.d/xinetd restart
./daytimetcpcli 127.0.0.1 

這時源碼已經可以成功運行


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 圖解Java設計模式之狀態模式 APP抽象活動問題 狀態模式基本介紹 狀態模式的原理類圖 狀態模式解決APP抽獎問題 狀態模式的註意事項和細節 APP抽象活動問題 請編寫程式完成APP抽象活動,具體要求如下 :1)加入每參加一個這個活動要扣除用戶50積分,中獎概率是10%。2)獎品數量固定,抽完就不 ...
  • 將文本正確轉換為 DateTime 需要執行三個子任務:1、正確格式的日期和時間字元串。2、區域性,不同地區的日期和時間表示格式有區別,字元串格式有區別。3、指定轉換格式,例如轉換後的DateTime,可能沒有時間部分。 使用Parse轉換和TryParse轉換: string dateInput ...
  • 腳本編程(一) 啰里啰唆:每周的最後一天都特別難受。墨跡扣不出文章。 一、概況 註釋是以#開都的,#開頭不一定都是註釋 SHELL是解釋型語言 SHELL腳本第一句以#!/bin/bash開頭 SHELL腳本需要具有執行許可權 一般以.sh結尾 別名在腳本中無效。在腳本中不能使用別名。 bash使用技 ...
  • 疫情在家有些閑,發現自己的簡歷有1年半沒更新過了,上一次面試還是1年半以前。想看看外面的行情也順便摸一下自己的底,把自己的方向理清晰一些,就更新了自己的簡歷,公開出去了。公開的第二天收到了一些面試推薦。雖然在家,但是白天還是在遠程辦公,所以也沒有面試很多,選了其中兩家。一個是阿裡CBU技術部-C2M ...
  • 有換入就應該有換出 1. get_free_page ? 2. FIFO頁面置換 D換A不合適,因為接下來A也要進行使用,所以應該換最近用不到的C合適 3. MIN頁面置換 4. LRU頁面置換 5. LRU的準確實現,用時間戳 A是第一個時刻使用,B是第二個時刻使用,C是第三個時刻使用,然後又是A ...
  • [TOC] 在早期的 UNIX 系統中,各個廠家各自定義了自己的 UNIX 系統文件目錄,比較混亂。Linux 面世不久後,對文件目錄進行了標準化,於1994年對根文件目錄做了統一的規範,推出 FHS ( Filesystem Hierarchy Standard ) 的 Linux 文件系統層次結 ...
  • linux 命令參考Linux 命令大全: https://man.linuxde.net/ awk = "Aho Weiberger and Kernighan" 三個作者的姓的第一個字母, awk 是一種編程語言,用於在linux/unix下對文本和數據進行處理。 bash = GNU Bour ...
  • 這裡分享嵌入式領域有用有趣的項目/工具以及一些熱點新聞,農曆年分二十四節氣,希望在每個交節之日準時發佈一期。 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 在我們開發過程中基本上不可或缺的用到一些敏感機密數據,比如SQL伺服器的連接串或者是OAuth2的Secret等,這些敏感數據在代碼中是不太安全的,我們不應該在源代碼中存儲密碼和其他的敏感數據,一種推薦的方式是通過Asp.Net Core的機密管理器。 機密管理器 在 ASP.NET Core ...
  • 新改進提供的Taurus Rpc 功能,可以簡化微服務間的調用,同時可以不用再手動輸出模塊名稱,或調用路徑,包括負載均衡,這一切,由框架實現並提供了。新的Taurus Rpc 功能,將使得服務間的調用,更加輕鬆、簡約、高效。 ...
  • 順序棧的介面程式 目錄順序棧的介面程式頭文件創建順序棧入棧出棧利用棧將10進位轉16進位數驗證 頭文件 #include <stdio.h> #include <stdbool.h> #include <stdlib.h> 創建順序棧 // 指的是順序棧中的元素的數據類型,用戶可以根據需要進行修改 ...
  • 前言 整理這個官方翻譯的系列,原因是網上大部分的 tomcat 版本比較舊,此版本為 v11 最新的版本。 開源項目 從零手寫實現 tomcat minicat 別稱【嗅虎】心有猛虎,輕嗅薔薇。 系列文章 web server apache tomcat11-01-官方文檔入門介紹 web serv ...
  • C總結與剖析:關鍵字篇 -- <<C語言深度解剖>> 目錄C總結與剖析:關鍵字篇 -- <<C語言深度解剖>>程式的本質:二進位文件變數1.變數:記憶體上的某個位置開闢的空間2.變數的初始化3.為什麼要有變數4.局部變數與全局變數5.變數的大小由類型決定6.任何一個變數,記憶體賦值都是從低地址開始往高地 ...
  • 如果讓你來做一個有狀態流式應用的故障恢復,你會如何來做呢? 單機和多機會遇到什麼不同的問題? Flink Checkpoint 是做什麼用的?原理是什麼? ...
  • C++ 多級繼承 多級繼承是一種面向對象編程(OOP)特性,允許一個類從多個基類繼承屬性和方法。它使代碼更易於組織和維護,並促進代碼重用。 多級繼承的語法 在 C++ 中,使用 : 符號來指定繼承關係。多級繼承的語法如下: class DerivedClass : public BaseClass1 ...
  • 前言 什麼是SpringCloud? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發便利性簡化了分散式系統的開發,比如服務註冊、服務發現、網關、路由、鏈路追蹤等。Spring Cloud 並不是重覆造輪子,而是將市面上開發得比較好的模塊集成進去,進行封裝,從 ...
  • class_template 類模板和函數模板的定義和使用類似,我們已經進行了介紹。有時,有兩個或多個類,其功能是相同的,僅僅是數據類型不同。類模板用於實現類所需數據的類型參數化 template<class NameType, class AgeType> class Person { publi ...
  • 目錄system v IPC簡介共用記憶體需要用到的函數介面shmget函數--獲取對象IDshmat函數--獲得映射空間shmctl函數--釋放資源共用記憶體實現思路註意 system v IPC簡介 消息隊列、共用記憶體和信號量統稱為system v IPC(進程間通信機制),V是羅馬數字5,是UNI ...