Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

Quartus 9.1 SP2 Fails to start

Hello,

When I try to launch Quartus 9.1 sp2, I get the following error message:

quartus: error while loading shared libraries: /opt/altera9.1sp2/quartus/linux/libccl_err.so: cannot restore segment prot after reloc: Permission denied

How can I fix this?

Thanks

6 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I've only ever seen that message in relation to SELinux policies. SELinux is, in my opinion, too restrictive for workstation environments and should only be enabled on servers where it's absolutely required.

    In any case, here's a quick link that may provide some help and just Googling for the error message you're seeing will too:

    http://www.appistry.com/community/forums/content/cannot-restore-segment-prot-after-reloc-permission-denied

    Cheers,

    -slacker
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    in fact, set /etc/selinux/config SELINUX=permissive also work well...

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Unfortunately, the solution proposed is not the correct one, as SELinux is being completely disabled...

    The correct solution to the problem requires Altera to rebuild the dynamic libraries without text relocations. This is normally achieved by compiling them with the "-fPIC" option (if using the gcc compiler).

    Further information on the issue can be found at akkadia <dot> org <slash> drepper <slash> textrelocs.html

    By all means this is a bug in the binaries distributed by Altera and only Altera can resolve the issue. Any idea on how to forward the issue directly to Technical Support ?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    A temporary solution which avoids completely disabling SELinux is as follows:

    execute the command "chcon -t textrel_shlib_t <full_dynamic_library_path>" as user root, where <full_dynamic_library_path> is the full path to the dynamic library which is requiring text relocations (and thus triggering the SELinux "permission denied" error).

    chcon is normally being distributed with all SELinux-enabled systems and it is part of the coreutils package.