在与C库链接时,如何在OCaml编译中抑制g弃用警告?
发布时间:2020-12-16 03:46:29 所属栏目:百科 来源:网络整理
导读:在编译OCaml项目时,该项目链接到需要C标准库的库(例如LLVM的OCaml绑定),使用-cc g参数到ocamlc并使用GCC = 4.4生成以下形式的极其详细的警告: warning: deprecated conversion from string constant to ‘char*’ 如何删除这些警告? 解决方法 问题源于ocam
在编译OCaml项目时,该项目链接到需要C标准库的库(例如LLVM的OCaml绑定),使用-cc g参数到ocamlc并使用GCC> = 4.4生成以下形式的极其详细的警告:
warning: deprecated conversion from string constant to ‘char*’ 如何删除这些警告? 解决方法
问题源于ocamlc生成中间C代码,该代码在较新版本的GCC以C模式编译时触发警告.但是这个生成的代码不需要编译为C语言.为这种针对包装C库构建的常见情况传递-cc g的唯一原因是确保构建C标准库依赖项.避免使用C前端编译ocamlc中间代码的简单解决方案很简单:
-cclib -lstdc++ 它强制将生成的C代码与libstdc链接,同时仍以纯C模式编译它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |