動態庫載入出錯解決辦法

2022-09-11 03:18:13 字數 618 閱讀 3626

專案中碰到的問題,編譯好的so檔案,放到其他機器上去載入,報了錯誤,

cannot restore segment prot after reloc: permission denied。

網上查了一下,原因是selinux的問題,selinux的設定太過嚴格導致的。

解決的辦法是在root使用者下,修改/etc/selinux/config 檔案,

把selinux=enforcing 改成 selinux=disabled。  

然後,儲存關閉,重啟機器就可以了

另外還有乙個暫時關閉的方法,就是 /usr/sbin/setenforce 0 。

此外呢,我自己在犄角旮旯裡發現了另外乙個方法,舉個例子,你碰到問題的so檔案是test.so,

那麼[cpp] view plain copy

chcon -t texrel_shlib_t test.so   

就可以了。不過呢,這個命令只能修改乙個so,如果想讓你的系統以後都不會碰到這個錯誤,那最好還是採用修改檔案

的方式。

如果你只是來看怎麼解決這個問題的,那下面的就不用看了,下面是說gcc的編譯命令-fpic的作用。源自點選開啟鏈結。記住,-fpic是編譯命令,-shared是鏈結命令。

資料庫載入出錯時該怎麼解決

我想大家都碰到過這樣的情況,很煩這樣的情況發生,因為剛開始時間不會解決,甚是討厭,其實針對資料庫的設定一直就停留在資料庫語句的操作,以及資料庫的附加與分離,表的操作等 而每次碰到無法對該資料庫操作,因為它是唯讀模式,我就只得冒冷汗,嘿嘿,今天同樣的事情再次發生,我就想還是解決一下吧,之前只是在友友的...

yum update 出錯解決辦法

解除安裝掉yum和python 於是我解除安裝了python和yum,覺得自己重新安裝python和yum。步驟1 解除安裝python rpm qa grep python xargs rpm e allmatches nodeps whereis python xargs rm fr 步驟2 解...

so動態庫未能成功載入解決辦法

move db error while loading shared libraries libmysqlclient.so.15 cannot open shared object file no such file or directory 第一步 確認有哪些lib無法load ldd move...