Code Monkey home page Code Monkey logo

Comments (9)

run4flat avatar run4flat commented on August 28, 2024

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. :-)

from perl-cuda-minimal.

eperry avatar eperry commented on August 28, 2024

Did you happen to resolve this issue? I am getting it with my build too

[cuda@localhost perl-CUDA-Minimal]$ ./Build
Building CUDA-Minimal
/usr/bin/perl -MExtUtils::nvcc::Backend -eExtUtils::nvcc::Backend::compiler -- -I. -I/usr/lib64/perl5/CORE -DXS_VERSION="0.01" -DVERSION="0.01" -fPIC -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -o lib/CUDA/Minimal.o lib/CUDA/Minimal.c
lib/CUDA/Minimal.c(374): error: linkage specification is incompatible with previous "Perl___notused"
(163): here

1 error detected in the compilation of "/tmp/tmpxft_00003ea5_00000000-6_Minimal.cpp1.ii".
nvcc encountered a problem
error building lib/CUDA/Minimal.o from 'lib/CUDA/Minimal.c' at /home/cuda/perl5/lib/perl5/ExtUtils/CBuilder/Base.pm line 175.

[cuda@localhost perl-CUDA-Minimal]$ uname -a
Linux localhost.localdomain 3.11.10-200.fc19.x86_64 #1 SMP Mon Dec 2 20:28:03 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

[cuda@localhost perl-CUDA-Minimal]$ perl -V
Summary of my perl5 (revision 5 version 16 subversion 3) configuration:

Platform:
osname=linux, osvers=3.10.9-200.fc19.x86_64, archname=x86_64-linux-thread-multi
uname='linux buildvm-01.phx2.fedoraproject.org 3.10.9-200.fc19.x86_64 #1 smp wed aug 21 19:27:58 utc 2013 x86_64 x86_64 x86_64 gnulinux '
config_args='-des -Doptimize=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Dccdlflags=-Wl,--enable-new-dtags -Dlddlflags=-shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro -DDEBUGGING=-g -Dversion=5.16.3 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Red Hat, Inc. -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl5 -Dsitearch=/usr/local/lib64/perl5 -Dprivlib=/usr/share/perl5 -Dvendorlib=/usr/share/perl5/vendor_perl -Darchlib=/usr/lib64/perl5 -Dvendorarch=/usr/lib64/perl5/vendor_perl -Darchname=x86_64-linux-thread-multi -Dlibpth=/usr/local/lib64 /lib64 /usr/lib64 -Duseshrplib -Dusethreads -Duseithreads -Dusedtrace=/usr/bin/dtrace -Duselargefiles -Dd_semctl_semun -Di_db -Ui_ndbm -Di_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl=n -Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr -Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_sethostent_r_proto -Ud_endprotoent_r_proto -Ud_setprotoent_r_proto -Ud_endservent_r_proto -Ud_setservent_r_proto -Dscriptdir=/usr/bin -Dusesitecustomize'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic',
cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include'
ccversion='', gccversion='4.8.2 20131017 (Red Hat 4.8.2-1)', gccosandvers=''
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -fstack-protector'
libpth=/usr/local/lib64 /lib64 /usr/lib64
libs=-lresolv -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
perllibs=-lresolv -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
libc=, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version='2.17'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,--enable-new-dtags -Wl,-rpath,/usr/lib64/perl5/CORE'
cccdlflags='-fPIC', lddlflags='-shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wl,-z,relro '

Characteristics of this binary (from libperl):
Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS
PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP PERL_PRESERVE_IVUV USE_64_BIT_ALL
USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC USE_PERLIO USE_PERL_ATOF
USE_REENTRANT_API USE_SITECUSTOMIZE
Built under linux
Compiled at Nov 11 2013 12:36:47
%ENV:
PERL5LIB="/home/cuda/perl5/lib/perl5:"
PERL_LOCAL_LIB_ROOT="/home/cuda/perl5:"
PERL_MB_OPT="--install_base /home/cuda/perl5"
PERL_MM_OPT="INSTALL_BASE=/home/cuda/perl5"
@inc:
/home/cuda/perl5/lib/perl5/x86_64-linux-thread-multi
/home/cuda/perl5/lib/perl5
/usr/local/lib64/perl5
/usr/local/share/perl5
/usr/lib64/perl5/vendor_perl
/usr/share/perl5/vendor_perl
/usr/lib64/perl5
/usr/share/perl5
.

from perl-cuda-minimal.

eperry avatar eperry commented on August 28, 2024

Ok not an elegant fix but I renamed the dNOOP to dNOOP1 so it did not apply
From
define dNOOP extern int /@unused@/ Perl___notused PERL_UNUSED_DECL
To
define dNOOP1 extern int /@unused@/ Perl___notused PERL_UNUSED_DECL

I hope it will not break anything

from perl-cuda-minimal.

run4flat avatar run4flat commented on August 28, 2024

@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

from perl-cuda-minimal.

run4flat avatar run4flat commented on August 28, 2024

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.

from perl-cuda-minimal.

eperry avatar eperry commented on August 28, 2024

sorry I did not get a chance to try the compile today, to many monday
morning issues. but good to hear it is some change between 5.18 and 5.14
as what ever broke in 5.15 - 5.17 was corrected. :)

I'll see if what the beta version of Fedora perl is up to, and give that a
try if it is higher.

Thanks for your efforts. I'll try the comment you had above.

On Mon, Dec 16, 2013 at 7:59 PM, David Mertens [email protected]:

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.


Reply to this email directly or view it on GitHubhttps://github.com//issues/7#issuecomment-30717355
.

Sincerely

Edward Perry

from perl-cuda-minimal.

run4flat avatar run4flat commented on August 28, 2024

This error first arose in Perl's core with commit bafdc25d and fixed with commit 7db66e12

Thanks to bisect.pl for that.

This means we can, potentially, include a fix for v5.16 by using proper #ifdef checks.

from perl-cuda-minimal.

run4flat avatar run4flat commented on August 28, 2024

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.

from perl-cuda-minimal.

eperry avatar eperry commented on August 28, 2024

Hi David,

Thanks so much for the quick work. I had the chance the other day to purge
the install I hacked and re-checkout the project and compile it without
modifications.

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 [email protected]:

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.


Reply to this email directly or view it on GitHubhttps://github.com//issues/7#issuecomment-30905430
.

Sincerely

Edward Perry

from perl-cuda-minimal.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.