Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

checkinstall breaks /lib if interrupted by Ctrl-C #4

Open
pdecat opened this issue Apr 15, 2021 · 7 comments
Open

checkinstall breaks /lib if interrupted by Ctrl-C #4

pdecat opened this issue Apr 15, 2021 · 7 comments

Comments

@pdecat
Copy link

pdecat commented Apr 15, 2021

I was packaging libtorrent after having built from source using checkinstall and pressing Ctrl-C during its execution broke my system.

# apt policy checkinstall
checkinstall:
  Installed: 1.6.2+git20170426.d24a630-2ubuntu1
  Candidate: 1.6.2+git20170426.d24a630-2ubuntu1
  Version table:
 *** 1.6.2+git20170426.d24a630-2ubuntu1 500
        500 http://fr.archive.ubuntu.com/ubuntu hirsute/universe amd64 Packages
        100 /var/lib/dpkg/status

Here the execution log that I managed to preserve:

patrick@localhost # uname -a
Linux localhost 5.11.0-14-generic #15-Ubuntu SMP Thu Apr 8 21:39:23 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
patrick@localhost # cat /etc/issue
Ubuntu Hirsute Hippo (development branch) \n \l
patrick@localhost # git clone https://github.com/arvidn/libtorrent.git
patrick@localhost # cd libtorrent
patrick@localhost # git checkout v1.2.13
patrick@localhost # sudo checkinstall
[sudo] password for patrick:

checkinstall 1.6.3, Copyright 2010 Felipe Eduardo Sanchez Diaz Duran
           This software is released under the GNU GPL.



*****************************************
**** Debian package creation selected ***
*****************************************

*** Warning: The package version "1.2.13
1.2.13
1.2.13" is not a
*** Warning: debian policy compliant one. Please specify an alternate one


This package will be built according to these values:

