添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
含蓄的人字拖  ·  stdlib.h No such file ...·  2 小时前    · 
曾经爱过的皮蛋  ·  Ubuntu g++ ...·  2 小时前    · 
勤奋的鸭蛋  ·  Java ...·  8 小时前    · 
健壮的排球  ·  Error: Projects must ...·  11 小时前    · 
高大的佛珠  ·  <div>&#13; Starlink ...·  2 月前    · 
憨厚的脸盆  ·  <!--spider-title-->·  5 月前    · 
不爱学习的火车  ·  Filtering in WinForms ...·  6 月前    · 
有腹肌的充值卡  ·  What is Docker? | ...·  9 月前    · 
暴躁的蜡烛  ·  Loading...·  1 年前    · 

I just did a zypper dup (Tumbleweed)
now when I try to build LibreCAD from Qt Creator I get:

/usr/include/c++/6/cstdlib:75: error: stdlib.h: No such file or directory
 #include_next <stdlib.h>
/usr/include/c++/6/cstdlib

But it looks like the path doesn’t include ‘cstdlib’ on this computer.
/usr/include/c++/6/stdlib.h

‘libstdc++6-devel-gcc6’ is already installed.

find /usr/include -name stdlib

/usr/include/bits/stdlib-bsearch.h
/usr/include/bits/stdlib-float.h
/usr/include/bits/stdlib-ldbl.h
/usr/include/bits/stdlib.h
/usr/include/c++/5/tr1/cstdlib
/usr/include/c++/5/tr1/stdlib.h
/usr/include/c++/5/cstdlib
/usr/include/c++/v1/cstdlib
/usr/include/c++/v1/stdlib.h
/usr/include/c++/6/cstdlib
/usr/include/c++/6/stdlib.h
/usr/include/c++/6/tr1/cstdlib
/usr/include/c++/6/tr1/stdlib.h
/usr/include/boost/compatibility/cpp_c_headers/cstdlib
/usr/include/boost/config/stdlib
/usr/include/boost/config/select_stdlib_config.hpp
/usr/include/boost/cstdlib.hpp
/usr/include/freetype2/freetype/config/ftstdlib.h
/usr/include/stdlib.h

Is there some file that is indicating the old path?

I’ve built this program many times without this problem.

I’m not sure what package you are referring to,
and the search feature seems to be broken at
https://software.opensuse.org

// Need to ensure this finds the C library's <stdlib.h> not a libstdc++ // wrapper that might already be installed later in the include search path. #define _GLIBCXX_INCLUDE_NEXT_C_HEADERS #include_next <stdlib.h> #undef _GLIBCXX_INCLUDE_NEXT_C_HEADERS

What package has the “C library’s <stdlib.h>”?

It looks like this is a known issue with gcc-6.1

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70936

Replacing #include_next with #include fixes the problem.

However, I am not exactly clear about whether it is these headers (cstdlib and cmath currently, there might be more) that are the problem.
In my point of view, it is the inversion of C and C++ header paths that is the problem.

This is caused by --with-gxx-include-dir

Configured with: /home/jwakely/src/gcc/gcc-6/configure --prefix=/tmp/6 --with-gxx-include-dir=/tmp/6/include/c++/6.1.1 …]

https://readlist.com/lists/gcc.gnu.org/gcc-help/7/36244.html

Here removing --with-gxx-include-dir as well as
--enable-version-specific-runtime-libs fixed the problem.

Any ideas how to use this information?

> I just did a zypper dup (Tumbleweed)
> now when I try to build LibreCAD from Qt Creator I get:
> Code:
> --------------------
> /usr/include/c++/6/cstdlib:75: error: stdlib.h: No such file or
> directory
> #include_next <stdlib.h>
> /usr/include/c++/6/cstdlib
> --------------------

Try with

%qmake5 -r QMAKE_DEFAULT_INCDIRS= \

This is what i done in spec-files.

Regards
Just a FYI you can create a file in the build location
called .qmake.cache for all your additional flags and overrides

vi .qmake.cache CONFIG += release QMAKE_DEFAULT_INCDIRS += QMAKE_LRELEASE="/usr/bin/lrelease"

http://doc.qt.io/qt-5/qmake-environment-reference.html

Cheers Malcolm °¿° LFCS, SUSE Knowledge Partner (Linux Counter #276890)
openSUSE Leap 42.1|GNOME 3.16.2|4.1.26-21-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!