LoginSignup
0
0

More than 5 years have passed since last update.

Arch Linux で lsyncd のインストールに失敗したら

Posted at

yaourt -S lsyncd で入れようとしたらエラーになった。

エラー内容はこんな感じ。

[ 11%] Linking C executable lsyncd                                                                                                                                                    
CMakeFiles/lsyncd.dir/lsyncd.c.o: In function `l_exec':                                                                                                      
lsyncd.c:(.text+0x1764): undefined reference to `lua_rotate'                                                                                                                                                                                                                                                                
lsyncd.c:(.text+0x181e): undefined reference to `lua_rotate'                                                                  
lsyncd.c:(.text+0x18aa): undefined reference to `lua_rotate'                                                                                                 
CMakeFiles/lsyncd.dir/lsyncd.c.o: In function `load_runner_func':                
lsyncd.c:(.text+0x3710): undefined reference to `lua_rotate'                                                                                                                                                                                                                                                                
CMakeFiles/lsyncd.dir/lsyncd.c.o: In function `main1':                                                                                                       
lsyncd.c:(.text+0x49e8): undefined reference to `lua_rotate'                                                                                                                                                                                                                                                                
CMakeFiles/lsyncd.dir/lsyncd.c.o:lsyncd.c:(.text+0x4a7f): more undefined references to `lua_rotate' follow                                                                                                                                                                                                                  
collect2: error: ld returned 1 exit status                                                                                                                                                                                                                                                                                  
make[2]: *** [CMakeFiles/lsyncd.dir/build.make:154: lsyncd] Error 1                                                                                                                                                                                                                                                         
make[1]: *** [CMakeFiles/Makefile2:132: CMakeFiles/lsyncd.dir/all] Error 2                                                                                                                                                                                                                                                  
make: *** [Makefile:130: all] Error 2           

当たり前かも知れないが、その後ソースからビルドしても同様。

解決方法としては、以下を実施する。

  • sudo pacman -Rs lua52 で Lua 5.2 を削除
  • yaourt 時に PKGBUILD を編集して依存関係を lua52 から lua に変更

GitHub issue でもこの件があがっていて https://github.com/axkibe/lsyncd/issues/501 /usr/lib/liblua*.so のバージョンが複数あるのが問題とのこと。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0