PGI User Forum
 SearchSearch   MemberlistMemberlist     RegisterRegister   ProfileProfile    Log inLog in 

Free OpenACC Webinar

Assembler error - can't resolve '.text' {.text setion}...
Goto page 1, 2  Next
 
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling
View previous topic :: View next topic  
Author Message
Christopher Hulbert



Joined: 01 Dec 2005
Posts: 76

PostPosted: Thu Jan 26, 2006 10:57 am    Post subject: Assembler error - can't resolve '.text' {.text setion}... Reply with quote

I'm trying to compile CVS version of octave and am running into some errors. A snipped version of the errors is below. I'm not sure if it's a compile error or syntax error.

/tmp/pgCCeaaaalmlaw.s: Assembler messages:
/tmp/pgCCeaaaalmlaw.s:64033: Error: can't resolve `.text' {.text section} - `..Dcfb38' {.gnu.linkonce.t.read_mat5_integer_data__tm__23_20octave_int__tm__3_Sc__FRQ2_3std52basic_istream__tm__31_cQ2_3std20char_traits__tm__2_cPZ1Zib14mat5_data_type_v section}
/tmp/pgCCeaaaalmlaw.s:64044: Error: can't resolve `.text' {.text section} - `..Dcfb39' {.gnu.linkonce.t.read_mat5_integer_data__tm__22_19octave_int__tm__2_s__FRQ2_3std52basic_istream__tm__31_cQ2_3std20char_traits__tm__2_cPZ1Zib14mat5_data_type_v section}

* snip to the other function causeing error *

/tmp/pgCCeaaaalmlaw.s:64209: Error: can't resolve `.text' {.text section} - `..Dcfb54' {.gnu.linkonce.t.write_mat5_integer_data__tm__23_20octave_int__tm__3_Sc__FRQ2_3std52basic_ostream__tm__31_cQ2_3std20char_traits__tm__2_cPCZ1ZiT3_v section}
/tmp/pgCCeaaaalmlaw.s:64220: Error: can't resolve `.text' {.text section} - `..Dcfb55' {.gnu.linkonce.t.write_mat5_integer_data__tm__22_19octave_int__tm__2_s__FRQ2_3std52basic_ostream__tm__31_cQ2_3std20char_traits__tm__2_cPCZ1ZiT3_v section}

* snip to code *

template <class T>
void
read_mat5_integer_data (std::istream& is, T *m, int count, bool swap,
mat5_data_type type)
{

#define READ_INTEGER_DATA(TYPE, swap, data, size, len, stream) \
do \
{ \
if (len > 0) \
{ \
volatile TYPE *ptr = X_CAST (volatile TYPE *, data); \
stream.read (X_CAST (char *,ptr), size * len); \
if (swap) \
swap_bytes< size > (ptr, len); \
TYPE tmp = ptr[0]; \
for (int i = len - 1; i > 0; i--) \
data[i] = ptr[i]; \
data[0] = tmp; \
} \
} \
while (0)

switch (type)
{
case miINT8:
READ_INTEGER_DATA (signed char, swap, m, 1, count, is);
break;

case miUINT8:
READ_INTEGER_DATA (unsigned char, swap, m, 1, count, is);
break;

case miINT16:
READ_INTEGER_DATA (signed TWO_BYTE_INT, swap, m, 2, count, is);
break;

case miUINT16:
READ_INTEGER_DATA (unsigned TWO_BYTE_INT, swap, m, 2, count, is);
break;

case miINT32:
READ_INTEGER_DATA (signed FOUR_BYTE_INT, swap, m, 4, count, is);
break;

case miUINT32:
READ_INTEGER_DATA (unsigned FOUR_BYTE_INT, swap, m, 4, count, is);
break;

case miSINGLE:
case miRESERVE1:
case miDOUBLE:
case miRESERVE2:
case miRESERVE3:
break;

case miINT64:
#ifdef EIGHT_BYTE_INT
READ_INTEGER_DATA (signed EIGHT_BYTE_INT, swap, m, 8, count, is);
#endif
break;

case miUINT64:
#ifdef EIGHT_BYTE_INT
READ_INTEGER_DATA (unsigned EIGHT_BYTE_INT, swap, m, 8, count, is);
#endif
break;
case miMATRIX:
default:
break;
}

#undef READ_INTEGER_DATA

}

template void read_mat5_integer_data (std::istream& is, octave_int8 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_int16 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_int32 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_int64 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_uint8 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_uint16 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_uint32 *m,
int count, bool swap,
mat5_data_type type);
template void read_mat5_integer_data (std::istream& is, octave_uint64 *m,
int count, bool swap,
mat5_data_type type);

template void read_mat5_integer_data (std::istream& is, int *m,
int count, bool swap,
mat5_data_type type);




The write function is similar.
Back to top
View user's profile
brentl



Joined: 20 Jul 2004
Posts: 132

PostPosted: Thu Jan 26, 2006 4:15 pm    Post subject: Reply with quote

We will have to try to build octave here and see if we can reproduce. Do you also see this problem in the latest non-cvs version?
Back to top
View user's profile
Christopher Hulbert



Joined: 01 Dec 2005
Posts: 76

PostPosted: Fri Jan 27, 2006 6:32 am    Post subject: Reply with quote

Yes, octave 2.1.72 and the current CVS both give the same error.

I'm using 6.1-2 64 bit. On AMD x2 3800.
Back to top
View user's profile
brentl



Joined: 20 Jul 2004
Posts: 132

PostPosted: Mon Jan 30, 2006 11:33 am    Post subject: Reply with quote

Can you tell me what options you are using to configure? I'm getting a few other errors.
Back to top
View user's profile
Christopher Hulbert



Joined: 01 Dec 2005
Posts: 76

PostPosted: Mon Jan 30, 2006 12:03 pm    Post subject: Reply with quote

./configure CC=pgcc CXX=pgCC F77=pgf77 FC=pgf95 CFLAGS="-fpic -O3 -Mipa -fastsse" FFLAGS="-fpic -O3 -Mipa -fastsse" CXXFLAGS="-fpic -O3 -Mipa -fastsse" LDLFAGS="-fpic" --prefix=/usr/local/octave --exec-prefix=/usr/local/octave --with-blas=/usr/pgi/linux86-64/6.1/lib/libacml.a --enable-shared --enable-dl

I ran into some problems with glob.h. I think I ended up using
#define __size_t size_t
for the compilation.

I also ran into problems with the pow function not having
double pow(double,int). ALthough not the best solution I just promoted the ints to doubles. They did that due to the faster nature of x^y when y is an integer.
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    PGI User Forum Forum Index -> Programming and Compiling All times are GMT - 7 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group