-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build error: linkage specification is incompatible with previous "Perl___notused" #7
Comments
Thanks Daxim. On my system these are warnings, not errors. This means I can reproduce them, but I hadn't given them a high priority to solve. I see if I can figure out what's going on. :-) |
Did you happen to resolve this issue? I am getting it with my build too [cuda@localhost perl-CUDA-Minimal]$ ./Build 1 error detected in the compilation of "/tmp/tmpxft_00003ea5_00000000-6_Minimal.cpp1.ii". [cuda@localhost perl-CUDA-Minimal]$ uname -a [cuda@localhost perl-CUDA-Minimal]$ perl -V Platform: Characteristics of this binary (from libperl): |
@eperry, dNOOP is a preprocessor macro used in the Perl sources. I never managed to track down the source of the problem and gave up trying a while ago, so the fact that you've uncovered this as the problem is marvelous! What happens if you place the following at the very top of Minimal.xs? #ifdef dNOOP
/* If the CUDA sources define this, clear it */
#undef dNOOP
#endif |
I made some hard-won but ultimately good progress on this problem today. In particular, I took all day to solve what ultimately boiled down to an alignment issue. The solution that I propose above does not solve this problem. However, it is only a problem for Perl v5.16. CUDA::Minimal compiles for v5.14 and v5.18, with and without threads, which gives us a much narrower search window. |
sorry I did not get a chance to try the compile today, to many monday I'll see if what the beta version of Fedora perl is up to, and give that a Thanks for your efforts. I'll try the comment you had above. On Mon, Dec 16, 2013 at 7:59 PM, David Mertens notifications@github.comwrote:
Sincerely Edward Perry |
This error first arose in Perl's core with commit Thanks to bisect.pl for that. This means we can, potentially, include a fix for v5.16 by using proper #ifdef checks. |
Perl has had a couple of different definitions for dNOOP, and some of them made nvcc mad. The current solution in the Perl core can be applied to fix the problem, and that is done with this commit.
That should do it. Please let me know if it doesn't work on your end. If this works, I'll try to get this fix added to ppport.h, as I believe this solution would solve the most problems there. |
Hi David, Thanks so much for the quick work. I had the chance the other day to purge Seemed to work flawlessly. THANKS! This fixes Fedora 19 standard server installs. :) With Cuda 5.5 On Thu, Dec 19, 2013 at 12:02 AM, David Mertens notifications@github.comwrote:
Sincerely Edward Perry |
The text was updated successfully, but these errors were encountered: