jzmq icon indicating copy to clipboard operation
jzmq copied to clipboard

does not build on ubuntu 12.04

Open kennyplaces opened this issue 12 years ago • 31 comments

Its been working flawlessly on ubuntu 11 and 10, but once we move the env to 12.04, the compilation failed on "make":

ubuntu@ip-10-72-110-107:~/zeromq-jzmq-fe47a77$ make Making all in src make[1]: Entering directory /home/ubuntu/zeromq-jzmq-fe47a77/src' make[1]: *** No rule to make targetclassdist_noinst.stamp', needed by org/zeromq/ZMQ.class'. Stop. make[1]: Leaving directory/home/ubuntu/zeromq-jzmq-fe47a77/src' make: *** [all-recursive] Error 1

I checked the makfile under src, and the classdist_noinst.stamp target is actually missing, so it must be something wrong while doing "configure", but there wasnt any error for that.

Could someone help please?

thanks, kenny

kennyplaces avatar May 17 '12 21:05 kennyplaces

I have exactly the same setup and exactly the same problem with Pangolin. No problem with Ubuntu 11.10. Something is different about Ubuntu 12.04 ... might it be the compiler version or library version? I installed g++ 4.6 with libstc++6-4.6 on both OSes, so those are likely not the problem.'

BTW, I documented how I build the library here: https://github.com/mslinn/zeromq-demo

mslinn avatar May 18 '12 04:05 mslinn

+1

microwheels avatar May 29 '12 02:05 microwheels

also have this issue

edit: if you do not do the autogen.sh step and go straight to ./configure it compiles and installs fine. just take a tiny bit more time making.

CrisFavero avatar May 29 '12 17:05 CrisFavero

+1 on Debian the same.

xekoukou avatar Jun 01 '12 07:06 xekoukou

I got it figured out. downgraded to automake-1.11.1 and pkg-config-0.22 will solve the problem. what a pain~~

kennyplaces avatar Jun 01 '12 16:06 kennyplaces

let me know if that works for you, or you have a better solution.

kennyplaces avatar Jun 01 '12 17:06 kennyplaces

as i stated above much easier is to just not run autogen.sh it basically only makes the ./configure stage take slightly longer as it does more guess and check work but solves all the other issues.

CrisFavero avatar Jun 01 '12 17:06 CrisFavero

Not running autogen works for me.. (clean things up first)

xekoukou avatar Jun 02 '12 09:06 xekoukou

Ok, now I get WSAEINVAL errors on Linux. ZMQ thinks I have Windows.

xekoukou avatar Jun 02 '12 10:06 xekoukou

I have the same problem on 12.04 x86_64 too. And I found a workaround here: http://tjun.jp/blog/2012/04/how-to-build-jzmq-in-mac-os-x-lion/

The detailed steps on Ubuntu 12.04: touch src/classdist_noinst.stamp cd src/ CLASSPATH=.:./.:$CLASSPATH javac -d . org/zeromq/ZMQ.java org/zeromq/App.java org/zeromq/ZMQForwarder.java org/zeromq/EmbeddedLibraryTools.java org/zeromq/ZMQQueue.java org/zeromq/ZMQStreamer.java org/zeromq/ZMQException.java cd .. make

tigerzhang avatar Jul 12 '12 06:07 tigerzhang

The solution of @TigerZhang works.. but I don't know why

lqhl avatar Oct 18 '12 12:10 lqhl

I believe there are something wrong in the Makefiles. But I didn't spend too much time to figure it out.

tigerzhang avatar Oct 18 '12 12:10 tigerzhang

It looks like automake used to use classdist_noinst.stamp as a flag file, and has since switched to classnoinst.stamp.

Changing classdist_noinst.stamp to classnoinst.stamp in src/Makefile.am and then re-running ./autogen.sh seems to fix the issue, though I'm not sure how to handle that in a way that works for all versions of automake.

ebroder avatar Nov 20 '12 23:11 ebroder

@ebroder your solution works for me on Mac OSX! really helps.

darren avatar Dec 10 '12 15:12 darren

+1 to @ebroder . worked for me

mvogiatzis avatar Jan 09 '13 13:01 mvogiatzis

+1 @ebroder . It works

truclk avatar Jan 10 '13 06:01 truclk

me too, +1 @ebroder . It works

trieu avatar Jan 21 '13 05:01 trieu

Can anybody provide a pull request?

gonzus avatar Jan 21 '13 19:01 gonzus

@ebroder Thanks for solution.

Sigehere avatar Jan 28 '13 11:01 Sigehere

Is this still an issue? I use ubuntu 12.04 LTS without problems.

cd /tmp
git clone [email protected]:zeromq/jzmq.git
./autogen.sh
./configure --prefix=/tmp
make

trevorbernard avatar Feb 15 '13 03:02 trevorbernard

For Ubuntu 12.04, run the following before the ./autogen.sh step:

sed -i 's/classdist_noinst.stamp/classnoinst.stamp/g' src/Makefile.am

ptgoetz avatar Apr 04 '13 04:04 ptgoetz

the workaround works on smartos too

hellvinz avatar Apr 17 '13 14:04 hellvinz

Skipping ./autogen.sh is not possible since this is the script generating the ./configure script (there is none after cloning), I don't get why people says skipping autogen is working...

I tried @TigerZhang solution instead and it worked.

guperrot avatar Nov 21 '13 14:11 guperrot

+1 @ebroder . It works for Fedora 18 x86_64, too

carlostse avatar Jan 06 '14 09:01 carlostse

@ptgoetz solution worked for me. I'm using Ubuntu 13.04 (Raring)

otaviocarvalho avatar Mar 10 '14 18:03 otaviocarvalho

@ebroder Your solution works. Thank you.

zlmoment avatar Mar 31 '14 15:03 zlmoment

+1 @ebroder . Works on Ubuntu 14.04

davidleejy avatar Jun 04 '14 04:06 davidleejy

+1 @ebroder Works after the trick on Ubuntu 12.04

keshavagrawal89 avatar Jun 21 '14 18:06 keshavagrawal89

+1 @ebroder thanks solved mine issue also

ratewar avatar Nov 14 '14 08:11 ratewar

The solution of @TigerZhang works.

snehalparmar avatar Jun 03 '15 16:06 snehalparmar