mobileinsight-core icon indicating copy to clipboard operation
mobileinsight-core copied to clipboard

Missing dependencies in installation script for Debian/Ubuntu

Open nick-schwarzenberg opened this issue 4 years ago • 6 comments

Versions

  • OS: Debian 10.9.0 (with GNOME), Xubuntu 20.04
  • Python version: (not applicable)
  • Python installation method: (not applicable)
  • mobileinsight-core: 9eb0e72

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

nick-schwarzenberg avatar Jun 18 '21 14:06 nick-schwarzenberg

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

schmijul avatar Sep 09 '21 13:09 schmijul

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

z6beeftu8 avatar Sep 13 '21 06:09 z6beeftu8

Two ideas :

  • Did you also change ws_ver=3.2.7 to 3.4.8 ? And maybe check if the link (behind wget) actually starts the download. ( You can copy the link and start from a browser) If not you need to get a new link ( best from wireshark website) but then you have to make sure that the tar command has the correct file name in it

  • Maybe you need to delete wireshark first and then retry the script ?

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

schmijul avatar Sep 13 '21 12:09 schmijul

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

luckiday avatar Sep 13 '21 17:09 luckiday

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.

nick-schwarzenberg avatar Sep 13 '21 18:09 nick-schwarzenberg

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.

starkovv avatar Nov 04 '21 13:11 starkovv