How To Install libpmemobj-devel on Fedora 36

In this tutorial we learn how to install libpmemobj-devel in Fedora 36. libpmemobj-devel is Development files for the Persistent Memory Transactional Object Store library

Introduction

In this tutorial we learn how to install libpmemobj-devel on Fedora 36.

What is libpmemobj-devel

The libpmemobj library provides a transactional object store, providing memory allocation, transactions, and general facilities for persistent memory programming. Developers new to persistent memory probably want to start with this library.

We can use yum or dnf to install libpmemobj-devel on Fedora 36. In this tutorial we discuss both methods but you only need to choose one of method to install libpmemobj-devel.

Install libpmemobj-devel on Fedora 36 Using dnf

Update yum database with dnf using the following command.

sudo dnf makecache --refresh

After updating yum database, We can install libpmemobj-devel using dnf by running the following command:

sudo dnf -y install libpmemobj-devel

Install libpmemobj-devel on Fedora 36 Using yum

Update yum database with yum using the following command.

sudo yum makecache --refresh

After updating yum database, We can install libpmemobj-devel using yum by running the following command:

sudo yum -y install libpmemobj-devel

How To Uninstall libpmemobj-devel on Fedora 36

To uninstall only the libpmemobj-devel package we can use the following command:

sudo dnf remove libpmemobj-devel

libpmemobj-devel Package Contents on Fedora 36

