How to add runtime library in Ada multi 7.2.4 - ada

I am trying t execute ada multi program using batch file but I am getting this errors:
_d_dtof
_d_dmul
For the below line:
long float := long float (int) * long float;

I think he mean to say for variables only for example
long float : a, b, c;
integer : x;
NOW...
a := b(x) * c;
even I got the same errors for that line but the difference is when using IDE (Ada multi 7.2.4 tool) I did not got any errors, but same code when I used using command promt I got errors. Which means a run time library is unable to link those errors.
I got the below errors...
_d_dtof
_d_add
_d_div
_d_ftod
_d_sub
_d_itod
_d_utod
_d_dtou
and the code is in Ada language.

Related

SysCTypes errors when using NetCDF.chpl?

I have a simple Chapel program to test the NetCDF module:
use NetCDF;
use NetCDF.C_NetCDF;
var f: int = ncopen("ppt2020_08_20.nc", NC_WRITE);
var status: int = nc_close(f);
and when I compile with:
chpl -I/usr/include -L/usr/lib/x86_64-linux-gnu -lnetcdf hello.chpl
it produces a list of errors about SysCTypes:
$CHPL_HOME/modules/packages/NetCDF.chpl:57: error: 'c_int' undeclared (first use this function)
$CHPL_HOME/modules/packages/NetCDF.chpl:77: error: 'c_char' undeclared (first use this function)
...
Would anyone see what my error is? I tried adding use SysCTypes; to my program, but that didn't seem to have an effect.
Sorry for the delayed response and for this bad behavior. This is a bug that's crept into the NetCDF module which seems not to have been caught by Chapel's nightly testing. To work around it, edit $CHPL_HOME/modules/packages/NetCDF.chpl, adding the line:
public use SysCTypes, SysBasic;
within the declaration of the C_NetCDF module (around line 50 in my copy of the sources). If you would consider filing this bug as an issue on the Chapel GitHub issue tracker, that would be great as well, though we'll try to get this fixed in the next release in any case.
With that change, your program almost compiles for me, except that nc_close() takes a c_int argument rather than a Chapel int. You could either lean on Chapel's type inference to cause this to happen:
var f = ncopen("ppt2020_08_20.nc", NC_WRITE);
or explicitly declare f to be of type c_int:
var f: c_int = ncopen("ppt2020_08_20.nc", NC_WRITE);
And then as one final note, I believe you should be able to drop the -lnetcdf from your chpl command-line as using the NetCDF module should cause this requirement to automatically be added.
Thanks for bringing this bug to our attention!

QOpenGLShaderProgram: is possible to make error output nice?

I'm implementing some numerical algorithms on GPU via OpenGL and Qt.
But i am not very familiar with it.
I want to extract some functions from my current shader to some "shader library" and use it in my other shaders by string interpolation. It not hard to implement but i don't know how handle shader's compile errors
I use following code to compile shader
QOpenGLShaderProgram *shaderProgram = new QOpenGLShaderProgram();
if (!shaderProgram->addShaderFromSourceFile(QOpenGLShader::Fragment,fragmentShaderFileName)) {
qDebug() << "Failed to compile fragment shader";
//..........
When some compile error appears Qt print following message (an example)
QOpenGLShader::compile(Fragment): 0:331(9): error: syntax error, unexpected NEW_IDENTIFIER, expecting ',' or ';'
*** Problematic Fragment shader source code ***
//my shader source code
Is possible to catch error line number and use it to build my own error message? (with highlighted line)
According to the Qt documentation, you can use QOpenGLShaderProgram::log():
Returns the errors and warnings that occurred during the last link()
or addShader() with explicitly specified source code.
You can then parse the resulting string to build your own error message.

riak build from source on Open SUSE 13.1 - Compile Error at eleveldb

Looking to get some assistance around an issue while trying to build RIAK from source. Having resolved most of the issues i am now stuck with the below errors during 'make rel'
home/ankur/riak/deps/eleveldb/c_src/eleveldb.cc:332:58: error: invalid conversion from ‘size_t* {aka unsigned int*}’ to ‘long unsigned int*’ [-fpermissive]
if (enif_get_ulong(env, option[1], &memory_sz))
and
In file included from c_src/eleveldb.h:27:0,
from /home/ankur/riak/deps/eleveldb/c_src/eleveldb.cc:35:
/usr/lib/erlang/erts-5.10.2/include/erl_nif_api_funcs.h:43:27: error: initializing argument 3 of ‘int enif_get_ulong(ErlNifEnv*, ERL_NIF_TERM, long unsigned int*)’ [-fpermissive]
ERL_NIF_API_FUNC_DECL(int,enif_get_ulong,(ErlNifEnv*, ERL_NIF_TERM term, unsigned long* ip));
ERROR: compile failed while processing /home/ankur/riak/deps/eleveldb: rebar_abort
Can you please assist me in the right direction. I have a very limited understanding of what I am doing(just following instructions from the net).
To get around the above issue, checkout a lower tag of eleveldb. If trying on Riak2.0beta, browse to deps/eleveldb and switch working copy to tag 1.2.0
make clean and make in eleveldb then do make rel on riak. It should work !
https://github.com/basho/eleveldb/issues/106

Eclipse shows syntax error when using PRId64 from inttypes.h

When I do
#include <inttypes.h>
long long value = 0;
printf("An 8 byte long integer value: %"PRId64".", value);
Eclipse shows me a syntax error in the printf line. Anybody knows how to get rid of it? This is the only way I know to have a printf working on both 32-bit and 64-bit architectures and Eclipse errors every few lines make it quite hard to see the real issues.
Thanks!
The question was answered here.
You need to add __STDC_FORMAT_MACROS in Project Properties->C/C++ General->Paths and Symbols.

What does BLAS DGEMV error code -6 mean?

I have a program that runs through R but uses the BLAS routines. It runs through correctly about 8 times but then throws an error:
BLAS/LAPACK routine 'DGEMV ' gave error code -6
What does this error code mean?
R defines the XERBLA function as
void F77_NAME(xerbla)(const char *srname, int *info)
{
/* srname is not null-terminated. It should be 6 characters. */
char buf[7];
strncpy(buf, srname, 6);
buf[6] = '\0';
error(_("BLAS/LAPACK routine '%6s' gave error code %d"), buf, -(*info));
}
from the src/main/print.c file.
the Netlib version of dgemv.f shows that only the input parameters are checked. A code of 6 shows a problem with either the LDA or M parameter.
*...
ELSE IF (LDA.LT.MAX(1,M)) THEN
INFO = 6
*...
END IF
IF (INFO.NE.0) THEN
CALL XERBLA('DGEMV ',INFO)
RETURN
So it appears that R takes the negative of the BLAS error code, which I think causes lots of confusion. I think this answers my question but not my problem, since it works several times with the same parameters before the error is thrown.
DGEMV does not return any error codes.
This bug implies that the error is coming from R itself.
Perhaps you should file a bug against R.

Resources