小编Fun*_*eng的帖子

为什么 g++ 需要 libstdc++.a?为什么不是默认值?

我遇到了这个问题,解决方案是将 libstdc++.a 显式传递给 g++,如下所示:

/usr/local/gcc-10.2.0/bin/g++ -I/usr/local/gcc-10.2.0/include -L/usr/local/gcc-10.2.0/lib64 -Wl,-rpath,/usr/local/gcc-10.2.0/lib64 b.cpp /usr/local/gcc-10.2.0/lib64/libstdc++.a
Run Code Online (Sandbox Code Playgroud)

我的问题:为什么我需要明确传递 libstdc++.a?我怎样才能让它自动,以便默认使用 libstdc++.a?我怎样才能找到这两个问题的答案?

测试代码:

#include <sstream>
using namespace std;

int
main ()
{
        ostringstream oss;
        unsigned long k = 5;
        oss << k;
}
Run Code Online (Sandbox Code Playgroud)

使用以下参数编译:

/usr/local/gcc-10.2.0/bin/g++ -I/usr/local/gcc-10.2.0/include -L/usr/local/gcc-10.2.0/lib64 -Wl,-rpath,/usr/local/gcc-10.2.0/lib64 -lstdc++ b.cpp
Run Code Online (Sandbox Code Playgroud)

得到以下输出:

/tmp/cclRSXGV.o: In function main': b.cpp:(.text+0x35): undefined reference to std::ostream::operator<<(unsigned long)'
collect2: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

使用 GNU gcc 10.2.0,安装如下:

../gcc-10.2.0/configure --prefix=/usr/local/gcc-10.2.0 --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++ --disable-dssi …
Run Code Online (Sandbox Code Playgroud)

c++ gcc g++

1
推荐指数
1
解决办法
277
查看次数

当索引以数组大小为模时,是否有可能使索引超出约束?

我有以下代码,但有时我会得到java.lang.ArrayIndexOutOfBoundsException特定的代码subject.gets.我不知道这怎么会发生,但它只是做到了.我有一些多线程,但这个数组是函数的本地数据,不能从其他任何地方访问.

// Within onCreate
Random random = new Random();

// some where else
List<Subject> subjects = new ArrayList<Subject>();

// There is SOME CODE HERE TO ADD ELEMENTS.
// There is SOME CODE HERE TO ADD ELEMENTS.
// There is SOME CODE HERE TO ADD ELEMENTS.
// There is SOME CODE HERE TO ADD ELEMENTS.
// There is SOME CODE HERE TO ADD ELEMENTS.

subjects.get(random.nextInt() % subjects.size())
Run Code Online (Sandbox Code Playgroud)

java

-1
推荐指数
1
解决办法
514
查看次数

标签 统计

c++ ×1

g++ ×1

gcc ×1

java ×1