Skip to content

Errors and Bug Reporting

Fabian Schiebel edited this page Feb 8, 2024 · 9 revisions

Errors and Bugs

The PhASAR framework is still under development. Thus, it might contain errors that are (un)known to the developers. If you find an error, please create an issue in our tracker on GitHub. The report should include at least a summary of what you were doing when you hit the error and a complete error message (if possible). We will try to fix bugs as quickly as possible. If you are familiar with program analysis and LLVM you are welcome to fix the bug, improve PhASAR, and send us a pull request.

Observations and Known Bugs

Problems When Statically Linking Against LLVM

When statically linking PhASAR against LLVM, users may encounter a runtime error similar to the following:

./phasar-cli ...
: CommandLine Error: Option 'verify-dom-info' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options

The bug can be fixed by dynamically linking against the LLVM libraries. When installing PhASAR using the bootstrap.sh script on Unix/Linux systems, LLVM will be automatically build in a shared library configuration.

If you are linking PhASAR statically as well (the now default configuration), linking against static LLVM libraries works as well.

Runtime Stack Overflows

UPDATE: This problem should already be fixed in the latest development version of PhASAR.

We experienced some segmentation faults caused by the OS's stack size limit when analyzing larger programs. The limits can be checked with

$ ulimit -a

If you would like to analyze larger programs adjust the stack size limit to your needs e.g. set the limit to 16 GiB:

$ ulimit -s 16777216

Error While Installing:

UPDATE: These issues should be obsolete with any PhASAR version >=v1222.

  • While installing phasar, you may encounter an error as following:
CMake Error at tools/llvm-shlib/CMakeLists.txt:44 (list):
  list sub-command REMOVE_DUPLICATES requires list to be present.

The bug can be fixed by doing the following:
In the phasar project directory, edit the CMakeLists.txt file using:

nano llvm-project/llvm/tools/llvm-shlib/CMakeLists.txt

Change list(REMOVE_DUPLICATES LIB_NAMES) to

if(LIB_NAMES)
list(REMOVE_DUPLICATES LIB_NAMES)
endif()
  • CMake Error: Target requires the language dialect "CXX17", but CMake does not know the compile flags to use to enable it.
    Solution: Install CMake>3.8

  • print_graph(): requires 2 argument, but 3 were given.
    Solution: Install boost>=1.63

  • errors related to gcc/g++:
    Try installing gcc-7 and g++-7

Clone this wiki locally