Package Details: bcc 0.2.0-1

Git Clone URL: https://aur.archlinux.org/bcc.git (read-only)
Package Base: bcc
Description: BPF Compiler Collection - C library and examples
Upstream URL: https://github.com/iovisor/bcc
Licenses: Apache
Conflicts: bcc-git
Provides: bcc, libbcc
Submitter: troyengel
Maintainer: troyengel
Last Packager: troyengel
Votes: 11
Popularity: 1.242110
First Submitted: 2016-01-01 18:37
Last Updated: 2016-10-18 23:59

Latest Comments

troyengel commented on 2016-10-18 23:57

I'm about to release a new 0.2.0 package, be aware it does not provide Lua support yet. It appears we need a luajit static library that our luajit package doesn't create, I tagged an upstream issue for help sorting it out: https://github.com/iovisor/bcc/issues/566

troyengel commented on 2016-07-30 17:52

Something is going wrong in your build - the python-bcc package should have zero files in /usr/lib/python2.x -- it should look like this:

$ pacman -Ql python-bcc
python-bcc /usr/
python-bcc /usr/lib/
python-bcc /usr/lib/python3.5/
python-bcc /usr/lib/python3.5/site-packages/
python-bcc /usr/lib/python3.5/site-packages/bcc-0.1.8-py3.5.egg-info
python-bcc /usr/lib/python3.5/site-packages/bcc/
python-bcc /usr/lib/python3.5/site-packages/bcc/__init__.py
python-bcc /usr/lib/python3.5/site-packages/bcc/__pycache__/
python-bcc /usr/lib/python3.5/site-packages/bcc/__pycache__/__init__.cpython-35.pyc
python-bcc /usr/lib/python3.5/site-packages/bcc/__pycache__/libbcc.cpython-35.pyc
python-bcc /usr/lib/python3.5/site-packages/bcc/__pycache__/table.cpython-35.pyc
python-bcc /usr/lib/python3.5/site-packages/bcc/libbcc.py
python-bcc /usr/lib/python3.5/site-packages/bcc/table.py

Is your 'python' actually a link to python3 the way it's supposed to be? Something like this:

$ which python
/usr/bin/python
$ pacman -Qo /usr/bin/python
/usr/bin/python is owned by python 3.5.2-1

Here is the exact line used to build the child package:

https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=bcc#n73

All we're doing is passing the name of the interpreter over to the cmake file and it does the rest; it feels like it's accidentally finding your python2 instance instead of your python3 instance and building it incorrectly. Walk through the build steps in the PKGBUILD file manually and see if you can spot exactly where it's going wrong...

I just ran a makepkg here on it and confirm that I am not getting python2 library files in the python-bcc package, they are the python3 as expected.

==> Starting package_python-bcc()...
-- Revision is 0.1.8
-- Found LLVM: /usr/include
CMake Warning at tests/cc/CMakeLists.txt:10 (message):
Recommended test program 'netperf' not found


CMake Warning at tests/cc/CMakeLists.txt:14 (message):
Recommended test program 'iperf' not found


-- Configuring done
-- Generating done
-- Build files have been written to: /home/tengel/abs/bcc/src/bcc-0.1.8/build
[ 17%] Built target clang_frontend
[ 65%] Built target b_frontend
[ 95%] Built target bcc
[100%] Built target bcc_py
[100%] Built target bcc_py
Install the project...
-- Install configuration: "Release"
running install
running build
running build_py
running install_lib
creating /home/tengel/abs/bcc/pkg/python-bcc/usr
creating /home/tengel/abs/bcc/pkg/python-bcc/usr/lib
creating /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5
creating /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages
creating /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc
copying build/lib/bcc/libbcc.py -> /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc
copying build/lib/bcc/__init__.py -> /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc
copying build/lib/bcc/table.py -> /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc
byte-compiling /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc/libbcc.py to libbcc.cpython-35.pyc
byte-compiling /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc/__init__.py to __init__.cpython-35.pyc
byte-compiling /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc/table.py to table.cpython-35.pyc
running install_egg_info
Writing /home/tengel/abs/bcc/pkg/python-bcc/usr/lib/python3.5/site-packages/bcc-0.1.8-py3.5.egg-info
==> Tidying install...
-> Removing libtool files...
-> Purging unwanted files...
-> Removing static library files...
-> Stripping unneeded symbols from binaries and libraries...
-> Compressing man and info pages...
==> Checking for packaging issue...
==> Creating package "python-bcc"...
-> Generating .PKGINFO file...
-> Generating .BUILDINFO file...
-> Generating .MTREE file...
-> Compressing package...

