Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

What is the -lz flag in gcc/g++?

6,541 views
Skip to first unread message

pallav

unread,
Mar 12, 2009, 3:08:48 PM3/12/09
to
Hi,

I'm compiling some Verilog (hardware description language) with
Synopsys VCS compiler. It generates some C/C++ code and uses the GNU
gcc/g++ compiler to compile. I'm getting a linking error. The loader
does not know what the -lz flag is. Does anyone know what library it
refers to? I have freshly installed Fedora 10 so many libraries may be
missing (even gcc/g++ was not installed).

If I can figure out what library -lz is, I can probably install it
using yum. Thanks for any ideas.

Here is a log of the command:

Parsing design file './addr4.v'
Top Level Modules:
sim
No TimeScale specified
Starting vcs inline pass...
1 module and 0 UDP read.
However, due to incremental compilation, no re-compilation is
necessary.
gcc -pipe -O -I/usr/local/synopsys/current/vcs/include -c -o
rmapats.o rmapats.c
if [ -x ../simv ]; then chmod -x ../simv; fi
g++ -o ../simv rmapats_mop.o rmapats.o DZaT_1_d.o SIM_l.o 5NrI_d.o
5NrIB_d.o /usr/local/synopsys/current/vcs/linux/lib/libvirsim.a /usr/
local/synopsys/current/vcs/linux/lib/librterrorinf.so /usr/local/
synopsys/current/vcs/linux/lib/libsnpsmalloc.so /usr/local/
synopsys/current/vcs/linux/lib/libvcsnew.so /usr/local/synopsys/
current/vcs/linux/lib/ctype-stubs_32.a -ldl -lz -lm -lc -ldl
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
make: *** [product_timestamp] Error 1
Make exited with status 2
CPU time: .023 seconds to compile + .015 seconds to elab + .167
seconds to link

Jan Seiffert

unread,
Mar 12, 2009, 4:18:43 PM3/12/09
to
pallav wrote:
> Hi,
>
> I'm compiling some Verilog (hardware description language) with
> Synopsys VCS compiler. It generates some C/C++ code and uses the GNU
> gcc/g++ compiler to compile. I'm getting a linking error. The loader
> does not know what the -lz flag is. Does anyone know what library it
> refers to?

Whooot?

> I have freshly installed Fedora 10 so many libraries may be
> missing (even gcc/g++ was not installed).
>
> If I can figure out what library -lz is, I can probably install it
> using yum. Thanks for any ideas.
>

-lz is libz, which is AFAIK the zlib (a compression library, no, THE compression
library).
So even if you freshly installed your F10, i can not believe there is no zlib by
default, or do you choose a "absolut minimal" install (no X11, no nothing)?
Is this compiler for another architecture? Or some 32Bit/64Bit mixup?

[snip]
Greetings
Jan

--
> Explain in terms your grandmother would understand how to figure out
> if you're behind NAT or not, in 1 or 2 sentences.
> Assume ZERO networking knowledge, and aversion to the command line.
Here, Grandma, let me do it.

pallav

unread,
Mar 12, 2009, 5:00:59 PM3/12/09
to
>
> -lz is libz, which is AFAIK the zlib (a compression library, no, THE compression
> library).
> So even if you freshly installed your F10, i can not believe there is no zlib by
> default, or do you choose a "absolut minimal" install (no X11, no nothing)?
> Is this compiler for another architecture? Or some 32Bit/64Bit mixup?
>

Thanks. Its not a minimal install (its the standard Fedora ISO).
Actually, only shared libz
libraries are installed at:

/lib/libz.so.1
/lib/libz.so.1.2.3

I think I will have to manually build/install zlib to get the static
libraries. I think
I need libz.a right for -lz to work? The tool doesn't provide a shared
argument

> Whooot?

I have a Verilog file (behavioral hardware language for a circuit). I
give that to a tool (Synopsys VCS Compiler).
It generates C/C++ equivalent code for this file. It then calls gcc/g+
+ to compile/link the generated code to create an executable.
I run the executable to simulate the circuit.

I've installed the linux version of the tool (I don't have the source
since its a commercial product).
I believe I have 32 bit version installed, but I will have to
reconfirm this.

Thanks for your help.

pallav

unread,
Mar 12, 2009, 5:18:47 PM3/12/09
to
This issue is resolved. After building/installing libz.a it works
fine.
0 new messages