Souranalyzer,强化给出错误无法识别或无效的命令行参数' -o'

时间:2016-03-30 10:05:08

标签: linux gcc fortify

我在fortify模式下运行linux上的构建。以下命令在构建

中运行
str()

当我运行此操作时,我收到错误/usr/local/packages/fortify_360/bin/sourceanalyzer -Xmx1512M -b FORTIFY -Dcom.fortify.sca.ProjectRoot=/ade/ka/dbss/utl/fortify -jdk 1.5 -c /ade/ka_View_12.2/xa/bin/orscript -o /ade/ka/xa/dbsa/bin/avorclcoll -m64 -z noexecstack -Wl,--disable-new-dtags -L/ade/ka/xa/dbsa/lib/ -L/ade/ka/xa/lib/ -L/ade/ka/xa/lib/stubs/ /ade/ka/oracle/dbsa/lib/zaorclmain.o -lclntsh -lclntshcore -lclient12 -lavclient12 -lnnz12 -lmql1 -lipc1 -ldl -lm -lpthread -lnsl -lrt -lc -Wl,-R

但如果我用gcc替换脚本Unrecognized or invalid command line argument '-o',它可以正常工作 我的脚本/ade/ka_View_12.2/xa/bin/orscript有以下代码,在此代码中我只有一个变量CC = gcc和" $ @"参数

/ade/ka_View_12.2/xa/bin/orscript

请帮忙,我一直在努力解决这个错误:(

1 个答案:

答案 0 :(得分:1)

运行以下命令检查C / C ++构建的帮助:

sourceanalyzer -h

您将看到有几种方法可以在C / C ++代码上运行扫描。一种是直接调用编译器,这与您示例中的成功案例相对应。如果你想使用make(或你的" orscript")之类的构建脚本,那么你应该使用touchless参数,例如:

sourceanalyzer -Xmx1512M -b FORTIFY -Dcom.fortify.sca.ProjectRoot=/ade/ka/dbss/utl/fortify touchless /ade/ka_View_12.2/xa/bin/orscript {args}

注意:您也不需要指定-jdk参数,因为您没有分析Java代码。