mobile-insight / mobileinsight-core

Mobile Network Intelligence Made Easy -- MobileInsight core functionalities
http://www.mobileinsight.net
Other
106 stars 82 forks source link

Missing dependencies in installation script for Debian/Ubuntu #102

Open nick-schwarzenberg opened 3 years ago

nick-schwarzenberg commented 3 years ago

Versions

Description

We were trying to set up mobileinsight-core using install-ubuntu.sh on a fresh Debian 10 install (and reproduced the issue on a fresh Xubuntu 20.04). Running cmake on line 47 failed. When tracking down the cause, we noticed three problems:

  1. The error message on line 49 does not reflect the actual cmake command and is a bit misleading, one could think that the cmake binary is being looked for on the wrong path. Could be changed to: "Error when executing 'cmake -DBUILD_wireshark=OFF .' in ${WIRESHARK_SRC_PATH}/"
  2. The output of cmake is suppressed (i.e., redirected to /dev/null, including stderr) which makes troubleshooting harder than it has to be. Why is this done actually, the other commands log to the standard outputs as well?
  3. The following dependencies are missing: cmake, build-essential, git, and libgcrypt20-dev (could be added to line 35)

While the last point is the main problem, it might be worth to consider fixing the others as well.

Logs

nick@nick-VirtualBox:~/mobileinsight-core-master$ ./install-ubuntu.sh 
** Installer Script for mobileinsight-core on Ubuntu **

  Author : Zengwen Yuan (zyuan [at] cs.ucla.edu), Haotian Deng (deng164 [at] purdue.edu)
  Date   : 2020-10-20
  Rev    : 4.0
  Usage  : ./install-ubuntu.sh

[…]

Installing dependencies for compiling Wireshark libraries
[sudo] password for nick: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
pkg-config is already the newest version (0.29.1-0ubuntu4).
pkg-config set to manually installed.
wget is already the newest version (1.20.3-1ubuntu1).
wget set to manually installed.
The following additional packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu cpp-9 gcc gcc-10-base gcc-9 gcc-9-base libasan5
  libatomic1 libbinutils libblkid-dev libblkid1 libc-dev-bin libc6 libc6-dbg libc6-dev libcc1-0 libcrypt-dev
  libctf-nobfd0 libctf0 libffi-dev libfl-dev libfl2 libgcc-9-dev libgcc-s1 libgfortran5 libglib2.0-0
  libglib2.0-bin libglib2.0-dev-bin libgomp1 libitm1 liblsan0 libmount-dev libmount1 libpcap0.8-dev
  libpcre16-3 libpcre2-16-0 libpcre2-dev libpcre2-posix2 libpcre3-dev libpcre32-3 libpcrecpp0v5 libquadmath0
  libselinux1-dev libsepol1-dev libsigsegv2 libstdc++6 libtsan0 libubsan1 libuuid1 linux-libc-dev m4
  manpages-dev python3-distutils python3-lib2to3 uuid-dev zlib1g zlib1g-dev
[…]
Checking Wireshark sources to compile ws_dissector
You do not have source codes for Wireshark version 3.2.7, downloading...
--2021-06-18 15:01:49--  https://www.wireshark.org/download/src/all-versions/wireshark-3.2.7.tar.xz
Resolving www.wireshark.org (www.wireshark.org)... 104.26.11.240, 104.26.10.240, 172.67.75.39, ...
Connecting to www.wireshark.org (www.wireshark.org)|104.26.11.240|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 31659996 (30M) [application/x-xz]
Saving to: ‘wireshark-3.2.7.tar.xz’

wireshark-3.2.7.tar.xz      100%[==========================================>]  30,19M  13,8MB/s    in 2,2s    

2021-06-18 15:01:52 (13,8 MB/s) - ‘wireshark-3.2.7.tar.xz’ saved [31659996/31659996]

Configuring Wireshark sources for ws_dissector compilation...
Error when executing '/home/nick/mobileinsight-core-master/wireshark-3.2.7/cmake -DBUILD_wireshark .'
You need to manually fix it before continuation. Exiting with status 3
schmijul commented 3 years ago

Hi there,

I faced the same issue today. I could solve this by changing the download link in line 40. from the install-ubuntu.sh script.

