Qt World Summit: Submit your Presentation

Trying to find POSIX calls made by Qt

  • Hello everyone,

    I'm trying to compile a list of POSIX calls made by -QT- Qt for a project; I'm trying to see if -QT- Qt fits a safety profile selected by our customer.

    I had thought to run the command "nm" (I'm using Linux) on the compiled libraries, but this didn't prove to be fruitful. Anyone have a simple or clever way of compiling this list?

    My second idea was to try to compile each library individually and use -nostdlibs while compiling, but I'm not sure how to go about compiling each library separately.


  • What do you mean with "list of POSIX calls" exactly? You could run your program under ltrace / strace and find out all the library calls made by your application...

  • Under this specific safety protocol, only a certain (albeit still large) subset of the POSIX calls are allowed, and we are attempting to see if Qt will meet that requirement. Hence needed to first make a list of the total set of POSIX calls used.

    I will try that though, thanks. Didn't think of ltrace.

  • Which functions are not "allowed" by this profile?

  • Fetch the Qt sources and grep them.



    find *.cpp | while read sourceFile
    grep --extended-regexp "$unsafeCallList" $sourceFile

    A runtime analysis using strace or ltrace will be difficult, as you have to ensure that every single piece of code is at least run once.

  • Even if Qt would be "safe", the other linked libraries (eg. C++ standard lib) could violate the profile....

  • @ TheWorldJoker

    By any chance did you have any success at determining the POSIX calls?

    I have a similar question and need to determine which POSIX calls Qt absolutely needs to be present in an RTOS environment.


Log in to reply