0 -  Maintainer: [ root@localhost ]
1 -  Summary: [ custom build of libtorrent-rasterbar ]
2 -  Name:    [ libtorrent ]
3 -  Version: [  ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ amd64 ]
8 -  Source location: [ libtorrent ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Recommends: [  ]
12 - Suggests: [  ]
13 - Provides: [ libtorrent ]
14 - Conflicts: [  ]
15 - Replaces: [  ]

Enter a number to change any of them or press ENTER to continue: 3
Enter new version:
>> 1.2.13

This package will be built according to these values:

0 -  Maintainer: [ root@localhost ]
1 -  Summary: [ custom build of libtorrent-rasterbar ]
2 -  Name:    [ libtorrent ]
3 -  Version: [ 1.2.13 ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ amd64 ]
8 -  Source location: [ libtorrent ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Recommends: [  ]
12 - Suggests: [  ]
13 - Provides: [ libtorrent ]
14 - Conflicts: [  ]
15 - Replaces: [  ]

Enter a number to change any of them or press ENTER to continue: 4
Enter new release number:
>> 2

This package will be built according to these values:

0 -  Maintainer: [ root@localhost ]
1 -  Summary: [ custom build of libtorrent-rasterbar ]
2 -  Name:    [ libtorrent ]
3 -  Version: [ 1.2.13 ]
4 -  Release: [ 2 ]
5 -  License: [ GPL ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ amd64 ]
8 -  Source location: [ libtorrent ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Recommends: [  ]
12 - Suggests: [  ]
13 - Provides: [ libtorrent ]
14 - Conflicts: [  ]
15 - Replaces: [  ]

Enter a number to change any of them or press ENTER to continue:

Installing with make install...

========================= Installation results ===========================
Making install in include/libtorrent
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/include/libtorrent'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/include/libtorrent'
make[2]: Nothing to be done for 'install-exec-am'.
 /usr/bin/mkdir -p '/usr/local/include/libtorrent'
 /usr/bin/install -c -m 644  address.hpp add_torrent_params.hpp alert.hpp alert_manager.hpp alert_types.hpp announce_entry.hpp assert.hpp bandwidth_limit.hpp bandwidth_manager.hpp bandw
idth_socket.hpp bandwidth_queue_entry.hpp bencode.hpp bdecode.hpp bitfield.hpp block_cache.hpp bloom_filter.hpp broadcast_socket.hpp bt_peer_connection.hpp buffer.hpp chained_buffer.hpp
 choker.hpp close_reason.hpp config.hpp copy_ptr.hpp crc32c.hpp create_torrent.hpp deadline_timer.hpp debug.hpp disk_buffer_holder.hpp disk_buffer_pool.hpp disk_interface.hpp disk_io_jo
b.hpp disk_io_thread.hpp disk_io_thread_pool.hpp disk_observer.hpp disk_job_pool.hpp ed25519.hpp entry.hpp enum_net.hpp error.hpp '/usr/local/include/libtorrent/.'
 /usr/bin/install -c -m 644  error_code.hpp extensions.hpp file.hpp file_pool.hpp file_storage.hpp fingerprint.hpp flags.hpp fwd.hpp gzip.hpp hasher.hpp hasher512.hpp hex.hpp heterogene
ous_queue.hpp http_connection.hpp http_parser.hpp http_seed_connection.hpp http_stream.hpp http_tracker_connection.hpp i2p_stream.hpp identify_client.hpp invariant_check.hpp io.hpp io_s
ervice.hpp io_service_fwd.hpp ip_filter.hpp ip_voter.hpp lazy_entry.hpp link.hpp linked_list.hpp lsd.hpp magnet_uri.hpp natpmp.hpp netlink.hpp operations.hpp optional.hpp packet_buffer.
hpp packet_pool.hpp parse_url.hpp part_file.hpp pe_crypto.hpp '/usr/local/include/libtorrent/.'
 /usr/bin/install -c -m 644  performance_counters.hpp peer_connection.hpp peer_connection_handle.hpp peer_connection_interface.hpp peer.hpp peer_class.hpp peer_class_set.hpp peer_class_
type_filter.hpp peer_id.hpp peer_info.hpp peer_request.hpp pex_flags.hpp piece_block.hpp piece_block_progress.hpp piece_picker.hpp platform_util.hpp peer_list.hpp portmap.hpp proxy_base
.hpp puff.hpp random.hpp read_resume_data.hpp write_resume_data.hpp receive_buffer.hpp resolve_links.hpp resolver.hpp resolver_interface.hpp request_blocks.hpp session.hpp session_handl
e.hpp session_settings.hpp session_stats.hpp session_status.hpp session_types.hpp settings_pack.hpp sha1.hpp sha512.hpp sha1_hash.hpp sliding_average.hpp socket.hpp '/usr/local/include/
libtorrent/.'
 /usr/bin/mkdir -p '/usr/local/include/libtorrent/aux_'
 /usr/bin/install -c -m 644  aux_/allocating_handler.hpp aux_/aligned_storage.hpp aux_/aligned_union.hpp aux_/bind_to_device.hpp aux_/keepalive.hpp aux_/block_cache_reference.hpp aux_/c
ontainer_wrapper.hpp aux_/cpuid.hpp aux_/disable_warnings_push.hpp aux_/disable_warnings_pop.hpp aux_/disk_job_fence.hpp aux_/deferred_handler.hpp aux_/deprecated.hpp aux_/dev_random.hp
p aux_/deque.hpp aux_/escape_string.hpp aux_/export.hpp aux_/generate_peer_id.hpp aux_/io.hpp aux_/listen_socket_handle.hpp aux_/path.hpp aux_/merkle.hpp aux_/session_call.hpp aux_/sess
ion_impl.hpp aux_/session_settings.hpp aux_/session_udp_sockets.hpp aux_/set_socket_buffer.hpp aux_/proxy_settings.hpp aux_/session_interface.hpp aux_/suggest_piece.hpp aux_/socket_type
.hpp aux_/storage_piece_set.hpp aux_/string_ptr.hpp aux_/time.hpp aux_/file_progress.hpp aux_/openssl.hpp aux_/byteswap.hpp aux_/route.h aux_/cppint_import_export.hpp aux_/ffs.hpp '/usr
/local/include/libtorrent/aux_'
 /usr/bin/mkdir -p '/usr/local/include/libtorrent/kademlia'
 /usr/bin/install -c -m 644  kademlia/announce_flags.hpp kademlia/dht_settings.hpp kademlia/dht_state.hpp kademlia/dht_storage.hpp kademlia/dht_tracker.hpp kademlia/dht_observer.hpp kad
emlia/direct_request.hpp kademlia/dos_blocker.hpp kademlia/find_data.hpp kademlia/io.hpp kademlia/put_data.hpp kademlia/msg.hpp kademlia/node.hpp kademlia/node_entry.hpp kademlia/node_i
d.hpp kademlia/observer.hpp kademlia/refresh.hpp kademlia/routing_table.hpp kademlia/rpc_manager.hpp kademlia/traversal_algorithm.hpp kademlia/types.hpp kademlia/ed25519.hpp kademlia/it
em.hpp kademlia/get_item.hpp kademlia/sample_infohashes.hpp kademlia/get_peers.hpp '/usr/local/include/libtorrent/kademlia'
 /usr/bin/install -c -m 644  socket_io.hpp socks5_stream.hpp ssl_stream.hpp stack_allocator.hpp stat.hpp stat_cache.hpp storage.hpp storage_defs.hpp tailqueue.hpp string_view.hpp string
_util.hpp time.hpp timestamp_history.hpp torrent_flags.hpp torrent_handle.hpp torrent.hpp torrent_info.hpp torrent_peer.hpp torrent_peer_allocator.hpp tracker_manager.hpp torrent_status
.hpp udp_socket.hpp udp_tracker_connection.hpp union_endpoint.hpp units.hpp upnp.hpp utp_socket_manager.hpp utp_stream.hpp utf8.hpp vector_utils.hpp version.hpp web_connection_base.hpp
web_peer_connection.hpp xml_parse.hpp span.hpp download_priority.hpp index_range.hpp '/usr/local/include/libtorrent/.'
 /usr/bin/mkdir -p '/usr/local/include/libtorrent/aux_'
 /usr/bin/install -c -m 644  aux_/portmap.hpp aux_/lsd.hpp aux_/has_block.hpp aux_/scope_end.hpp aux_/vector.hpp aux_/win_crypto_provider.hpp aux_/win_util.hpp aux_/storage_utils.hpp au
x_/numeric_cast.hpp aux_/unique_ptr.hpp aux_/alloca.hpp aux_/throw.hpp aux_/array.hpp aux_/ip_notifier.hpp aux_/noexcept_movable.hpp aux_/torrent_impl.hpp aux_/instantiate_connection.hp
p aux_/range.hpp aux_/windows.hpp aux_/pool.hpp '/usr/local/include/libtorrent/aux_'
 /usr/bin/mkdir -p '/usr/local/include/libtorrent/extensions'
 /usr/bin/install -c -m 644  extensions/smart_ban.hpp extensions/ut_metadata.hpp extensions/ut_pex.hpp '/usr/local/include/libtorrent/extensions'
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/include/libtorrent'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/include/libtorrent'
Making install in src
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/src'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/src'
 /usr/bin/mkdir -p '/usr/local/lib'
 /bin/bash ../libtool   --mode=install /usr/bin/install -c   libtorrent-rasterbar.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libtorrent-rasterbar.so.10.0.0 /usr/local/lib/libtorrent-rasterbar.so.10.0.0
libtool: install: (cd /usr/local/lib && { ln -s -f libtorrent-rasterbar.so.10.0.0 libtorrent-rasterbar.so.10 || { rm -f libtorrent-rasterbar.so.10 && ln -s libtorrent-rasterbar.so.10.0.
0 libtorrent-rasterbar.so.10; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libtorrent-rasterbar.so.10.0.0 libtorrent-rasterbar.so || { rm -f libtorrent-rasterbar.so && ln -s libtorrent-rasterbar.so.10.0.0 libt
orrent-rasterbar.so; }; })
libtool: install: /usr/bin/install -c .libs/libtorrent-rasterbar.lai /usr/local/lib/libtorrent-rasterbar.la
libtool: install: /usr/bin/install -c .libs/libtorrent-rasterbar.a /usr/local/lib/libtorrent-rasterbar.a
libtool: install: chmod 644 /usr/local/lib/libtorrent-rasterbar.a
libtool: install: ranlib /usr/local/lib/libtorrent-rasterbar.a
libtool: finish: PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/lib

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the '-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the 'LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the 'LD_RUN_PATH' environment variable
     during linking
   - use the '-Wl,-rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to '/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/src'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/src'
Making install in examples
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/examples'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/examples'
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/examples'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/examples'
Making install in test
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/test'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/test'
make[2]: Nothing to be done for 'install-exec-am'.
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/test'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/test'
Making install in bindings
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings'
Making install in python
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings/python'
/usr/bin/python ./setup.py build
running build
running build_ext
project-config.jam contents:
import feature ;
feature.feature libtorrent-python : on ;
using python : 3.9 : "/usr/bin/python" : "/usr/include/python3.9" "/usr/include/python3.9" : : <libtorrent-python>on : ".cpython-39-x86_64-linux-gnu" ;

b2 boost-link=shared libtorrent-link=prebuilt deprecated-functions=on variant=release address-model=64 python=3.9 libtorrent-python=on python-install-path=/home/patrick/workspaces/ubunt
u/deluge/libtorrent/bindings/python/build/lib.linux-x86_64-3.9 install_module linkflags=-L/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings/python/../../src/.libs linkflags=-L/
usr/lib/x86_64-linux-gnu linkflags=-L/usr/lib/x86_64-linux-gnu
<string>:1: DeprecationWarning: SO is deprecated, use EXT_SUFFIX
CXXFLAGS =
LDFLAGS =
OS = LINUX
CXXFLAGS =
LDFLAGS =
warning: No toolsets are configured.
warning: Configuring default toolset "gcc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
...patience...
...found 451 targets...
make[3]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings/python'
/usr/bin/python ./setup.py install --prefix=/usr/local
running install
running bdist_egg
running egg_info
writing python_libtorrent.egg-info/PKG-INFO
writing dependency_links to python_libtorrent.egg-info/dependency_links.txt
writing top-level names to python_libtorrent.egg-info/top_level.txt
reading manifest file 'python_libtorrent.egg-info/SOURCES.txt'
writing manifest file 'python_libtorrent.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_ext
project-config.jam contents:
import feature ;
feature.feature libtorrent-python : on ;
using python : 3.9 : "/usr/bin/python" : "/usr/include/python3.9" "/usr/include/python3.9" : : <libtorrent-python>on : ".cpython-39-x86_64-linux-gnu" ;

b2 boost-link=shared libtorrent-link=prebuilt deprecated-functions=on variant=release address-model=64 python=3.9 libtorrent-python=on python-install-path=/home/patrick/workspaces/ubunt
u/deluge/libtorrent/bindings/python/build/lib.linux-x86_64-3.9 install_module linkflags=-L/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings/python/../../src/.libs linkflags=-L/
usr/lib/x86_64-linux-gnu linkflags=-L/usr/lib/x86_64-linux-gnu
<string>:1: DeprecationWarning: SO is deprecated, use EXT_SUFFIX
CXXFLAGS =
LDFLAGS =
OS = LINUX
CXXFLAGS =
LDFLAGS =
warning: No toolsets are configured.
warning: Configuring default toolset "gcc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
...patience...
...found 451 targets...
creating build/bdist.linux-x86_64/egg
copying build/lib.linux-x86_64-3.9/libtorrent.cpython-39-x86_64-linux-gnu.so -> build/bdist.linux-x86_64/egg
creating stub loader for libtorrent.cpython-39-x86_64-linux-gnu.so
byte-compiling build/bdist.linux-x86_64/egg/libtorrent.py to libtorrent.cpython-39.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
copying python_libtorrent.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_libtorrent.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_libtorrent.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_libtorrent.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
writing build/bdist.linux-x86_64/egg/EGG-INFO/native_libs.txt
zip_safe flag not set; analyzing archive contents...
__pycache__.libtorrent.cpython-39: module references __file__
creating 'dist/python_libtorrent-1.2.13-py3.9-linux-x86_64.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing python_libtorrent-1.2.13-py3.9-linux-x86_64.egg
removing '/usr/local/lib/python3.9/dist-packages/python_libtorrent-1.2.13-py3.9-linux-x86_64.egg' (and everything under it)
creating /usr/local/lib/python3.9/dist-packages/python_libtorrent-1.2.13-py3.9-linux-x86_64.egg
Extracting python_libtorrent-1.2.13-py3.9-linux-x86_64.egg to /usr/local/lib/python3.9/dist-packages
python-libtorrent 1.2.13 is already the active version in easy-install.pth

Installed /usr/local/lib/python3.9/dist-packages/python_libtorrent-1.2.13-py3.9-linux-x86_64.egg
Processing dependencies for python-libtorrent==1.2.13
Finished processing dependencies for python-libtorrent==1.2.13
make[3]: Nothing to be done for 'install-data-am'.
make[3]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings/python'
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings/python'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings'
make[3]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings'
make[3]: Nothing to be done for 'install-exec-am'.
make[3]: Nothing to be done for 'install-data-am'.
make[3]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings'
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/bindings'
Making install in tools
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/tools'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/tools'
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/tools'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent/tools'
make[1]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent'
make[2]: Entering directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent'
make[2]: Nothing to be done for 'install-exec-am'.
 /usr/bin/mkdir -p '/usr/local/share/cmake/Modules'
 /usr/bin/install -c -m 644 examples/cmake/FindLibtorrentRasterbar.cmake '/usr/local/share/cmake/Modules'
 /usr/bin/mkdir -p '/usr/local/lib/pkgconfig'
 /usr/bin/install -c -m 644 libtorrent-rasterbar.pc '/usr/local/lib/pkgconfig'
make[2]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent'
make[1]: Leaving directory '/home/patrick/workspaces/ubuntu/deluge/libtorrent'

======================== Installation successful ==========================

Copying documentation directory...
./
./NEWS
./ChangeLog
./README.rst
./docs/
./docs/disk_cache.diagram
./docs/troubleshooting_thumb.png
./docs/gen_reference_doc.py
./docs/contributing.rst
./docs/troubleshooting.rst
./docs/gen_settings_doc.py
./docs/style.css
./docs/storage.diagram
./docs/merkle_tree.png
./docs/streaming.rst
./docs/troubleshooting.dot
./docs/read_disk_buffers.diagram
./docs/hash_distribution.png
./docs/screenshot.png
./docs/cwnd_thumb.png
./docs/extension_protocol.rst
./docs/projects.rst
./docs/template.txt
./docs/building.rst
./docs/manual.rst
./docs/dht_sec.rst
./docs/merkle_tree.graffle
./docs/our_delay_base_thumb.png
./docs/screenshot_thumb.png
./docs/index.rst
./docs/client_test.rst
./docs/stylesheet
./docs/write_disk_buffers.diagram
./docs/join_rst.py
./docs/bitcoin.png
./docs/python_binding.rst
./docs/dht_rss.rst
./docs/ip_id_v4.png
./docs/gen_stats_doc.py
./docs/upgrade_to_1.2.rst
./docs/tutorial.rst
./docs/utp_stack.diagram
./docs/template2.txt
./docs/gen_todo.py
./docs/ip_id_v6.png
./docs/hacking.diagram
./docs/filter-rst.py
./docs/our_delay_base.png
./docs/tuning.rst
./docs/cwnd.png
./docs/img/
./docs/img/dotline.gif
./docs/img/pp-acceptance-medium.png
./docs/img/orange.png
./docs/img/blue_top.png
./docs/img/bg.png
./docs/img/blue_bottom.png
./docs/img/minus.gif
./docs/dht_extensions.rst
./docs/delays_thumb.png
./docs/header.rst
./docs/delays.png
./docs/dht_store.rst
./docs/fuzzing.rst
./docs/hunspell/
./docs/hunspell/libtorrent.dic
./docs/hunspell/en_US.dic
./docs/hunspell/en_US.aff
./docs/logo/
./docs/logo/monochrome2.png
./docs/logo/libtorrent-red.png
./docs/logo/monochrome.png
./docs/logo/libtorrent-green.png
./docs/logo/libtorrent-yellow.png
./docs/logo/libtorrent.svg
./docs/logo/license
./docs/logo/libtorrent-blue.png
./docs/logo/monochrome.svg
./docs/complete_bit_prefixes.png
./docs/utp.rst
./docs/rst.css
./docs/makefile
./docs/features.rst
./docs/udp_tracker_protocol.rst
./docs/examples.rst
./docs/hacking.rst
./LICENSE
./COPYING
./AUTHORS

Some of the files created by the installation are inside the home directory: /home

You probably don't want them to be included in the package.
Do you want me to list them?  [n]: y
Should I exclude them from the package? (Saying yes is a good idea)  [n]:

Some of the files created by the installation are inside the build
directory: /home/patrick/workspaces/ubuntu/deluge/libtorrent

You probably don't want them to be included in the package,
especially if they are inside your home directory.
Do you want me to list them?  [n]: ^C

*** SIGINT received ***

Restoring overwritten files from backup...^C

/usr/bin/checkinstall: line 95: /usr/bin/gettext: No such file or directory


/usr/bin/checkinstall: line 102: /usr/bin/gettext: No such file or directory
/usr/bin/checkinstall: line 319: /usr/bin/rm: No such file or directory
/usr/bin/checkinstall: line 320: /usr/bin/rm: No such file or directory
/usr/bin/checkinstall: line 95: /usr/bin/gettext: No such file or directory


/usr/bin/checkinstall: line 95: /usr/bin/gettext: No such file or directory


bash: /home/patrick/go/bin/powerline-go: No such file or directory

patrick@localhost # pwd
/home/patrick/workspaces/ubuntu/deluge/libtorrent

From there, all commands were broken, including bash, ls and sudo.

Not sure why but I believe this is caused by checkinstall wanting to restore an non-existent or wrong backup tar archive.

I had to reboot on a recovery medium to restore the symbolic link from /usr/lib to /lib:

# sudo mount -rw -o remount /dev/nvme0n1p1 /mnt
# cd /mnt
# ls -ld /lib*
lrwxrwxrwx 1 root root    9 Apr 10 10:00 lib32 -> usr/lib32
lrwxrwxrwx 1 root root    9 Apr 10 10:00 lib64 -> usr/lib64
drwxr-xr-x 3 root root 4096 Apr 15 08:55 lib
lrwxrwxrwx 1 root root   10 Apr 10 10:00 libx32 -> usr/libx32
# sudo mv lib{,.bak}
# sudo ln -snf usr/lib lib
# ls -ld lib*
lrwxrwxrwx 1 root root    7 Apr 15 14:13 lib -> usr/lib
lrwxrwxrwx 1 root root    9 Apr 10 10:00 lib32 -> usr/lib32
lrwxrwxrwx 1 root root    9 Apr 10 10:00 lib64 -> usr/lib64
drwxr-xr-x 3 root root 4096 Apr 15 08:55 lib.bak
lrwxrwxrwx 1 root root   10 Apr 10 10:00 libx32 -> usr/libx32
@pdecat
Copy link
Author

pdecat commented Apr 15, 2021

Maybe it is caused by the second Ctrl-C interrupting the first tar command here:

    echogn "Restoring overwritten files from backup..."
    cd ${TMP_DIR}/BACKUP
       files=$(ls -A)
       $TAR -cpf - $files | $TAR -f - -xvpC / &> /dev/null
    okfail

@pikdum
Copy link

pikdum commented Apr 7, 2022

Thanks for the instructions to recover, just ran into the same issue when packaging emacs.

@Nikolai5
Copy link

Had the same symptoms of all commands broken including ls, couldn't open anything. Couldn't even shut down, rebooting caused a kernel panic.

I had to restore snapshot via timeshift.

@NobodyIII
Copy link

I'm having the same problem with using checkinstall for gcc for arm-none-eabi, without even using Ctrl+C. It just crashed and bricked my system until I fixed it.

I tried again, thinking I was ready, with a statically-linked busybox binary, but I couldn't use sudo to get root privs to fix it, so it died again.

The specific file that got placed in the new /lib is /lib/terminfo/x/xterm-256color. How can I fix this? I really want to use checkinstall instead of make install.

@giuliomoro
Copy link
Owner

This is probably the wrong repo to ask that question. I created it only to share a bugfix I made years ago.

@IamPhytan
Copy link

Thanks for the instructions !
I originally thought that my whole system was broken, but turns out it's just a broken symlink 😅
Interesting to know that a single symlink is crucial to so many terminal commands

@pglpm
Copy link

pglpm commented Feb 3, 2024

This just happened to me it seems. I'm on Ubuntu 20.04. Would the fix work for me too? I haven't restarted my system yet; could this be done without booting from an external drive?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants