Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
96 user(s) are online (63 user(s) are browsing Forums)

Members: 0
Guests: 96

more...

Headlines

 
  Register To Post  

« 1 2 (3) 4 5 6 ... 21 »
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
Probably will be far better and more easy (at least for begining) to deal with little issues like those ones:

https://github.com/sba1/adtools/issues/86
https://github.com/sba1/adtools/issues/79
https://github.com/sba1/adtools/issues/63
https://github.com/sba1/adtools/issues/59
https://github.com/sba1/adtools/issues/58
https://github.com/sba1/adtools/issues/57

Half of them are "something is not a member of std" and probably can be fixed on the compiler build times.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@IamSONIC

Quote:
If you're running out of ideas what to do next you could have a look at the summary (Requirements compiling WebKit) hans created a while ago

https://www.amigans.net/modules/xforum ... id=119194#forumpost119194

Maybe the first two are interesting:

1. We need our C/C++ stdlib headers to be brought up-to-date with the latest standard. Especially cmath. Newlib is missing multiple functions (log2(), asinh(), etc.).
2. Newlib also has gaps in its POSIX compliance. It's missing basics such as tzset()**


Unfortunately I have more time consuming hobbies than time :)

One big problem though, is that it looks like an endless pit of work. But it probably isn't if we can chop it up into pieces and distribute the work. If we'd 'just' start stubbing things to get it to build, then we'd have a list of gaps that we can work with, setting priorities, estimating effort (and perhaps creating bounties based on that) and so on. This might be a big task in itself of course.

Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@kas1e

That's a good list. That's the type of very specific info I was trying to describe in my last post. I missed your comment.

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@sTix
Or for example this one:

https://github.com/sba1/adtools/issues/92

That one works for clib2, but not for newlib, which means it just some mess with includes or something of that sort.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: gcc 9 and 10
Site Builder
Site Builder


See User information
@sTix
Hello there. I tried to compile gcc 10 for using with cross compiling, and I had the following errors

In file included from /opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:58:
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.hIn function ‘int std::filesystem::__gnu_posix::truncate(const char*, off_t):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.h:158:13error‘ENOTSUP’ was not declared in this scope
  158 
|     errno ENOTSUP;
      |             ^~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.hIn function ‘bool std::filesystem::do_copy_file(const char_type*, const char_type*, std::filesystem::copy_options_existing_filestd::filesystem::__gnu_posix::stat_type*, std::filesystem::__gnu_posix::stat_type*, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.h:355:39error‘not_supported’ is not a member of ‘std::errc’
  355 
|  ec std::make_error_code(std::errc::not_supported);
      |                                       ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.h:363:43error‘not_supported’ is not a member of ‘std::errc’
  363 
|      ec std::make_error_code(std::errc::not_supported);
      |                                           ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.h:394:43error‘not_supported’ is not a member of ‘std::errc’
  394 
|      ec std::make_error_code(std::errc::not_supported);
      |                                           ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.hIn function ‘void std::filesystem::do_space(const char_type*, uintmax_t&, uintmax_t&, uintmax_t&, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/../filesystem/ops-common.h:553:42error‘not_supported’ is not a member of ‘std::errc’
  553 
|     ec std::make_error_code(std::errc::not_supported);
      |                                          ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘void std::filesystem::copy(const std::filesystem::__cxx11::path&, const std::filesystem::__cxx11::path&, std::filesystem::copy_optionsstd::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:363:44error‘not_supported’ is not a member of ‘std::errc’
  363 
|       ec std::make_error_code(std::errc::not_supported);
      |                                            ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘void std::filesystem::create_hard_link(const std::filesystem::__cxx11::path&, const std::filesystem::__cxx11::path&, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:695:40error‘not_supported’ is not a member of ‘std::errc’
  695 
|   ec std::make_error_code(std::errc::not_supported);
      |                                        ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘void std::filesystem::create_symlink(const std::filesystem::__cxx11::path&, const std::filesystem::__cxx11::path&, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:719:40error‘not_supported’ is not a member of ‘std::errc’
  719 
|   ec std::make_error_code(std::errc::not_supported);
      |                                        ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘bool std::filesystem::equivalent(const std::filesystem::__cxx11::path&, const std::filesystem::__cxx11::path&, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:850:41error‘not_supported’ is not a member of ‘std::errc’
  850 
|    ec std::make_error_code(std::errc::not_supported);
      |                                         ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘uintmax_t std::filesystem::file_size(const std::filesystem::__cxx11::path&, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:964:39error‘not_supported’ is not a member of ‘std::errc’
  964 
|  ec std::make_error_code(std::errc::not_supported);
      |                                       ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘void std::filesystem::last_write_time(const std::filesystem::__cxx11::path&, std::filesystem::file_time_typestd::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:1083:40error‘not_supported’ is not a member of ‘std::errc’
 1083 
|   ec std::make_error_code(std::errc::not_supported);
      |                                        ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘void std::filesystem::permissions(const std::filesystem::__cxx11::path&, std::filesystem::permsstd::filesystem::perm_optionsstd::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:1132:42error‘not_supported’ is not a member of ‘std::errc’
 1132 
|     ec std::make_error_code(std::errc::not_supported);
      |                                          ^~~~~~~~~~~~~
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.ccIn function ‘std::filesystem::__cxx11::path std::filesystem::read_symlink(const std::filesystem::__cxx11::path&, std::error_code&):
/
opt/adtools/gcc/repo/libstdc++-v3/src/c++17/fs_ops.cc:1211:40error‘not_supported’ is not a member of ‘std::errc’
 1211 
|   ec std::make_error_code(std::errc::not_supported);
      |                                        ^~~~~~~~~~~~~
make[10]: *** [Makefile:570fs_ops.loError 1
make
[10]: *** Waiting for unfinished jobs....
make[10]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/clib2/libstdc++-v3/src/c++17'
make[9]: *** [Makefile:731all-recursiveError 1
make
[9]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/clib2/libstdc++-v3/src'
make[8]: *** [Makefile:563all-recursiveError 1
make
[8]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/clib2/libstdc++-v3'
make[7]: *** [Makefile:488allError 2
make
[7]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/clib2/libstdc++-v3'
make[6]: *** [Makefile:856multi-do] Error 1
make
[6]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/libstdc++-v3'
make[5]: *** [Makefile:824all-multiError 2
make
[5]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/libstdc++-v3'
make[4]: *** [Makefile:563all-recursiveError 1
make
[4]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/libstdc++-v3'
make[3]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0/ppc-amigaos/libstdc++-v3'
make[3]: *** [Makefile:488allError 2
make
[2]: *** [Makefile:11345all-target-libstdc++-v3Error 2
make
[2]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0'
make[1]: *** [Makefile:956allError 2
make
[1]: Leaving directory '/opt/adtools/native-build/gcc-cross-build-10.1.0'
make: *** [makefile:192gcc-cross-done-10.1.0Error 2


I used g++-10 to compile it on Linux, and the following commands.
git clone https://github.com/sodero/adtools -b topic/gcc10_support
cd adtools
git submodule init 
git submodule update
gild
/bin/gild clone
gild/bin/gild checkout binutils 2.23.2
gild
/bin/gild checkout gcc 10
make 
-C native-build gcc-cross CROSS_PREFIX=/opt/ppc-amigaos -j4


Thanks for the help

Follow me on
Ko-fi, Twitter, YouTube, Twitch
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@walkero

Are you using *both* the compiler and clib2 from below?

https://github.com/sodero/adtools/releases/tag/alpha-2

It's important that you're not using your old clib2. ENOTSUP is not defined in that one.

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@walkero
Don't you forget before to change the SDK link on the newer one in /amiga/adtools/native-build/makefile ? Because I doing it exactly as you say, just with of course changed the link to SDK.

Also, you may try first to not use -j4 , until it downloads and unpacks SDK, and then break the process and restart with -j4.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@walkero

Sorry, I did not read your post properly. This shouldn't happen.

If you lookup CLIB2_URL and CLIB2_SHA1 in native-build/makefile, what does it say?

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@sTix
May I ask you if you still worry about, to enable for further tests "pthread" threading as well ?

Currently, we have only "AmigaOS-native" threading enabled (that is this gthr-amigaos-native.c, from the amiga-native-thread patch), but there is also gthr-amigaos-posix.c , so to have POSIX based threading works (via pthreads).

As Sebastian says a year ago, the pthread wrapper is already there, but not bundled yet. This is that gthr-amigaos-posix.c


Currently if we just trying to compile with -athread=pthread, we have "ppc-amigaos/bin/ld: cannot find gthr-amigaos-pthread.o: No such file or directory".


So to have it bundled we need to fix 2 issues:

1). file gthr-amigaos-posix.c didn't compiles at all and didn't placed to the /usr/local/amiga/lib/gcc/ppc-amigaos/10.1.0/ directory.

So we need to add it adtools build process (like done for qthr-amigaos-native.c).

2). even if we compile it and place when amigaos-native one placed, then when we choose "-athread=pthread", it asks for gthr-amigaos-pthread.o, and not gthr-amigaos-posix.o (see name clash pthread vs posix).

In other words, all we need to do is copy the way how gthr-amigaos-native file is compiled/placed, and or name on compiling-object stage it as gthr-amigaos-pthread.o, or, change -athread=pthread option to -athread=posix option and keep the name of original c file and of an object the same.

I already can compile that gthr-amigaos-posix.c to gthr-amigaos-pthread.o and use it with -athread=pthread, but will be fine to bundle it by default so it can be futher bug-tracked and improved too


PS. It was discussed here a bit: https://github.com/sba1/adtools/issues/64

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@kas1e

Right now I'm digging into the problems with things not being exposed in the 'std' namespace. I'd also like to get a good picture of the gaps in clib2. This will probably take some time so I don't want to make any promises, but if no one does it in the meantime I can have a look.

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@sTix
At least all the std:: issues I reported, all of them implemented and works when I just remove std::. So chances high it just some configuring issues.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: gcc 9 and 10
Site Builder
Site Builder


See User information
Thank you guys for your replies

@sTix
Quote:
If you lookup CLIB2_URL and CLIB2_SHA1 in native-build/makefile, what does it say?


You were right. I was using the wrong CLIB inside makefile. Now it compiles just fine. Thanks a lot.

@kas1e
About the AmigaOS 4 SDK, yeah. I have a fix before I compile gcc that downloads the right SDK 53.30

Follow me on
Ko-fi, Twitter, YouTube, Twitch
Go to top
Re: gcc 9 and 10
Site Builder
Site Builder


See User information
For your info, I created new docker images that have the gcc 8 and 9 from sba1 repo and gcc 10 from sodero repo already compiled, if anyone wants to use them on cross compiler development environment.

They can be found at
https://hub.docker.com/repository/docker/walkero/amigagccondocker

Follow me on
Ko-fi, Twitter, YouTube, Twitch
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@walkero

Nice, thanks!

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
Unfortunately -fanalyzer doesn't work locally (at least for ScummVM)

I get my memory filled up by it pretty early on when compiling commandLine.cpp.
It grows to 77% filled and then ccplus11 errors with a "cannot allocate 104 bytes".

Switched it off again, too bad

People are dying.
Entire ecosystems are collapsing.
We are in the beginning of a mass extinction.
And all you can talk about is money and fairytales of eternal economic growth.
How dare you!
– Greta Thunberg
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@Raziel

That's a shame. I can imagine doing static analysis on something that big requires a lot of memory.

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@sTix

Yes, i really hppe that gcc can be changed to use ExtMem once it has been introduced to the public (it's still in beta, right?)

That would solve a bunch of problems for me

People are dying.
Entire ecosystems are collapsing.
We are in the beginning of a mass extinction.
And all you can talk about is money and fairytales of eternal economic growth.
How dare you!
– Greta Thunberg
Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@sTix
Maybe you can do a pull-request will the latest gcc9 and gcc10 you had in your branches to the original adtools repo? I am already on gcc10 for some time, it surely not worse than gcc8.x for us. And having it in adtools repo will help everyone to not mess between different repos.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: gcc 9 and 10
Just popping in
Just popping in


See User information
@kas1e

Yes, I intend to do this as soon as this one is merged (it's needed to enable C++17): https://github.com/adtools/clib2/pull/13

Otherwise we need to use my clib2 fork in adtools and that's not great either

Don't know if Barthel is active on Github, it's taking too long I think.

Go to top
Re: gcc 9 and 10
Home away from home
Home away from home


See User information
@sTix
Olaf answer very fast if you drop him a mail, check PM for mail

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top

  Register To Post
« 1 2 (3) 4 5 6 ... 21 »

 




Currently Active Users Viewing This Thread: 1 ( 0 members and 1 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2023 The XOOPS Project