GCC抑制标志

时间:2012-05-21 14:00:49

标签: gcc linker-errors vxworks

我正在尝试使用我的gcc创建一个共享库。它是vxworks的gcc(这可能是问题......)。

我使用gcc如下:

./gcc -shared -B/path/to/gnutools/bin -o test.so test.c

结果:

/path/to/ld: -r and -shared may not be used together 
collect2: ld returned 1 exit status

如果我尝试使用linux gcc,那就没问题了。所以我想VxWorks的gcc会自动将-r(或-i,它是相同的并且产生相同的)标志传递给链接器。有没有办法压制这个?

格尔茨

玛蒂

PS:让它静止不是真正的替代......

1 个答案:

答案 0 :(得分:0)

使用-fPIC分别尝试编译目标文件,然后链接:

    gcc -Wall -fPIC -c -o test.o test.c
    gcc -Wall -shared -o test.so test.o

另一个建议是使用libtool(至少要弄清楚正确的标志)。

解决方法可能是直接使用ld

    ld -shared -o test.so test.o -lc