Make sure yours looks like the above.

bretthoerner commented on 2016-07-30 17:36

I had the issue that the other user mentioned when I used yaourt, I did it manually (used cower) and it worked fine.

For reference/Google:

Packages (4) bcc-0.1.8-2 bcc-tools-0.1.8-2 python-bcc-0.1.8-2 python2-bcc-0.1.8-2

Total Installed Size: 37.65 MiB

:: Proceed with installation? [Y/n]
(4/4) checking keys in keyring [########################################################################################] 100%
(4/4) checking package integrity [########################################################################################] 100%
(4/4) loading package files [########################################################################################] 100%
(4/4) checking for file conflicts [########################################################################################] 100%
error: failed to commit transaction (conflicting files)
/usr/lib/python2.7/site-packages/bcc-0.1.8-py2.7.egg-info exists in both 'python2-bcc' and 'python-bcc'
/usr/lib/python2.7/site-packages/bcc/__init__.py exists in both 'python2-bcc' and 'python-bcc'
/usr/lib/python2.7/site-packages/bcc/libbcc.py exists in both 'python2-bcc' and 'python-bcc'
/usr/lib/python2.7/site-packages/bcc/table.py exists in both 'python2-bcc' and 'python-bcc'
Errors occurred, no packages were upgraded.

troyengel commented on 2016-07-09 13:40

I went ahead and just added depends=('linux-headers') to the main BCC package, as to do anything meaningful with it (not just the provided examples) you need that installed. Thanks for the report, I'm working on updating bcc-git package as well.

codemac commented on 2016-07-09 00:44

None of the example work until you install kernel-headers.

Please add this to the dependencies of bcc-tools, if not bcc.

troyengel commented on 2016-06-19 17:44

I uninstalled my working versions, redownloaded (cower -d bcc), did a makepkg and installed without problems:

$ sudo pacman -U bcc-0.1.8-1-x86_64.pkg.tar.xz bcc-tools-0.1.8-1-x86_64.pkg.tar.xz python-bcc-0.1.8-1-x86_64.pkg.tar.xz python2-bcc-0.1.8-1-x86_64.pkg.tar.xz
loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (4) bcc-0.1.8-1 bcc-tools-0.1.8-1 python-bcc-0.1.8-1
python2-bcc-0.1.8-1

Total Installed Size: 37.87 MiB

:: Proceed with installation? [Y/n]
(4/4) checking keys in keyring [######################] 100%
(4/4) checking package integrity [######################] 100%
(4/4) loading package files [######################] 100%
(4/4) checking for file conflicts [######################] 100%
(4/4) checking available disk space [######################] 100%
:: Processing package changes...
(1/4) installing bcc [######################] 100%
Optional dependencies for bcc
bcc-tools: Python utilites using the BCC library [pending]
python-bcc: Python 3 bindings for BCC [pending]
python2-bcc: Python 2 bindings for BCC [pending]
(2/4) installing bcc-tools [######################] 100%
Optional dependencies for bcc-tools
python-bcc: Python 3 bindings for BCC [pending]
python2-bcc: Python 2 bindings for BCC [pending]
(3/4) installing python-bcc [######################] 100%
(4/4) installing python2-bcc [######################] 100%


You'll need to post your exact error, my python2 and python3 don't seem to be conflicting.

chrisvest commented on 2016-06-15 08:58

This doesn't want to install because python 2 and python 3 are conflicting, apparently.