Basically, I changed

in line 23: ws_ver=3.2.7 to: ws_ver=3.4.8

and in line 40: wget https://www.wireshark.org/download/src/all-versions/wireshark-${ws_ver}.tar.xz to: wget https://1.eu.dl.wireshark.org/src/wireshark-3.4.8.tar.xz

Now it's working for me on Ubuntu 21.04

z6beeftu8 commented 3 years ago

Hello guys, I follow the steps and replace the wget links to get wireshark version 3.4.8, but still did not fix this problem, OS: ubuntu 20.04

schmijul commented 3 years ago

Two ideas :

sudo apt-get remove --purge wireshark And sudo apt-get autoremove

luckiday commented 3 years ago

Can you try this new branch that we have updated Wireshark to 3.4. https://github.com/mobile-insight/mobileinsight-core/tree/dev-6.0

nick-schwarzenberg commented 3 years ago

Originally, this issue was about inconveniences in the output of the script and missing packages. This doesn't seem to be fixed in branch dev-6.0. The above comments refer to downloading Wireshark sources, however, which is independent of the other problems.

starkovv commented 2 years ago

Installing missed package libc-ares-dev resolved the issue with Wireshark.

Thought there is another one:

[INFO] [LtePhyAnalyzer]: PUSCH_TX_POWER: {'tx power': 22, 'timestamp': '2016-03-23 21:55:49.302584'}
[INFO] [LtePhyAnalyzer]: PUCCH_TX_POWER: {'tx power': 1, 'timestamp': '2016-03-23 21:55:49.322533'}
[INFO] [LtePhyAnalyzer]: PUSCH_TX_POWER: {'tx power': 13, 'timestamp': '2016-03-23 21:55:49.342538'}
[INFO] [LtePhyAnalyzer]: PUCCH_TX_POWER: {'tx power': 1, 'timestamp': '2016-03-23 21:55:49.342538'}
[INFO] [LtePhyAnalyzer]: SR_EVENT: {'timestamp': '2016-03-23 21:55:49.342538', 'fn and subfn': 5738}
[INFO] [LtePhyAnalyzer]: PUSCH_CQI: {'WideBand CQI CW0': '10', 'WideBand CQI CW1': '0'}
[INFO] [LtePhyAnalyzer]: PUSCH_TX_POWER: {'tx power': 16, 'timestamp': '2016-03-23 21:55:49.362534'}
[INFO] [LtePhyAnalyzer]: PUSCH_TX_POWER: {'tx power': 17, 'timestamp': '2016-03-23 21:55:49.362534'}
[INFO] [LtePhyAnalyzer]: PUCCH_TX_POWER: {'tx power': 1, 'timestamp': '2016-03-23 21:55:49.362534'}
[INFO] [LtePhyAnalyzer]: PUCCH_TX_POWER: {'tx power': 1, 'timestamp': '2016-03-23 21:55:49.362534'}
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/MobileInsight-5.0.0-py3.8-linux-x86_64.egg/mobile_insight/monitor/offline_replayer.py", line 209, in run
    self.send(event)
  File "/usr/local/lib/python3.8/dist-packages/MobileInsight-5.0.0-py3.8-linux-x86_64.egg/mobile_insight/element.py", line 104, in send
    self.to_list[i].recv(self, event)
  File "/usr/local/lib/python3.8/dist-packages/MobileInsight-5.0.0-py3.8-linux-x86_64.egg/mobile_insight/analyzer/analyzer.py", line 234, in recv
    self.source_callback[i](event)
  File "/usr/local/lib/python3.8/dist-packages/MobileInsight-5.0.0-py3.8-linux-x86_64.egg/mobile_insight/analyzer/lte_rrc_analyzer.py", line 249, in __rrc_filter
    self.__callback_sib_config(xml_msg)
  File "/usr/local/lib/python3.8/dist-packages/MobileInsight-5.0.0-py3.8-linux-x86_64.egg/mobile_insight/analyzer/lte_rrc_analyzer.py", line 451, in __callback_sib_config
    int(field_val['lte-rrc.utra_q_RxLevMin']) * 2,
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

Failed to run offline analysis example!
Exiting with status 4.