/usr/include/libpmemobj
/usr/include/libpmemobj.h
/usr/include/libpmemobj/action.h
/usr/include/libpmemobj/action_base.h
/usr/include/libpmemobj/atomic.h
/usr/include/libpmemobj/atomic_base.h
/usr/include/libpmemobj/base.h
/usr/include/libpmemobj/ctl.h
/usr/include/libpmemobj/iterator.h
/usr/include/libpmemobj/iterator_base.h
/usr/include/libpmemobj/lists_atomic.h
/usr/include/libpmemobj/lists_atomic_base.h
/usr/include/libpmemobj/pool.h
/usr/include/libpmemobj/pool_base.h
/usr/include/libpmemobj/thread.h
/usr/include/libpmemobj/tx.h
/usr/include/libpmemobj/tx_base.h
/usr/include/libpmemobj/types.h
/usr/lib64/libpmemobj.so
/usr/lib64/pkgconfig/libpmemobj.pc
/usr/share/doc/libpmemobj-devel
/usr/share/doc/libpmemobj-devel/CONTRIBUTING.md
/usr/share/doc/libpmemobj-devel/ChangeLog
/usr/share/doc/libpmemobj-devel/README.md
/usr/share/licenses/libpmemobj-devel
/usr/share/licenses/libpmemobj-devel/LICENSE
/usr/share/man/man3/d_ro.3.gz
/usr/share/man/man3/d_rw.3.gz
/usr/share/man/man3/direct_ro.3.gz
/usr/share/man/man3/direct_rw.3.gz
/usr/share/man/man3/oid_equals.3.gz
/usr/share/man/man3/oid_instanceof.3.gz
/usr/share/man/man3/oid_is_null.3.gz
/usr/share/man/man3/pmemobj_action.3.gz
/usr/share/man/man3/pmemobj_alloc.3.gz
/usr/share/man/man3/pmemobj_alloc_usable_size.3.gz
/usr/share/man/man3/pmemobj_cancel.3.gz
/usr/share/man/man3/pmemobj_check.3.gz
/usr/share/man/man3/pmemobj_check_version.3.gz
/usr/share/man/man3/pmemobj_close.3.gz
/usr/share/man/man3/pmemobj_cond_broadcast.3.gz
/usr/share/man/man3/pmemobj_cond_signal.3.gz
/usr/share/man/man3/pmemobj_cond_timedwait.3.gz
/usr/share/man/man3/pmemobj_cond_wait.3.gz
/usr/share/man/man3/pmemobj_cond_zero.3.gz
/usr/share/man/man3/pmemobj_create.3.gz
/usr/share/man/man3/pmemobj_ctl_exec.3.gz
/usr/share/man/man3/pmemobj_ctl_get.3.gz
/usr/share/man/man3/pmemobj_ctl_set.3.gz
/usr/share/man/man3/pmemobj_defer_free.3.gz
/usr/share/man/man3/pmemobj_defrag.3.gz
/usr/share/man/man3/pmemobj_direct.3.gz
/usr/share/man/man3/pmemobj_drain.3.gz
/usr/share/man/man3/pmemobj_errormsg.3.gz
/usr/share/man/man3/pmemobj_f_mem_nodrain.3.gz
/usr/share/man/man3/pmemobj_f_mem_noflush.3.gz
/usr/share/man/man3/pmemobj_f_mem_nontemporal.3.gz
/usr/share/man/man3/pmemobj_f_mem_temporal.3.gz
/usr/share/man/man3/pmemobj_f_mem_wb.3.gz
/usr/share/man/man3/pmemobj_f_mem_wc.3.gz
/usr/share/man/man3/pmemobj_f_relaxed.3.gz
/usr/share/man/man3/pmemobj_first.3.gz
/usr/share/man/man3/pmemobj_flush.3.gz
/usr/share/man/man3/pmemobj_free.3.gz
/usr/share/man/man3/pmemobj_get_user_data.3.gz
/usr/share/man/man3/pmemobj_list_insert.3.gz
/usr/share/man/man3/pmemobj_list_insert_new.3.gz
/usr/share/man/man3/pmemobj_list_move.3.gz
/usr/share/man/man3/pmemobj_list_remove.3.gz
/usr/share/man/man3/pmemobj_memcpy.3.gz
/usr/share/man/man3/pmemobj_memcpy_persist.3.gz
/usr/share/man/man3/pmemobj_memmove.3.gz
/usr/share/man/man3/pmemobj_memset.3.gz
/usr/share/man/man3/pmemobj_memset_persist.3.gz
/usr/share/man/man3/pmemobj_mutex_lock.3.gz
/usr/share/man/man3/pmemobj_mutex_timedlock.3.gz
/usr/share/man/man3/pmemobj_mutex_trylock.3.gz
/usr/share/man/man3/pmemobj_mutex_unlock.3.gz
/usr/share/man/man3/pmemobj_mutex_zero.3.gz
/usr/share/man/man3/pmemobj_next.3.gz
/usr/share/man/man3/pmemobj_oid.3.gz
/usr/share/man/man3/pmemobj_open.3.gz
/usr/share/man/man3/pmemobj_persist.3.gz
/usr/share/man/man3/pmemobj_pool_by_oid.3.gz
/usr/share/man/man3/pmemobj_pool_by_ptr.3.gz
/usr/share/man/man3/pmemobj_publish.3.gz
/usr/share/man/man3/pmemobj_realloc.3.gz
/usr/share/man/man3/pmemobj_reserve.3.gz
/usr/share/man/man3/pmemobj_root.3.gz
/usr/share/man/man3/pmemobj_root_construct.3.gz
/usr/share/man/man3/pmemobj_root_size.3.gz
/usr/share/man/man3/pmemobj_rwlock_rdlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_timedrdlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_timedwrlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_tryrdlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_trywrlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_unlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_wrlock.3.gz
/usr/share/man/man3/pmemobj_rwlock_zero.3.gz
/usr/share/man/man3/pmemobj_set_funcs.3.gz
/usr/share/man/man3/pmemobj_set_user_data.3.gz
/usr/share/man/man3/pmemobj_set_value.3.gz
/usr/share/man/man3/pmemobj_strdup.3.gz
/usr/share/man/man3/pmemobj_tx_abort.3.gz
/usr/share/man/man3/pmemobj_tx_add_range.3.gz
/usr/share/man/man3/pmemobj_tx_add_range_direct.3.gz
/usr/share/man/man3/pmemobj_tx_alloc.3.gz
/usr/share/man/man3/pmemobj_tx_begin.3.gz
/usr/share/man/man3/pmemobj_tx_commit.3.gz
/usr/share/man/man3/pmemobj_tx_end.3.gz
/usr/share/man/man3/pmemobj_tx_errno.3.gz
/usr/share/man/man3/pmemobj_tx_free.3.gz
/usr/share/man/man3/pmemobj_tx_get_failure_behavior.3.gz
/usr/share/man/man3/pmemobj_tx_get_user_data.3.gz
/usr/share/man/man3/pmemobj_tx_lock.3.gz
/usr/share/man/man3/pmemobj_tx_log_append_buffer.3.gz
/usr/share/man/man3/pmemobj_tx_log_auto_alloc.3.gz
/usr/share/man/man3/pmemobj_tx_log_intents_max_size.3.gz
/usr/share/man/man3/pmemobj_tx_log_snapshots_max_size.3.gz
/usr/share/man/man3/pmemobj_tx_process.3.gz
/usr/share/man/man3/pmemobj_tx_publish.3.gz
/usr/share/man/man3/pmemobj_tx_realloc.3.gz
/usr/share/man/man3/pmemobj_tx_set_failure_behavior.3.gz
/usr/share/man/man3/pmemobj_tx_set_user_data.3.gz
/usr/share/man/man3/pmemobj_tx_stage.3.gz
/usr/share/man/man3/pmemobj_tx_strdup.3.gz
/usr/share/man/man3/pmemobj_tx_wcsdup.3.gz
/usr/share/man/man3/pmemobj_tx_xadd_range.3.gz
/usr/share/man/man3/pmemobj_tx_xadd_range_direct.3.gz
/usr/share/man/man3/pmemobj_tx_xalloc.3.gz
/usr/share/man/man3/pmemobj_tx_xfree.3.gz
/usr/share/man/man3/pmemobj_tx_xlock.3.gz
/usr/share/man/man3/pmemobj_tx_xlog_append_buffer.3.gz
/usr/share/man/man3/pmemobj_tx_xpublish.3.gz
/usr/share/man/man3/pmemobj_tx_xstrdup.3.gz
/usr/share/man/man3/pmemobj_tx_xwcsdup.3.gz
/usr/share/man/man3/pmemobj_tx_zalloc.3.gz
/usr/share/man/man3/pmemobj_tx_zrealloc.3.gz
/usr/share/man/man3/pmemobj_type_num.3.gz
/usr/share/man/man3/pmemobj_volatile.3.gz
/usr/share/man/man3/pmemobj_wcsdup.3.gz
/usr/share/man/man3/pmemobj_xalloc.3.gz
/usr/share/man/man3/pmemobj_xflush.3.gz
/usr/share/man/man3/pmemobj_xpersist.3.gz
/usr/share/man/man3/pmemobj_xreserve.3.gz
/usr/share/man/man3/pmemobj_zalloc.3.gz
/usr/share/man/man3/pmemobj_zrealloc.3.gz
/usr/share/man/man3/pobj_alloc.3.gz
/usr/share/man/man3/pobj_first.3.gz
/usr/share/man/man3/pobj_first_type_num.3.gz
/usr/share/man/man3/pobj_foreach.3.gz
/usr/share/man/man3/pobj_foreach_safe.3.gz
/usr/share/man/man3/pobj_foreach_safe_type.3.gz
/usr/share/man/man3/pobj_foreach_type.3.gz
/usr/share/man/man3/pobj_free.3.gz
/usr/share/man/man3/pobj_layout_begin.3.gz
/usr/share/man/man3/pobj_layout_end.3.gz
/usr/share/man/man3/pobj_layout_name.3.gz
/usr/share/man/man3/pobj_layout_root.3.gz
/usr/share/man/man3/pobj_layout_toid.3.gz
/usr/share/man/man3/pobj_layout_types_num.3.gz
/usr/share/man/man3/pobj_list_empty.3.gz
/usr/share/man/man3/pobj_list_entry.3.gz
/usr/share/man/man3/pobj_list_first.3.gz
/usr/share/man/man3/pobj_list_foreach.3.gz
/usr/share/man/man3/pobj_list_foreach_reverse.3.gz
/usr/share/man/man3/pobj_list_head.3.gz
/usr/share/man/man3/pobj_list_insert_after.3.gz
/usr/share/man/man3/pobj_list_insert_before.3.gz
/usr/share/man/man3/pobj_list_insert_head.3.gz
/usr/share/man/man3/pobj_list_insert_new_after.3.gz
/usr/share/man/man3/pobj_list_insert_new_before.3.gz
/usr/share/man/man3/pobj_list_insert_new_head.3.gz
/usr/share/man/man3/pobj_list_insert_new_tail.3.gz
/usr/share/man/man3/pobj_list_insert_tail.3.gz
/usr/share/man/man3/pobj_list_last.3.gz
/usr/share/man/man3/pobj_list_move_element_after.3.gz
/usr/share/man/man3/pobj_list_move_element_before.3.gz
/usr/share/man/man3/pobj_list_move_element_head.3.gz
/usr/share/man/man3/pobj_list_move_element_tail.3.gz
/usr/share/man/man3/pobj_list_next.3.gz
/usr/share/man/man3/pobj_list_prev.3.gz
/usr/share/man/man3/pobj_list_remove.3.gz
/usr/share/man/man3/pobj_list_remove_free.3.gz
/usr/share/man/man3/pobj_new.3.gz
/usr/share/man/man3/pobj_next.3.gz
/usr/share/man/man3/pobj_next_type_num.3.gz
/usr/share/man/man3/pobj_realloc.3.gz
/usr/share/man/man3/pobj_reserve_alloc.3.gz
/usr/share/man/man3/pobj_reserve_new.3.gz
/usr/share/man/man3/pobj_root.3.gz
/usr/share/man/man3/pobj_xreserve_alloc.3.gz
/usr/share/man/man3/pobj_xreserve_new.3.gz
/usr/share/man/man3/pobj_zalloc.3.gz
/usr/share/man/man3/pobj_znew.3.gz
/usr/share/man/man3/pobj_zrealloc.3.gz
/usr/share/man/man3/toid.3.gz
/usr/share/man/man3/toid_assign.3.gz
/usr/share/man/man3/toid_declare.3.gz
/usr/share/man/man3/toid_declare_root.3.gz
/usr/share/man/man3/toid_equals.3.gz
/usr/share/man/man3/toid_is_null.3.gz
/usr/share/man/man3/toid_offsetof.3.gz
/usr/share/man/man3/toid_type_num.3.gz
/usr/share/man/man3/toid_type_num_of.3.gz
/usr/share/man/man3/toid_typeof.3.gz
/usr/share/man/man3/toid_valid.3.gz
/usr/share/man/man3/tx_add.3.gz
/usr/share/man/man3/tx_add_direct.3.gz
/usr/share/man/man3/tx_add_field.3.gz
/usr/share/man/man3/tx_add_field_direct.3.gz
/usr/share/man/man3/tx_alloc.3.gz
/usr/share/man/man3/tx_begin.3.gz
/usr/share/man/man3/tx_begin_cb.3.gz
/usr/share/man/man3/tx_begin_param.3.gz
/usr/share/man/man3/tx_end.3.gz
/usr/share/man/man3/tx_finally.3.gz
/usr/share/man/man3/tx_free.3.gz
/usr/share/man/man3/tx_memcpy.3.gz
/usr/share/man/man3/tx_memset.3.gz
/usr/share/man/man3/tx_new.3.gz
/usr/share/man/man3/tx_onabort.3.gz
/usr/share/man/man3/tx_oncommit.3.gz
/usr/share/man/man3/tx_realloc.3.gz
/usr/share/man/man3/tx_set.3.gz
/usr/share/man/man3/tx_set_direct.3.gz
/usr/share/man/man3/tx_strdup.3.gz
/usr/share/man/man3/tx_wcsdup.3.gz
/usr/share/man/man3/tx_xadd.3.gz
/usr/share/man/man3/tx_xadd_direct.3.gz
/usr/share/man/man3/tx_xadd_field.3.gz
/usr/share/man/man3/tx_xadd_field_direct.3.gz
/usr/share/man/man3/tx_xalloc.3.gz
/usr/share/man/man3/tx_xfree.3.gz
/usr/share/man/man3/tx_xstrdup.3.gz
/usr/share/man/man3/tx_xwcsdup.3.gz
/usr/share/man/man3/tx_zalloc.3.gz
/usr/share/man/man3/tx_znew.3.gz
/usr/share/man/man3/tx_zrealloc.3.gz
/usr/share/man/man5/poolset.5.gz
/usr/share/man/man7/libpmemobj.7.gz

References

Summary

In this tutorial we learn how to install libpmemobj-devel on Fedora 36 using yum and [dnf]((/fedora/36/dnf/).