main() is where your program begins, if that's missing it can't create an executable. Libraries on the other hand don't need a main().
Check that the code which is supposed to define it is getting compiled, and also check that main is being exported properly. If it's being hashed into a C++ overloaded name, the linker might not find it. You could give it a definition to avoid it being name-mangled.
Last edited by Corona688; 01-09-2015 at 12:24 PM..
Hi
I'm getting
ld: fatal: option -h and building a dynamic executable are incompatible
ld: fatal: Flags processing errors
When I run
ld -shared -L/usr/dt/lib -lDtSvc -o builtin.so Workspace.o
after running
gcc -fPIC -I/usr/X11R6/include -I/usr/dt/include -c Workspace.c
I'm... (6 Replies)
Undefined first referenced
symbol in file
std::basic_ostream<char, std::char_traits<char> >::operator<<(int)/var/tmp//ccTR
std::cerr /var/tmp//ccTRcjui.o
std::cout /var/tmp//ccTRcjui.o... (1 Reply)
Getting the following error ,
ld: /opt/syncsort39/lib/libsyncsort.sl: Mismatched ABI. 64-bit PA shared library found in 32-bit link.
Is there any difference in the ld options in opt file while linking a 64 bit shared library ? Or is the problem because we are trying to link both 32 bit and 64... (3 Replies)
Hey everyone, I can't figure out this symbol referencing error after looking at it for the longest time, and I figured some fresh eyes might be able to point something out I am overlooking.
Undefined first referenced
symbol in... (1 Reply)
Hello, guys!
I have a web server that uses PHP as DSO. Do you know any tool that can help me monitoring the CPU usage for any domain/subdomain that is hosted on this server? (1 Reply)
Hi, I am getting the error
01.30 Invalid shell error
I am running the bash shell script in the korn login shell.
I have mentioned the #!/bin/bash statement in the my script but not sure why it is giving this error to me.. (4 Replies)
Hi,
I have the following files:
// file.hvoid foo();
int i = 5; // should be just declared as extern int i;
// file1.c#include <stdio.h>
#include "file.h"
void foo() {
i = 10;
printf("%d\n", i);
}
// file2.c#include <stdio.h>
#include "file.h"
int main() {
foo(); (9 Replies)
Hi,
Currently I am migrating codes from unix to Linux. When doing linking(ld) getting the below error.
Error is :ld: invalid BFD target `--shared'
Providing the script of the ld:
ld -b -G -o lib/libatk.so ./src/atk_db.o ./src/atk_gcl.o ./src/atk_options.o ./src/atk_exception.o... (1 Reply)
Discussion started by: jrkar
1 Replies
LEARN ABOUT OPENSOLARIS
tk_main
Tk_Main(3TK) Tk Library Procedures Tk_Main(3TK)__________________________________________________________________________________________________________________________________________________NAME
Tk_Main - main program for Tk-based applications
SYNOPSIS
#include <tk.h>
Tk_Main(argc, argv, appInitProc)
ARGUMENTS
int argc (in) Number of elements in argv.
char *argv[] (in) Array of strings containing command-line arguments.
Tcl_AppInitProc *appInitProc (in) Address of an application-specific initialization procedure. The value for this argument is
usually Tcl_AppInit.
_________________________________________________________________DESCRIPTION
Tk_Main acts as the main program for most Tk-based applications. Starting with Tk 4.0 it is not called main anymore because it is part of
the Tk library and having a function main in a library (particularly a shared library) causes problems on many systems. Having main in the
Tk library would also make it hard to use Tk in C++ programs, since C++ programs must have special C++ main functions.
Normally each application contains a small main function that does nothing but invoke Tk_Main. Tk_Main then does all the work of creating
and running a wish-like application.
When it is has finished its own initialization, but before it processes commands, Tk_Main calls the procedure given by the appInitProc
argument. This procedure provides a ``hook'' for the application to perform its own initialization, such as defining application-specific
commands. The procedure must have an interface that matches the type Tcl_AppInitProc:
typedef int Tcl_AppInitProc(Tcl_Interp *interp);
AppInitProc is almost always a pointer to Tcl_AppInit; for more details on this procedure, see the documentation for Tcl_AppInit.
KEYWORDS
application-specific initialization, command-line arguments, main program
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Availability | SUNWTk |
+--------------------+-----------------+
|Interface Stability | Uncommitted |
+--------------------+-----------------+
NOTES
Source for Tk is available on http://opensolaris.org.
Tk 4.0 Tk_Main(3TK)