如果DEB包中包含的是從由flex生成的源代碼建立了一個共享庫,/usr/bin/lintian將報告林田報道SHLIB通話退出建設DEB包時從柔性生成的源代碼
因爲在flex生成的函數yy_fatal_error退出()調用的:
static void yy_fatal_error (yyconst char* msg)
{
(void) fprintf(stderr, "%s\n", msg);
exit(YY_EXIT_FAILURE);
}
我如何修改DEB包,使得林田將停止reportin g shlib-calls-exit?
DEB包在其構建腳本中使用CMake。 CMake的的源代碼對應的片段是
flex_target(scanner lexer.l ${CMAKE_CURRENT_BINARY_DIR}/lexer.c)
bison_target(parser parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser.c)
add_flex_bison_dependency(scanner parser)
add_library(parse-and-scan SHARED ${FLEX_scanner_OUTPUTS} ${BISON_parser_OUTPUT_SOURCE})
有關該軟件的版本信息:
- 柔性2.5.35
- cmake的2.8.9
- 林田2.5.10
- Linux發行版:Debian Unstable(sid)
大約一個星期前,我貼了similar question到debian-導師郵件列表
具有柔性生成的源代碼退出()調用的問題已經brought up柔性,幫助郵件列表上,但帖子沒有提供答案。