對於GCC和Linux的情況下,C++庫是否依賴於C庫? (對於GCC和Linux的情況下)
不知
如果C++庫依賴於C庫API。
如果C庫包含每個系統調用。
如果C++庫包含每個系統調用。
如果存在任何提供C/C++庫以外的系統調用的系統庫。 (我相信pthread庫prodives一些POSIX線程API)
在此先感謝您。
對於GCC和Linux的情況下,C++庫是否依賴於C庫? (對於GCC和Linux的情況下)
不知
如果C++庫依賴於C庫API。
如果C庫包含每個系統調用。
如果C++庫包含每個系統調用。
如果存在任何提供C/C++庫以外的系統調用的系統庫。 (我相信pthread庫prodives一些POSIX線程API)
在此先感謝您。
如果C++庫依賴於C庫API。對於GNU C,
是的。這樣做可能是有益的,因爲許多C標準庫函數也是C++標準的一部分。
如果C庫包含每個系統調用。
它並不「包含」一個,因爲系統調用是內核暴露的東西。 C庫所做的是提供一些圍繞系統調用的包裝,但不是,不一定圍繞它們。有助手可以調用沒有提供包裝的系統調用。也許從這裏開始閱讀:syscalls(2)
。
如果C++庫包含每個系統調用。
參見上文。
如果存在任何提供C/C++庫以外的系統調用的系統庫。 (我相信pthread庫prodives一些POSIX線程API)
是的(添加單詞「包裝」到您的措辭),你已經命名爲一個例子。請注意,POSIX線程API不需要需要內核級別的線程,但它在Linux上使用它們實現。
是的,GNU C++庫與GNU C庫鏈接。
$ ldd /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20
linux-vdso.so.1 => (0x00007ffc1b5bc000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb25239c000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb251fd2000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb2529b3000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb251dbc000)
取決於編譯器的實現。 –
感謝您的評論!然後想要爲gcc和linux指定這個問題。 – Jeonghum
@Journeyer然後,您應該編輯您的問題以包含該要求。 – Galik